schooltool-2.6.3/0000755000175000017500000000000012322062007015031 5ustar menesismenesis00000000000000schooltool-2.6.3/base.cfg0000644000175000017500000000276212321575324016445 0ustar menesismenesis00000000000000[buildout] extends = http://ftp.schooltool.org/schooltool/2.6/versions.cfg versions = versions newest = false find-links = http://ftp.schooltool.org/schooltool/2.6/ http://ftp.schooltool.org/schooltool/2.6/dev/ parts = package test supervisor celery scripts ctags omelette [package] recipe = zc.recipe.egg:eggs unzip = true # set eggs to package name in buildout.cfg eggs = [scripts] recipe = zc.recipe.egg:scripts unzip = true eggs = ${package:eggs} ZODB3 schooltool schooltool.devtools scripts = # ZODB3: runzeo zeopack # schooltool.devtools: i18nextract runfdoctests # schooltool: make-schooltool-instance start-schooltool-instance schooltool-server interpreter = python [supervisor] recipe = zc.recipe.egg:scripts unzip = true eggs = supervisor scripts = supervisord supervisorctl pidproxy # Useful script if you want to toy with supervisor settings #echo_supervisord_conf initialization = import os if os.path.exists('instance'): os.chdir('instance') [celery] recipe = zc.recipe.egg:scripts unzip = true eggs = ${package:eggs} celery redis [test] recipe = schooltool.devtools:testrunner eggs = ${package:eggs} defaults = ['--tests-pattern', '^f?s?tests$', '-v', '--auto-color'] [ctags] recipe = z3c.recipe.tag:tags eggs = ${test:eggs} [omelette] recipe = collective.recipe.omelette eggs = ${test:eggs} ignores = roman zope.ucol site schooltool-2.6.3/buildout.cfg0000644000175000017500000000102012322062006017331 0ustar menesismenesis00000000000000[buildout] extends = base.cfg develop = . [versions] # Unset versions of packages you want to develop schooltool = [package] eggs = schooltool [test] eggs = schooltool [test] # To run selenium tests: # - Download standalone selenium server from # http://code.google.com/p/selenium/downloads/list # - Start the server: "java -jar selenium-server-standalone-2.7.0.jar" # - Uncomment the lines below: # #selenium.default = html_unit #selenium.html_unit.web_driver = remote #selenium.html_unit.capabilities = HTMLUNITWITHJS schooltool-2.6.3/develop.cfg0000644000175000017500000000040612270520475017162 0ustar menesismenesis00000000000000[buildout] extends = deploy.cfg parts += coverage docs [coverage] recipe = zc.recipe.egg:scripts unzip = true eggs = z3c.coverage [docs] recipe = z3c.recipe.sphinxdoc eggs = schooltool [docs] build-dir = ${buildout:directory}/docs default.css = layout.html = schooltool-2.6.3/src/0000755000175000017500000000000012322062006015617 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool.egg-info/0000755000175000017500000000000012322062007021477 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool.egg-info/SOURCES.txt0000644000175000017500000022733512322062006023376 0ustar menesismenesis00000000000000CHANGES.txt GPL.txt MANIFEST.in Makefile README.txt base.cfg bootstrap.py buildout.cfg deploy.cfg develop.cfg setup.py version.txt.in src/schooltool/__init__.py src/schooltool/index.txt src/schooltool.egg-info/PKG-INFO src/schooltool.egg-info/SOURCES.txt src/schooltool.egg-info/dependency_links.txt src/schooltool.egg-info/entry_points.txt src/schooltool.egg-info/namespace_packages.txt src/schooltool.egg-info/not-zip-safe src/schooltool.egg-info/requires.txt src/schooltool.egg-info/top_level.txt src/schooltool/app/README.txt src/schooltool/app/__init__.py src/schooltool/app/app.py src/schooltool/app/booking.txt src/schooltool/app/cal.py src/schooltool/app/catalog.py src/schooltool/app/catalog.zcml src/schooltool/app/config-schema.xml src/schooltool/app/configure.zcml src/schooltool/app/ftesting.zcml src/schooltool/app/interfaces.py src/schooltool/app/main.py src/schooltool/app/membership.py src/schooltool/app/overlay.py src/schooltool/app/pdf.py src/schooltool/app/relationships.py src/schooltool/app/security.py src/schooltool/app/security.txt src/schooltool/app/security.zcml src/schooltool/app/stesting-oldskin.zcml src/schooltool/app/stesting.zcml src/schooltool/app/testing.py src/schooltool/app/timetable-integration.zcml src/schooltool/app/timetable.py src/schooltool/app/utils.py src/schooltool/app/browser/__init__.py src/schooltool/app/browser/app.py src/schooltool/app/browser/cal.py src/schooltool/app/browser/configure.zcml src/schooltool/app/browser/csvimport.py src/schooltool/app/browser/flourish.zcml src/schooltool/app/browser/interfaces.py src/schooltool/app/browser/overlay.py src/schooltool/app/browser/pdfcal.py src/schooltool/app/browser/report.py src/schooltool/app/browser/skin.py src/schooltool/app/browser/templates.txt src/schooltool/app/browser/testing.py src/schooltool/app/browser/timetable-integration-flourish.zcml src/schooltool/app/browser/timetable-integration.zcml src/schooltool/app/browser/timetablecsvimport.py src/schooltool/app/browser/ftests/README.txt src/schooltool/app/browser/ftests/__init__.py src/schooltool/app/browser/ftests/about.txt src/schooltool/app/browser/ftests/app.txt src/schooltool/app/browser/ftests/brokenview-ftesting.zcml src/schooltool/app/browser/ftests/cal-recurrence.txt src/schooltool/app/browser/ftests/cal-security.txt src/schooltool/app/browser/ftests/cal.txt src/schooltool/app/browser/ftests/calendar-overlays.txt src/schooltool/app/browser/ftests/deletion.txt src/schooltool/app/browser/ftests/errors.txt src/schooltool/app/browser/ftests/login.txt src/schooltool/app/browser/ftests/membership.txt src/schooltool/app/browser/ftests/overlaid_events.txt src/schooltool/app/browser/ftests/personinstructor.txt src/schooltool/app/browser/ftests/setup.py src/schooltool/app/browser/ftests/system-objects.txt src/schooltool/app/browser/ftests/test_all.py src/schooltool/app/browser/ftests/ttschema-wizard.txt src/schooltool/app/browser/ftests/undead-calendar-overlays.txt src/schooltool/app/browser/ftests/images/ttschema-wizard-1-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-1.png src/schooltool/app/browser/ftests/images/ttschema-wizard-2-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-2.png src/schooltool/app/browser/ftests/images/ttschema-wizard-3-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-3.png src/schooltool/app/browser/ftests/images/ttschema-wizard-4-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-4.png src/schooltool/app/browser/ftests/images/ttschema-wizard-5-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-5.png src/schooltool/app/browser/ftests/images/ttschema-wizard-6-tiny.png src/schooltool/app/browser/ftests/images/ttschema-wizard-6.png src/schooltool/app/browser/resources/day.png src/schooltool/app/browser/resources/month.png src/schooltool/app/browser/resources/week.png src/schooltool/app/browser/resources/year.png src/schooltool/app/browser/stests/__init__.py src/schooltool/app/browser/stests/app.txt src/schooltool/app/browser/stests/server_tabs.txt src/schooltool/app/browser/stests/test_all.py src/schooltool/app/browser/templates/about.pt src/schooltool/app/browser/templates/application_preferences.pt src/schooltool/app/browser/templates/cal_atom.pt src/schooltool/app/browser/templates/cal_daily.pt src/schooltool/app/browser/templates/cal_monthly.pt src/schooltool/app/browser/templates/cal_rml.pt src/schooltool/app/browser/templates/cal_weekly.pt src/schooltool/app/browser/templates/cal_weekly_timetable.pt src/schooltool/app/browser/templates/cal_yearly.pt src/schooltool/app/browser/templates/calendar_macros.pt src/schooltool/app/browser/templates/calendar_overlay.pt src/schooltool/app/browser/templates/calendar_selection.pt src/schooltool/app/browser/templates/calendar_tab_viewlet.pt src/schooltool/app/browser/templates/css_viewlet.pt src/schooltool/app/browser/templates/default_report_template.pt src/schooltool/app/browser/templates/edit_relationships.pt src/schooltool/app/browser/templates/event.pt src/schooltool/app/browser/templates/event_add.pt src/schooltool/app/browser/templates/event_booking.pt src/schooltool/app/browser/templates/event_info_viewlet.pt src/schooltool/app/browser/templates/f_about.pt src/schooltool/app/browser/templates/f_about_related.pt src/schooltool/app/browser/templates/f_calendar_settings_overview.pt src/schooltool/app/browser/templates/f_csvimport.pt src/schooltool/app/browser/templates/f_default_report_template.pt src/schooltool/app/browser/templates/f_default_style_template.pt src/schooltool/app/browser/templates/f_edit_relationships.pt src/schooltool/app/browser/templates/f_errors.pt src/schooltool/app/browser/templates/f_errors_entry.pt src/schooltool/app/browser/templates/f_errors_entry_text.pt src/schooltool/app/browser/templates/f_generations_related.pt src/schooltool/app/browser/templates/f_hide_unhide_tabs.pt src/schooltool/app/browser/templates/f_hide_unhide_tabs_related.pt src/schooltool/app/browser/templates/f_language_selector.pt src/schooltool/app/browser/templates/f_login.pt src/schooltool/app/browser/templates/f_managers.pt src/schooltool/app/browser/templates/f_overlay_filter_widget.pt src/schooltool/app/browser/templates/f_pack_database.pt src/schooltool/app/browser/templates/f_runtimeinfo.pt src/schooltool/app/browser/templates/f_section_csvimport_description.pt src/schooltool/app/browser/templates/f_server_settings_overview.pt src/schooltool/app/browser/templates/f_settings.pt src/schooltool/app/browser/templates/f_tabled_edit_relationships.pt src/schooltool/app/browser/templates/f_translationdomaincontrol.pt src/schooltool/app/browser/templates/index.pt src/schooltool/app/browser/templates/javascript_viewlet.pt src/schooltool/app/browser/templates/link.pt src/schooltool/app/browser/templates/login.pt src/schooltool/app/browser/templates/manage_menu.pt src/schooltool/app/browser/templates/manage_menu_manager.pt src/schooltool/app/browser/templates/menu_view.pt src/schooltool/app/browser/templates/package_versions.pt src/schooltool/app/browser/templates/portlet_tomorrow_events.pt src/schooltool/app/browser/templates/print.pt src/schooltool/app/browser/templates/recevent_delete.pt src/schooltool/app/browser/templates/simple_event_delete.pt src/schooltool/app/browser/templates/timetables-csvimport.pt src/schooltool/app/browser/templates/zodbcontrol.pt src/schooltool/app/browser/tests/__init__.py src/schooltool/app/browser/tests/test_app.py src/schooltool/app/browser/tests/test_browser.py src/schooltool/app/browser/tests/test_cal.py src/schooltool/app/browser/tests/test_catalog.py src/schooltool/app/browser/tests/test_csvimport.py src/schooltool/app/browser/tests/test_overlay.py src/schooltool/app/browser/tests/test_pdfcal.py src/schooltool/app/browser/tests/test_skin.py src/schooltool/app/browser/tests/test_timetablecsvimport.py src/schooltool/app/tests/__init__.py src/schooltool/app/tests/catalog-integration.txt src/schooltool/app/tests/empty.conf src/schooltool/app/tests/sample.conf src/schooltool/app/tests/test_app.py src/schooltool/app/tests/test_booking.py src/schooltool/app/tests/test_cal.py src/schooltool/app/tests/test_catalog.py src/schooltool/app/tests/test_main.py src/schooltool/app/tests/test_overlay.py src/schooltool/app/tests/test_pdf.py src/schooltool/app/tests/test_relationships.py src/schooltool/app/tests/test_security.py src/schooltool/app/tests/test_utils.py src/schooltool/basicperson/__init__.py src/schooltool/basicperson/advisor.py src/schooltool/basicperson/configure.zcml src/schooltool/basicperson/demographics.py src/schooltool/basicperson/event_titles.txt src/schooltool/basicperson/ftesting.py src/schooltool/basicperson/ftesting.zcml src/schooltool/basicperson/interfaces.py src/schooltool/basicperson/overrides.zcml src/schooltool/basicperson/person.py src/schooltool/basicperson/sampledata.py src/schooltool/basicperson/security.py src/schooltool/basicperson/security.zcml src/schooltool/basicperson/stesting.py src/schooltool/basicperson/stesting.zcml src/schooltool/basicperson/vocabularies.py src/schooltool/basicperson/browser/__init__.py src/schooltool/basicperson/browser/configure.zcml src/schooltool/basicperson/browser/csvimport.py src/schooltool/basicperson/browser/demographics.py src/schooltool/basicperson/browser/flourish.zcml src/schooltool/basicperson/browser/person.py src/schooltool/basicperson/browser/skin.py src/schooltool/basicperson/browser/ftests/__init__.py src/schooltool/basicperson/browser/ftests/advisors.txt src/schooltool/basicperson/browser/ftests/basicperson.txt src/schooltool/basicperson/browser/ftests/demographics.txt src/schooltool/basicperson/browser/ftests/group_aware.txt src/schooltool/basicperson/browser/ftests/person_info.txt src/schooltool/basicperson/browser/ftests/setup.py src/schooltool/basicperson/browser/ftests/test_all.py src/schooltool/basicperson/browser/stests/__init__.py src/schooltool/basicperson/browser/stests/calendar_tab.txt src/schooltool/basicperson/browser/stests/home_tab.txt src/schooltool/basicperson/browser/stests/person_view_advisory.txt src/schooltool/basicperson/browser/stests/person_view_demographics.txt src/schooltool/basicperson/browser/stests/person_view_demographics.xls src/schooltool/basicperson/browser/stests/selenium_extensions.txt src/schooltool/basicperson/browser/stests/test_selenium.py src/schooltool/basicperson/browser/templates/addPersonViewlet.pt src/schooltool/basicperson/browser/templates/container.pt src/schooltool/basicperson/browser/templates/demographics-view.pt src/schooltool/basicperson/browser/templates/f_advisoryViewlet.pt src/schooltool/basicperson/browser/templates/f_container_table_filter.pt src/schooltool/basicperson/browser/templates/f_csvimport_description.pt src/schooltool/basicperson/browser/templates/f_demographics_reorder.pt src/schooltool/basicperson/browser/templates/f_demographics_view.pt src/schooltool/basicperson/browser/templates/f_generalViewlet.pt src/schooltool/basicperson/browser/templates/f_id_cards_template.pt src/schooltool/basicperson/browser/templates/f_manage_people_overview.pt src/schooltool/basicperson/browser/templates/f_person_add_multiple.pt src/schooltool/basicperson/browser/templates/f_person_add_subform.pt src/schooltool/basicperson/browser/templates/f_person_form.pt src/schooltool/basicperson/browser/templates/f_person_id_cards.pt src/schooltool/basicperson/browser/templates/f_person_view_details.pt src/schooltool/basicperson/browser/templates/f_person_view_jstree.pt src/schooltool/basicperson/browser/templates/field_description_view.pt src/schooltool/basicperson/browser/templates/groups.pt src/schooltool/basicperson/browser/templates/person-csvimport.pt src/schooltool/basicperson/browser/templates/person_add.pt src/schooltool/basicperson/browser/templates/person_add_multiple.pt src/schooltool/basicperson/browser/templates/person_add_subform.pt src/schooltool/basicperson/browser/templates/person_container_delete.pt src/schooltool/basicperson/browser/templates/person_edit.pt src/schooltool/basicperson/browser/templates/person_form.pt src/schooltool/basicperson/browser/templates/person_groups.pt src/schooltool/basicperson/browser/templates/person_view.pt src/schooltool/basicperson/browser/tests/__init__.py src/schooltool/basicperson/browser/tests/test_demographics.py src/schooltool/basicperson/browser/tests/test_person.py src/schooltool/basicperson/tests/__init__.py src/schooltool/basicperson/tests/test_demographics.py src/schooltool/basicperson/tests/test_person.py src/schooltool/basicperson/tests/test_sampledata.py src/schooltool/basicperson/tests/test_security.py src/schooltool/basicperson/tests/test_vocabularies.py src/schooltool/calendar/README.txt src/schooltool/calendar/__init__.py src/schooltool/calendar/app.py src/schooltool/calendar/configure.zcml src/schooltool/calendar/icalendar.py src/schooltool/calendar/interfaces.py src/schooltool/calendar/mixins.py src/schooltool/calendar/recurrent.py src/schooltool/calendar/simple.py src/schooltool/calendar/timezones.txt src/schooltool/calendar/utils.py src/schooltool/calendar/browser/__init__.py src/schooltool/calendar/browser/calendar.py src/schooltool/calendar/browser/configure.zcml src/schooltool/calendar/browser/event.py src/schooltool/calendar/browser/flourish.zcml src/schooltool/calendar/browser/interfaces.py src/schooltool/calendar/browser/overlay.py src/schooltool/calendar/browser/resources/calendar.css src/schooltool/calendar/browser/resources/delete.png src/schooltool/calendar/browser/templates/calendar_daily.pt src/schooltool/calendar/browser/templates/calendar_jump_to.pt src/schooltool/calendar/browser/templates/calendar_month_viewlet.pt src/schooltool/calendar/browser/templates/calendar_monthly.pt src/schooltool/calendar/browser/templates/calendar_overlay.pt src/schooltool/calendar/browser/templates/calendar_tertiary_nav.pt src/schooltool/calendar/browser/templates/calendar_tomorrow_events.pt src/schooltool/calendar/browser/templates/calendar_weekly.pt src/schooltool/calendar/browser/templates/calendar_yearly.pt src/schooltool/calendar/browser/templates/event.pt src/schooltool/calendar/browser/templates/event_booking.pt src/schooltool/calendar/browser/templates/event_delete_dialog.pt src/schooltool/calendar/browser/templates/event_edit.pt src/schooltool/calendar/tests/__init__.py src/schooltool/calendar/tests/sample.ics src/schooltool/calendar/tests/test_icalendar.py src/schooltool/calendar/tests/test_recurrent.py src/schooltool/calendar/tests/test_schooltool.py src/schooltool/calendar/tests/Europe/Amsterdam.ics src/schooltool/calendar/tests/Europe/Vilnius.ics src/schooltool/common/__init__.py src/schooltool/common/browser.zcml src/schooltool/common/configure.zcml src/schooltool/common/fields.py src/schooltool/common/fields.zcml src/schooltool/common/i18n.zcml src/schooltool/common/inlinept.py src/schooltool/common/menus.zcml src/schooltool/common/meta.zcml src/schooltool/common/security.zcml src/schooltool/common/traceback.py src/schooltool/common/translations.zcml src/schooltool/common/zcmlfiles.zcml src/schooltool/common/tests/__init__.py src/schooltool/common/tests/test_common.py src/schooltool/contact/__init__.py src/schooltool/contact/basicperson.py src/schooltool/contact/configure.zcml src/schooltool/contact/contact.py src/schooltool/contact/ftesting.py src/schooltool/contact/ftesting.zcml src/schooltool/contact/interfaces.py src/schooltool/contact/security.zcml src/schooltool/contact/browser/__init__.py src/schooltool/contact/browser/basicperson.py src/schooltool/contact/browser/configure.zcml src/schooltool/contact/browser/contact.py src/schooltool/contact/browser/flourish.zcml src/schooltool/contact/browser/relationship.py src/schooltool/contact/browser/ftests/__init__.py src/schooltool/contact/browser/ftests/contact.txt src/schooltool/contact/browser/ftests/contact_filtering.txt src/schooltool/contact/browser/ftests/email.txt src/schooltool/contact/browser/ftests/test_all.py src/schooltool/contact/browser/templates/actionsViewlet.pt src/schooltool/contact/browser/templates/back_to_person_viewlet.pt src/schooltool/contact/browser/templates/contact_add.pt src/schooltool/contact/browser/templates/contact_view.pt src/schooltool/contact/browser/templates/contactperson_subform.pt src/schooltool/contact/browser/templates/contacts_delete.pt src/schooltool/contact/browser/templates/email_form.pt src/schooltool/contact/browser/templates/f_confirm_delete_contact.pt src/schooltool/contact/browser/templates/f_contact_details.pt src/schooltool/contact/browser/templates/f_contact_filter.pt src/schooltool/contact/browser/templates/f_contact_form.pt src/schooltool/contact/browser/templates/f_contact_table_filter.pt src/schooltool/contact/browser/templates/f_contact_view.pt src/schooltool/contact/browser/templates/f_contactsViewlet.pt src/schooltool/contact/browser/templates/f_contacts_related.pt src/schooltool/contact/browser/templates/f_manage_contacts_overview.pt src/schooltool/contact/browser/templates/filter.pt src/schooltool/contact/browser/templates/manage_contacts.pt src/schooltool/contact/browser/templates/noteacheremail.pt src/schooltool/contact/browser/templates/sendEmailActionViewlet.pt src/schooltool/contact/browser/templates/view_contacts.pt src/schooltool/contact/tests/__init__.py src/schooltool/course/__init__.py src/schooltool/course/booking.py src/schooltool/course/booking.zcml src/schooltool/course/configure.zcml src/schooltool/course/course.py src/schooltool/course/course.zcml src/schooltool/course/ftesting.py src/schooltool/course/ftesting.zcml src/schooltool/course/interfaces.py src/schooltool/course/section.py src/schooltool/course/security.zcml src/schooltool/course/stesting.py src/schooltool/course/stesting.zcml src/schooltool/course/browser/__init__.py src/schooltool/course/browser/configure.zcml src/schooltool/course/browser/course.py src/schooltool/course/browser/csvimport.py src/schooltool/course/browser/flourish.zcml src/schooltool/course/browser/section-member-csvimport.pt src/schooltool/course/browser/section.py src/schooltool/course/browser/tests.py src/schooltool/course/browser/ftests/__init__.py src/schooltool/course/browser/ftests/delete_schoolyear_courses.txt src/schooltool/course/browser/ftests/delete_schoolyear_sections.txt src/schooltool/course/browser/ftests/new_schoolyear.txt src/schooltool/course/browser/ftests/propagate_roster_changes.txt src/schooltool/course/browser/ftests/section_linkage.txt src/schooltool/course/browser/ftests/sections_and_courses.txt src/schooltool/course/browser/ftests/test_all.py src/schooltool/course/browser/rml/section_roster.pt src/schooltool/course/browser/stests/__init__.py src/schooltool/course/browser/stests/course_delete.txt src/schooltool/course/browser/stests/multi_term_initial_location.txt src/schooltool/course/browser/stests/section_delete.txt src/schooltool/course/browser/stests/section_locations.txt src/schooltool/course/browser/stests/selenium_extensions.txt src/schooltool/course/browser/stests/test_selenium.py src/schooltool/course/browser/templates/basic_subform.pt src/schooltool/course/browser/templates/copy_sections.pt src/schooltool/course/browser/templates/course-csvimport.pt src/schooltool/course/browser/templates/course.pt src/schooltool/course/browser/templates/course_container.pt src/schooltool/course/browser/templates/course_edit.pt src/schooltool/course/browser/templates/coursesviewlet.pt src/schooltool/course/browser/templates/edit_relationships.pt src/schooltool/course/browser/templates/extend_term.pt src/schooltool/course/browser/templates/f_confirm_delete_course.pt src/schooltool/course/browser/templates/f_confirm_delete_section.pt src/schooltool/course/browser/templates/f_course_add.pt src/schooltool/course/browser/templates/f_course_csvimport_description.pt src/schooltool/course/browser/templates/f_course_filter.pt src/schooltool/course/browser/templates/f_course_view.pt src/schooltool/course/browser/templates/f_courses_related.pt src/schooltool/course/browser/templates/f_coursesviewlet.pt src/schooltool/course/browser/templates/f_extend_term.pt src/schooltool/course/browser/templates/f_link_existing.pt src/schooltool/course/browser/templates/f_manage_courses_overview.pt src/schooltool/course/browser/templates/f_section_add.pt src/schooltool/course/browser/templates/f_section_filter.pt src/schooltool/course/browser/templates/f_section_linkage.pt src/schooltool/course/browser/templates/f_section_list_table_filter.pt src/schooltool/course/browser/templates/f_section_member_csvimport_description.pt src/schooltool/course/browser/templates/f_section_roster_rml.pt src/schooltool/course/browser/templates/f_section_table_filter.pt src/schooltool/course/browser/templates/f_section_view.pt src/schooltool/course/browser/templates/f_sections.pt src/schooltool/course/browser/templates/f_unlink_section.pt src/schooltool/course/browser/templates/link_existing.pt src/schooltool/course/browser/templates/link_section.pt src/schooltool/course/browser/templates/link_to_courses.pt src/schooltool/course/browser/templates/section.pt src/schooltool/course/browser/templates/section_add.pt src/schooltool/course/browser/templates/section_add_location_subform.pt src/schooltool/course/browser/templates/section_container.pt src/schooltool/course/browser/templates/section_edit.pt src/schooltool/course/browser/templates/section_linkage.pt src/schooltool/course/browser/templates/unlink_section.pt src/schooltool/course/tests/__init__.py src/schooltool/course/tests/test_course.py src/schooltool/course/tests/test_subscribers.py src/schooltool/dashboard/README.txt src/schooltool/dashboard/__init__.py src/schooltool/dashboard/configure.zcml src/schooltool/dashboard/dashContent.pt src/schooltool/dashboard/dashboard-configure.zcml src/schooltool/dashboard/dashboard.pt src/schooltool/dashboard/dashboard.py src/schooltool/dashboard/dashboard_manager.pt src/schooltool/dashboard/dashboardpage.pt src/schooltool/dashboard/ftesting.zcml src/schooltool/dashboard/ftests.py src/schooltool/dashboard/interfaces.py src/schooltool/dashboard/school.pt src/schooltool/dashboard/sections.pt src/schooltool/dashboard/term.pt src/schooltool/demographics/__init__.py src/schooltool/demographics/configure.zcml src/schooltool/devmode/__init__.py src/schooltool/devmode/configure.zcml src/schooltool/devmode/devmode-ftesting-overrides.zcml src/schooltool/devmode/devmode-overrides.zcml src/schooltool/devmode/devmode.css src/schooltool/devmode/devmode.pt src/schooltool/devmode/devmode.py src/schooltool/devmode/devmode.txt src/schooltool/devmode/f_unauthorized.pt src/schooltool/devmode/flourish-overrides.zcml src/schooltool/devmode/flourish.zcml src/schooltool/devmode/ftesting.zcml src/schooltool/devmode/ftests.py src/schooltool/devmode/overrides.zcml src/schooltool/devmode/skin.py src/schooltool/devmode/unauthorized.pt src/schooltool/email/__init__.py src/schooltool/email/configure.zcml src/schooltool/email/ftesting.py src/schooltool/email/ftesting.zcml src/schooltool/email/interfaces.py src/schooltool/email/mail.py src/schooltool/email/browser/__init__.py src/schooltool/email/browser/configure.zcml src/schooltool/email/browser/email.py src/schooltool/email/browser/flourish.zcml src/schooltool/email/browser/ftests/__init__.py src/schooltool/email/browser/ftests/email.txt src/schooltool/email/browser/ftests/test_email.py src/schooltool/email/browser/templates/email_container.pt src/schooltool/email/browser/templates/email_delete.pt src/schooltool/email/browser/templates/email_form.pt src/schooltool/email/browser/templates/f_email_container.pt src/schooltool/email/browser/templates/f_email_container_related.pt src/schooltool/email/browser/templates/f_email_queue.pt src/schooltool/email/browser/templates/f_email_settings_overview.pt src/schooltool/email/browser/templates/f_email_view.pt src/schooltool/email/tests/__init__.py src/schooltool/email/tests/test_email.py src/schooltool/export/__init__.py src/schooltool/export/app.py src/schooltool/export/configure.zcml src/schooltool/export/empty_data.xls src/schooltool/export/export.py src/schooltool/export/flourish.zcml src/schooltool/export/ftesting.py src/schooltool/export/ftesting.zcml src/schooltool/export/importer.py src/schooltool/export/interfaces.py src/schooltool/export/sample_data.xls src/schooltool/export/sample_data_small.xls src/schooltool/export/stesting.py src/schooltool/export/stesting.zcml src/schooltool/export/ftests/__init__.py src/schooltool/export/ftests/sample_data.txt src/schooltool/export/ftests/test_all.py src/schooltool/export/ftests/test_data.xls src/schooltool/export/resources/importer.js src/schooltool/export/stests/__init__.py src/schooltool/export/stests/courses.txt src/schooltool/export/stests/courses.xls src/schooltool/export/stests/errant_contacts.xls src/schooltool/export/stests/errant_courses.xls src/schooltool/export/stests/errant_data.txt src/schooltool/export/stests/errant_flat_sections_table.xls src/schooltool/export/stests/errant_groups.xls src/schooltool/export/stests/errant_linked_section_import.xls src/schooltool/export/stests/errant_persons.xls src/schooltool/export/stests/errant_resources.xls src/schooltool/export/stests/errant_section_sheets.xls src/schooltool/export/stests/errant_sections.xls src/schooltool/export/stests/errant_terms.xls src/schooltool/export/stests/errant_timetables.xls src/schooltool/export/stests/errant_years.xls src/schooltool/export/stests/export.txt src/schooltool/export/stests/extensions_test.xls src/schooltool/export/stests/import_section_calendar_bug.txt src/schooltool/export/stests/linked_section_import.txt src/schooltool/export/stests/linked_section_import.xls src/schooltool/export/stests/linked_sections.txt src/schooltool/export/stests/linked_sections.xls src/schooltool/export/stests/section_sheets.txt src/schooltool/export/stests/section_sheets.xls src/schooltool/export/stests/section_teachers_students.txt src/schooltool/export/stests/section_teachers_students.xls src/schooltool/export/stests/selenium_extensions.txt src/schooltool/export/stests/simple_sections.xls src/schooltool/export/stests/teachers_students_sheets.txt src/schooltool/export/stests/teachers_students_sheets.xls src/schooltool/export/stests/test_selenium.py src/schooltool/export/templates/f_import.pt src/schooltool/export/templates/f_import_progress.pt src/schooltool/export/templates/f_import_related.pt src/schooltool/export/templates/f_import_remote.pt src/schooltool/export/templates/import.pt src/schooltool/export/tests/__init__.py src/schooltool/export/tests/test_export.py src/schooltool/generations/__init__.py src/schooltool/generations/evolve29.py src/schooltool/generations/evolve30.py src/schooltool/generations/evolve31.py src/schooltool/generations/evolve32.py src/schooltool/generations/evolve33.py src/schooltool/generations/evolve34.py src/schooltool/generations/evolve35.py src/schooltool/generations/evolve37.py src/schooltool/generations/evolve38.py src/schooltool/generations/evolve39.py src/schooltool/generations/evolve40.py src/schooltool/generations/evolve41.py src/schooltool/generations/evolve42.py src/schooltool/generations/evolve36/__init__.py src/schooltool/generations/evolve36/calendar_builders.py src/schooltool/generations/evolve36/evolve.py src/schooltool/generations/evolve36/helper.py src/schooltool/generations/evolve36/model.py src/schooltool/generations/evolve36/schedule_builders.py src/schooltool/generations/evolve36/timetable_builders.py src/schooltool/generations/tests/Data28.fs src/schooltool/generations/tests/__init__.py src/schooltool/generations/tests/test_evolve28.py src/schooltool/generations/tests/test_evolve29.py src/schooltool/generations/tests/test_evolve30.py src/schooltool/generations/tests/test_evolve31.py src/schooltool/generations/tests/test_evolve32.py src/schooltool/generations/tests/test_evolve33.py src/schooltool/generations/tests/test_evolve34.py src/schooltool/generations/tests/test_evolve35.py src/schooltool/generations/tests/test_evolve37.py src/schooltool/generations/tests/test_evolve38.py src/schooltool/group/__init__.py src/schooltool/group/configure.zcml src/schooltool/group/group.py src/schooltool/group/interfaces.py src/schooltool/group/security.zcml src/schooltool/group/stesting.py src/schooltool/group/stesting.zcml src/schooltool/group/browser/__init__.py src/schooltool/group/browser/configure.zcml src/schooltool/group/browser/csvimport.py src/schooltool/group/browser/flourish.zcml src/schooltool/group/browser/group.py src/schooltool/group/browser/tests.py src/schooltool/group/browser/stests/__init__.py src/schooltool/group/browser/stests/selenium_extensions.txt src/schooltool/group/browser/stests/smart_done_link.txt src/schooltool/group/browser/stests/test_selenium.py src/schooltool/group/browser/templates/f_confirm_delete_group.pt src/schooltool/group/browser/templates/f_group_add.pt src/schooltool/group/browser/templates/f_group_aware_person_table_filter.pt src/schooltool/group/browser/templates/f_group_csvimport_description.pt src/schooltool/group/browser/templates/f_group_filter.pt src/schooltool/group/browser/templates/f_group_member_csvimport_description.pt src/schooltool/group/browser/templates/f_group_view.pt src/schooltool/group/browser/templates/f_groups.pt src/schooltool/group/browser/templates/f_groupsviewlet.pt src/schooltool/group/browser/templates/f_manage_groups_overview.pt src/schooltool/group/browser/templates/group-csvimport.pt src/schooltool/group/browser/templates/group-member-csvimport.pt src/schooltool/group/browser/templates/group.pt src/schooltool/group/browser/templates/groupsviewlet.pt src/schooltool/group/browser/templates/link_to_groups.pt src/schooltool/group/tests/__init__.py src/schooltool/group/tests/test_group.py src/schooltool/help/__init__.py src/schooltool/help/meta.zcml src/schooltool/level/__init__.py src/schooltool/level/configure.zcml src/schooltool/level/interfaces.py src/schooltool/level/level.py src/schooltool/level/level.zcml src/schooltool/level/security.zcml src/schooltool/level/browser/__init__.py src/schooltool/level/browser/configure.zcml src/schooltool/level/browser/flourish.zcml src/schooltool/level/browser/level.py src/schooltool/level/browser/templates/add_level_subform.pt src/schooltool/level/browser/templates/f_levels_related.pt src/schooltool/level/browser/templates/f_levels_reorder.pt src/schooltool/level/browser/templates/f_levels_view.pt src/schooltool/level/browser/templates/level_edit.pt src/schooltool/level/browser/templates/levels.pt src/schooltool/level/browser/templates/link_to_levels.pt src/schooltool/level/tests/__init__.py src/schooltool/level/tests/level-integration.txt src/schooltool/level/tests/test_level.py src/schooltool/locales/__init__.py src/schooltool/locales/ar.po src/schooltool/locales/ca.po src/schooltool/locales/ca@valencia.po src/schooltool/locales/cs.po src/schooltool/locales/da.po src/schooltool/locales/de.po src/schooltool/locales/el.po src/schooltool/locales/en_AU.po src/schooltool/locales/en_CA.po src/schooltool/locales/en_GB.po src/schooltool/locales/es.po src/schooltool/locales/es_AR.po src/schooltool/locales/es_CL.po src/schooltool/locales/es_SV.po src/schooltool/locales/eu.po src/schooltool/locales/fi.po src/schooltool/locales/fr.po src/schooltool/locales/fr_BE.po src/schooltool/locales/id.po src/schooltool/locales/it.po src/schooltool/locales/ja.po src/schooltool/locales/km.po src/schooltool/locales/ko.po src/schooltool/locales/lt.po src/schooltool/locales/ms.po src/schooltool/locales/nb.po src/schooltool/locales/ne.po src/schooltool/locales/nl.po src/schooltool/locales/oc.po src/schooltool/locales/pl.po src/schooltool/locales/pt.po src/schooltool/locales/pt_BR.po src/schooltool/locales/ro.po src/schooltool/locales/ru.po src/schooltool/locales/schooltool.pot src/schooltool/locales/si.po src/schooltool/locales/sk.po src/schooltool/locales/sr.po src/schooltool/locales/sv.po src/schooltool/locales/th.po src/schooltool/locales/tr.po src/schooltool/locales/uk.po src/schooltool/locales/vi.po src/schooltool/locales/zh_CN.po src/schooltool/locales/zh_TW.po src/schooltool/locales/ar/LC_MESSAGES/schooltool.mo src/schooltool/locales/ca/LC_MESSAGES/schooltool.mo src/schooltool/locales/ca@valencia/LC_MESSAGES/schooltool.mo src/schooltool/locales/cs/LC_MESSAGES/schooltool.mo src/schooltool/locales/da/LC_MESSAGES/schooltool.mo src/schooltool/locales/de/LC_MESSAGES/schooltool.mo src/schooltool/locales/el/LC_MESSAGES/schooltool.mo src/schooltool/locales/en_AU/LC_MESSAGES/schooltool.mo src/schooltool/locales/en_CA/LC_MESSAGES/schooltool.mo src/schooltool/locales/en_GB/LC_MESSAGES/schooltool.mo src/schooltool/locales/es/LC_MESSAGES/schooltool.mo src/schooltool/locales/es_AR/LC_MESSAGES/schooltool.mo src/schooltool/locales/es_CL/LC_MESSAGES/schooltool.mo src/schooltool/locales/es_SV/LC_MESSAGES/schooltool.mo src/schooltool/locales/eu/LC_MESSAGES/schooltool.mo src/schooltool/locales/fi/LC_MESSAGES/schooltool.mo src/schooltool/locales/fr/LC_MESSAGES/schooltool.mo src/schooltool/locales/fr_BE/LC_MESSAGES/schooltool.mo src/schooltool/locales/id/LC_MESSAGES/schooltool.mo src/schooltool/locales/it/LC_MESSAGES/schooltool.mo src/schooltool/locales/ja/LC_MESSAGES/schooltool.mo src/schooltool/locales/km/LC_MESSAGES/schooltool.mo src/schooltool/locales/ko/LC_MESSAGES/schooltool.mo src/schooltool/locales/lt/LC_MESSAGES/schooltool.mo src/schooltool/locales/ms/LC_MESSAGES/schooltool.mo src/schooltool/locales/nb/LC_MESSAGES/schooltool.mo src/schooltool/locales/ne/LC_MESSAGES/schooltool.mo src/schooltool/locales/nl/LC_MESSAGES/schooltool.mo src/schooltool/locales/oc/LC_MESSAGES/schooltool.mo src/schooltool/locales/pl/LC_MESSAGES/schooltool.mo src/schooltool/locales/pt/LC_MESSAGES/schooltool.mo src/schooltool/locales/pt_BR/LC_MESSAGES/schooltool.mo src/schooltool/locales/ro/LC_MESSAGES/schooltool.mo src/schooltool/locales/ru/LC_MESSAGES/schooltool.mo src/schooltool/locales/si/LC_MESSAGES/schooltool.mo src/schooltool/locales/sk/LC_MESSAGES/schooltool.mo src/schooltool/locales/sr/LC_MESSAGES/schooltool.mo src/schooltool/locales/sv/LC_MESSAGES/schooltool.mo src/schooltool/locales/th/LC_MESSAGES/schooltool.mo src/schooltool/locales/tr/LC_MESSAGES/schooltool.mo src/schooltool/locales/uk/LC_MESSAGES/schooltool.mo src/schooltool/locales/vi/LC_MESSAGES/schooltool.mo src/schooltool/locales/zh_CN/LC_MESSAGES/schooltool.mo src/schooltool/locales/zh_TW/LC_MESSAGES/schooltool.mo src/schooltool/note/__init__.py src/schooltool/note/browser.py src/schooltool/note/configure.zcml src/schooltool/note/ftesting.zcml src/schooltool/note/ftests.py src/schooltool/note/interfaces.py src/schooltool/note/note-configure.zcml src/schooltool/note/note.py src/schooltool/note/note_add.pt src/schooltool/note/notes.pt src/schooltool/note/notes_browser.txt src/schooltool/note/tests.py src/schooltool/paste/__init__.py src/schooltool/paste/instance.py src/schooltool/paste/main.py src/schooltool/paste/run.py src/schooltool/paste/templates.py src/schooltool/paste/schooltool_template/paste.ini_tmpl src/schooltool/paste/schooltool_template/redis.conf_tmpl src/schooltool/paste/schooltool_template/report-server.zcml_tmpl src/schooltool/paste/schooltool_template/result-server.zcml_tmpl src/schooltool/paste/schooltool_template/schooltool.conf_tmpl src/schooltool/paste/schooltool_template/site.zcml_tmpl src/schooltool/paste/schooltool_template/supervisord.conf_tmpl src/schooltool/paste/schooltool_template/zeo.conf_tmpl src/schooltool/paste/schooltool_template/plugins/README.txt src/schooltool/person/__init__.py src/schooltool/person/configure.zcml src/schooltool/person/ftesting.py src/schooltool/person/ftesting.zcml src/schooltool/person/interfaces.py src/schooltool/person/person.py src/schooltool/person/preference.py src/schooltool/person/security.zcml src/schooltool/person/stesting.py src/schooltool/person/stesting.zcml src/schooltool/person/browser/__init__.py src/schooltool/person/browser/configure.zcml src/schooltool/person/browser/csvimport.py src/schooltool/person/browser/csvimport.txt src/schooltool/person/browser/f_confirm_delete_person.pt src/schooltool/person/browser/f_password_changed.pt src/schooltool/person/browser/f_password_form.pt src/schooltool/person/browser/f_person_filter.pt src/schooltool/person/browser/f_person_table_filter.pt src/schooltool/person/browser/flourish.zcml src/schooltool/person/browser/ftests.py src/schooltool/person/browser/home.pt src/schooltool/person/browser/home_tab_viewlet.pt src/schooltool/person/browser/password.txt src/schooltool/person/browser/password_form.pt src/schooltool/person/browser/person.py src/schooltool/person/browser/person_filter.pt src/schooltool/person/browser/person_preferences.pt src/schooltool/person/browser/tests.py src/schooltool/person/browser/stests/__init__.py src/schooltool/person/browser/stests/password_edit.txt src/schooltool/person/browser/stests/test_selenium.py src/schooltool/person/tests/__init__.py src/schooltool/person/tests/test_person.py src/schooltool/relationship/README.txt src/schooltool/relationship/__init__.py src/schooltool/relationship/annotatable.py src/schooltool/relationship/configure.zcml src/schooltool/relationship/interfaces.py src/schooltool/relationship/objectevents.py src/schooltool/relationship/relationship.py src/schooltool/relationship/relationship.zcml src/schooltool/relationship/security.zcml src/schooltool/relationship/uri.py src/schooltool/relationship/tests/__init__.py src/schooltool/relationship/tests/test_annotatable.py src/schooltool/relationship/tests/test_objectevents.py src/schooltool/relationship/tests/test_relationship.py src/schooltool/relationship/tests/test_uri.py src/schooltool/report/__init__.py src/schooltool/report/configure.zcml src/schooltool/report/ftesting.py src/schooltool/report/ftesting.zcml src/schooltool/report/interfaces.py src/schooltool/report/meta.py src/schooltool/report/meta.zcml src/schooltool/report/report.py src/schooltool/report/security.zcml src/schooltool/report/browser/__init__.py src/schooltool/report/browser/configure.zcml src/schooltool/report/browser/flourish.zcml src/schooltool/report/browser/report.py src/schooltool/report/browser/ftests/__init__.py src/schooltool/report/browser/ftests/report.txt src/schooltool/report/browser/ftests/test_report.py src/schooltool/report/browser/templates/f_download_report_dialog.pt src/schooltool/report/browser/templates/f_report_links.pt src/schooltool/report/browser/templates/f_report_links_body.pt src/schooltool/report/browser/templates/f_report_reference.pt src/schooltool/report/browser/templates/f_request_report_download.pt src/schooltool/report/browser/templates/f_short_report_message.pt src/schooltool/report/browser/templates/report_links.pt src/schooltool/report/browser/templates/report_reference.pt src/schooltool/report/templates/f_report_link_manager.pt src/schooltool/report/templates/report_link.pt src/schooltool/report/templates/report_link_manager.pt src/schooltool/report/tests/__init__.py src/schooltool/report/tests/test_report.py src/schooltool/resource/__init__.py src/schooltool/resource/booking.py src/schooltool/resource/configure.zcml src/schooltool/resource/ftesting.py src/schooltool/resource/ftesting.zcml src/schooltool/resource/interfaces.py src/schooltool/resource/resource.py src/schooltool/resource/sampledata.py src/schooltool/resource/security.zcml src/schooltool/resource/stesting.py src/schooltool/resource/stesting.zcml src/schooltool/resource/types.py src/schooltool/resource/browser/__init__.py src/schooltool/resource/browser/booking.py src/schooltool/resource/browser/cal-booking.txt src/schooltool/resource/browser/configure.zcml src/schooltool/resource/browser/container_delete.pt src/schooltool/resource/browser/csvimport.py src/schooltool/resource/browser/csvimport.txt src/schooltool/resource/browser/demographics.txt src/schooltool/resource/browser/event_booking_viewlet.pt src/schooltool/resource/browser/event_edit_booking_viewlet.pt src/schooltool/resource/browser/flourish.zcml src/schooltool/resource/browser/ftests.py src/schooltool/resource/browser/portlet_tomorrow_events.pt src/schooltool/resource/browser/resource-booking.txt src/schooltool/resource/browser/resource-csvimport.pt src/schooltool/resource/browser/resource.pt src/schooltool/resource/browser/resource.py src/schooltool/resource/browser/resource_filter.pt src/schooltool/resource/browser/resourcecontainer.pt src/schooltool/resource/browser/resources.txt src/schooltool/resource/browser/security.txt src/schooltool/resource/browser/subtype_widget.pt src/schooltool/resource/browser/tests.py src/schooltool/resource/browser/rml/resource_report.pt src/schooltool/resource/browser/stests/__init__.py src/schooltool/resource/browser/stests/bug_953454.txt src/schooltool/resource/browser/stests/non_ascii_titles.txt src/schooltool/resource/browser/stests/test_selenium.py src/schooltool/resource/browser/templates/f_manage_resources_overview.pt src/schooltool/resource/browser/templates/f_resource_container_related.pt src/schooltool/resource/browser/templates/f_resource_csvimport_description.pt src/schooltool/resource/browser/templates/f_resource_delete_confirmation.pt src/schooltool/resource/browser/templates/f_resource_demographics_related.pt src/schooltool/resource/browser/templates/f_resource_filter.pt src/schooltool/resource/browser/templates/f_resource_form.pt src/schooltool/resource/browser/templates/f_resource_table_filter.pt src/schooltool/resource/browser/templates/f_resource_view.pt src/schooltool/resource/browser/templates/resource_form.pt src/schooltool/resource/browser/templates/resource_view.pt src/schooltool/resource/tests/__init__.py src/schooltool/resource/tests/test_resource.py src/schooltool/resource/tests/test_sampledata.py src/schooltool/sampledata/README.txt src/schooltool/sampledata/__init__.py src/schooltool/sampledata/browser.py src/schooltool/sampledata/configure.zcml src/schooltool/sampledata/first_names.txt src/schooltool/sampledata/generator.py src/schooltool/sampledata/interfaces.py src/schooltool/sampledata/last_names.txt src/schooltool/sampledata/name.py src/schooltool/sampledata/sampledata.pt src/schooltool/sampledata/ftests/__init__.py src/schooltool/sampledata/ftests/ftesting.zcml src/schooltool/sampledata/ftests/sampledata.txt src/schooltool/sampledata/ftests/test_all.py src/schooltool/sampledata/tests/__init__.py src/schooltool/sampledata/tests/test_browser.py src/schooltool/sampledata/tests/test_generator.py src/schooltool/sampledata/tests/test_name.py src/schooltool/schoolyear/__init__.py src/schooltool/schoolyear/configure.zcml src/schooltool/schoolyear/ftesting.py src/schooltool/schoolyear/ftesting.zcml src/schooltool/schoolyear/interfaces.py src/schooltool/schoolyear/schoolyear.py src/schooltool/schoolyear/schoolyear.zcml src/schooltool/schoolyear/security.zcml src/schooltool/schoolyear/stesting.py src/schooltool/schoolyear/stesting.zcml src/schooltool/schoolyear/subscriber.py src/schooltool/schoolyear/testing.py src/schooltool/schoolyear/browser/__init__.py src/schooltool/schoolyear/browser/configure.zcml src/schooltool/schoolyear/browser/flourish.zcml src/schooltool/schoolyear/browser/interfaces.py src/schooltool/schoolyear/browser/schoolyear.py src/schooltool/schoolyear/browser/ftests/__init__.py src/schooltool/schoolyear/browser/ftests/first_last_crash.txt src/schooltool/schoolyear/browser/ftests/schoolyear.txt src/schooltool/schoolyear/browser/ftests/schoolyear_activation.txt src/schooltool/schoolyear/browser/ftests/schoolyear_import.txt src/schooltool/schoolyear/browser/ftests/test_all.py src/schooltool/schoolyear/browser/stests/__init__.py src/schooltool/schoolyear/browser/stests/selenium_extensions.txt src/schooltool/schoolyear/browser/stests/test_selenium.py src/schooltool/schoolyear/browser/templates/f_confirm_delete_schoolyear.pt src/schooltool/schoolyear/browser/templates/f_manage_schoolyears_overview.pt src/schooltool/schoolyear/browser/templates/f_manage_year_overview.pt src/schooltool/schoolyear/browser/templates/f_schoolyear.pt src/schooltool/schoolyear/browser/templates/f_schoolyear_activate.pt src/schooltool/schoolyear/browser/templates/f_schoolyear_add.pt src/schooltool/schoolyear/browser/templates/f_table_container.pt src/schooltool/schoolyear/browser/templates/school_year_overlap_error.pt src/schooltool/schoolyear/browser/templates/school_years_viewlet.pt src/schooltool/schoolyear/browser/templates/schoolyear.pt src/schooltool/schoolyear/browser/templates/schoolyear_add.pt src/schooltool/schoolyear/browser/templates/schoolyear_container.pt src/schooltool/schoolyear/browser/templates/schoolyear_edit.pt src/schooltool/schoolyear/browser/templates/schoolyear_menu.pt src/schooltool/schoolyear/browser/templates/term-delete.pt src/schooltool/schoolyear/browser/templates/term_overflow_error.pt src/schooltool/schoolyear/browser/tests/__init__.py src/schooltool/schoolyear/browser/tests/test_schoolyear.py src/schooltool/schoolyear/tests/__init__.py src/schooltool/schoolyear/tests/test_schoolyear.py src/schooltool/schoolyear/tests/test_subscriber.py src/schooltool/securitypolicy/README.txt src/schooltool/securitypolicy/__init__.py src/schooltool/securitypolicy/configure.zcml src/schooltool/securitypolicy/crowds.py src/schooltool/securitypolicy/customisation.py src/schooltool/securitypolicy/ftesting.py src/schooltool/securitypolicy/ftesting.zcml src/schooltool/securitypolicy/interfaces.py src/schooltool/securitypolicy/meta.zcml src/schooltool/securitypolicy/metaconfigure.py src/schooltool/securitypolicy/metadirectives.py src/schooltool/securitypolicy/policy.py src/schooltool/securitypolicy/security_descriptions.txt src/schooltool/securitypolicy/testing.py src/schooltool/securitypolicy/browser/__init__.py src/schooltool/securitypolicy/browser/configure.zcml src/schooltool/securitypolicy/browser/control.py src/schooltool/securitypolicy/browser/flourish.zcml src/schooltool/securitypolicy/browser/views.py src/schooltool/securitypolicy/browser/ftests/__init__.py src/schooltool/securitypolicy/browser/ftests/access_rights.txt src/schooltool/securitypolicy/browser/ftests/test_all.py src/schooltool/securitypolicy/browser/templates/access_control.pt src/schooltool/securitypolicy/browser/templates/access_setting_snippet.pt src/schooltool/securitypolicy/browser/templates/f_access_control.pt src/schooltool/securitypolicy/browser/templates/f_security_descriptions.pt src/schooltool/securitypolicy/browser/templates/security_descriptions.pt src/schooltool/securitypolicy/browser/tests/__init__.py src/schooltool/securitypolicy/browser/tests/test_control.py src/schooltool/securitypolicy/browser/tests/test_crowds.py src/schooltool/securitypolicy/browser/tests/test_views.py src/schooltool/securitypolicy/tests/__init__.py src/schooltool/securitypolicy/tests/test_crowds.py src/schooltool/securitypolicy/tests/test_customisation.py src/schooltool/securitypolicy/tests/test_metaconfigure.py src/schooltool/securitypolicy/tests/test_policy.py src/schooltool/securitypolicy/tests/test_txt.py src/schooltool/skin/__init__.py src/schooltool/skin/configure.zcml src/schooltool/skin/containers.py src/schooltool/skin/date-input.pt src/schooltool/skin/dateformatter.py src/schooltool/skin/error.py src/schooltool/skin/macros.py src/schooltool/skin/meta.zcml src/schooltool/skin/skin.py src/schooltool/skin/widgets.py src/schooltool/skin/z3cform.zcml src/schooltool/skin/flourish/__init__.py src/schooltool/skin/flourish/ajax.py src/schooltool/skin/flourish/breadcrumbs.py src/schooltool/skin/flourish/configure.zcml src/schooltool/skin/flourish/containers.py src/schooltool/skin/flourish/containers.zcml src/schooltool/skin/flourish/content.py src/schooltool/skin/flourish/error.py src/schooltool/skin/flourish/fields.py src/schooltool/skin/flourish/form.py src/schooltool/skin/flourish/helpers.py src/schooltool/skin/flourish/interfaces.py src/schooltool/skin/flourish/meta.zcml src/schooltool/skin/flourish/page.py src/schooltool/skin/flourish/report.py src/schooltool/skin/flourish/report.zcml src/schooltool/skin/flourish/resource.py src/schooltool/skin/flourish/sorting.py src/schooltool/skin/flourish/stesting.py src/schooltool/skin/flourish/tal.py src/schooltool/skin/flourish/tal.zcml src/schooltool/skin/flourish/templates.py src/schooltool/skin/flourish/viewlet.py src/schooltool/skin/flourish/widgets.py src/schooltool/skin/flourish/widgets.zcml src/schooltool/skin/flourish/zcml.py src/schooltool/skin/flourish/zcml_breadcrumb.py src/schooltool/skin/flourish/zcml_content.py src/schooltool/skin/flourish/zcml_report.py src/schooltool/skin/flourish/zcml_resource.py src/schooltool/skin/flourish/instance/__init__.py src/schooltool/skin/flourish/instance/configure.zcml src/schooltool/skin/flourish/instance/skin.zcml src/schooltool/skin/flourish/instance/z3cform.zcml src/schooltool/skin/flourish/resources/add-icon.png src/schooltool/skin/flourish/resources/batch.css src/schooltool/skin/flourish/resources/colors.css src/schooltool/skin/flourish/resources/d3.min.js src/schooltool/skin/flourish/resources/edit-icon.png src/schooltool/skin/flourish/resources/editor_config.js src/schooltool/skin/flourish/resources/error-icon.png src/schooltool/skin/flourish/resources/favicon.ico src/schooltool/skin/flourish/resources/flourish.css src/schooltool/skin/flourish/resources/flourish.js src/schooltool/skin/flourish/resources/form.css src/schooltool/skin/flourish/resources/gradebook.css src/schooltool/skin/flourish/resources/gradebook.js src/schooltool/skin/flourish/resources/hexes.svg src/schooltool/skin/flourish/resources/jquery.scrollto.min.js src/schooltool/skin/flourish/resources/jstree.js src/schooltool/skin/flourish/resources/logo-small.png src/schooltool/skin/flourish/resources/logo.png src/schooltool/skin/flourish/resources/logo_bw.png src/schooltool/skin/flourish/resources/mail.png src/schooltool/skin/flourish/resources/page.css src/schooltool/skin/flourish/resources/qtest.js src/schooltool/skin/flourish/resources/qunit.css src/schooltool/skin/flourish/resources/qunit.js src/schooltool/skin/flourish/resources/remove-icon.png src/schooltool/skin/flourish/resources/report.css src/schooltool/skin/flourish/resources/report.js src/schooltool/skin/flourish/resources/reset.css src/schooltool/skin/flourish/resources/spinner.gif src/schooltool/skin/flourish/resources/subnav_active_bg.png src/schooltool/skin/flourish/resources/subnav_divider.png src/schooltool/skin/flourish/resources/table.css src/schooltool/skin/flourish/resources/ckeditor/contents.css src/schooltool/skin/flourish/resources/ckeditor/dialog.css src/schooltool/skin/flourish/resources/ckeditor/editor.css src/schooltool/skin/flourish/resources/ckeditor/elementspath.css src/schooltool/skin/flourish/resources/ckeditor/icons.css src/schooltool/skin/flourish/resources/ckeditor/icons.png src/schooltool/skin/flourish/resources/ckeditor/icons_rtl.png src/schooltool/skin/flourish/resources/ckeditor/mainui.css src/schooltool/skin/flourish/resources/ckeditor/menu.css src/schooltool/skin/flourish/resources/ckeditor/panel.css src/schooltool/skin/flourish/resources/ckeditor/presets.css src/schooltool/skin/flourish/resources/ckeditor/reset.css src/schooltool/skin/flourish/resources/ckeditor/richcombo.css src/schooltool/skin/flourish/resources/ckeditor/skin.js src/schooltool/skin/flourish/resources/ckeditor/templates.css src/schooltool/skin/flourish/resources/ckeditor/toolbar.css src/schooltool/skin/flourish/resources/ckeditor/images/dialog_sides.gif src/schooltool/skin/flourish/resources/ckeditor/images/dialog_sides.png src/schooltool/skin/flourish/resources/ckeditor/images/dialog_sides_rtl.png src/schooltool/skin/flourish/resources/ckeditor/images/mini.gif src/schooltool/skin/flourish/resources/ckeditor/images/noimage.png src/schooltool/skin/flourish/resources/ckeditor/images/sprites.png src/schooltool/skin/flourish/resources/ckeditor/images/sprites_ie6.png src/schooltool/skin/flourish/resources/ckeditor/images/toolbar_start.gif src/schooltool/skin/flourish/resources/jquery/css/schooltool/jquery-ui-overrides.css src/schooltool/skin/flourish/resources/jquery/css/schooltool/jquery-ui.css src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_diagonals-small_10_00abb3_40x40.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_diagonals-small_10_540000_40x40.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_diagonals-small_10_ffffff_40x40.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_diagonals-small_90_eeeeff_40x40.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_flat_0_aaaaaa_40x100.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_glass_55_fbf9ee_1x400.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-bg_inset-soft_95_fef1ec_1x100.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-icons_222222_256x240.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-icons_2e83ff_256x240.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-icons_cd0a0a_256x240.png src/schooltool/skin/flourish/resources/jquery/css/schooltool/images/ui-icons_ffffff_256x240.png src/schooltool/skin/flourish/resources/jquery/development-bundle/AUTHORS.txt src/schooltool/skin/flourish/resources/jquery/development-bundle/GPL-LICENSE.txt src/schooltool/skin/flourish/resources/jquery/development-bundle/MIT-LICENSE.txt src/schooltool/skin/flourish/resources/jquery/development-bundle/version.txt src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery-ui-i18n.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-af.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ar-DZ.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ar.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-az.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-bg.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-bs.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ca.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-cs.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-cy-GB.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-da.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-de.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-el.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-en-AU.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-en-GB.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-en-NZ.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-eo.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-es.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-et.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-eu.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-fa.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-fi.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-fo.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-fr-CH.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-fr.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-gl.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-he.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-hi.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-hr.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-hu.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-hy.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-id.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-is.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-it.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ja.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-kk.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-km.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ko.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-kz.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-lb.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-lt.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-lv.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-mk.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ml.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ms.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-nl-BE.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-nl.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-no.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-pl.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-pt-BR.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-pt.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-rm.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ro.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ru.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sk.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sl.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sq.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sr-SR.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sr.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-sv.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-ta.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-th.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-tj.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-tr.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-uk.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-vi.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-zh-CN.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-zh-HK.js src/schooltool/skin/flourish/resources/jquery/development-bundle/ui/i18n/jquery.ui.datepicker-zh-TW.js src/schooltool/skin/flourish/resources/jquery/js/jquery-ui.min.js src/schooltool/skin/flourish/rml/pdf.pt src/schooltool/skin/flourish/rml/pdf_colors.pt src/schooltool/skin/flourish/rml/pdf_form.pt src/schooltool/skin/flourish/rml/pdf_init.pt src/schooltool/skin/flourish/rml/pdf_pageinfo.pt src/schooltool/skin/flourish/rml/pdf_plain_page_template.pt src/schooltool/skin/flourish/rml/pdf_plain_styles.pt src/schooltool/skin/flourish/rml/pdf_schooltool_styles.pt src/schooltool/skin/flourish/rml/pdf_stylesheet.pt src/schooltool/skin/flourish/rml/pdf_template.pt src/schooltool/skin/flourish/rml/z3c-html-widget.pt src/schooltool/skin/flourish/rml/z3c-widget-file.pt src/schooltool/skin/flourish/rml/z3c-widget-image.pt src/schooltool/skin/flourish/rml/z3c-widget-sequence.pt src/schooltool/skin/flourish/rml/z3c-widget-table-row.pt src/schooltool/skin/flourish/rml/z3c-widget.pt src/schooltool/skin/flourish/templates/breadcrumbs.pt src/schooltool/skin/flourish/templates/container_delete.pt src/schooltool/skin/flourish/templates/f_formlib_macros.pt src/schooltool/skin/flourish/templates/f_widget_macros.pt src/schooltool/skin/flourish/templates/image_input.pt src/schooltool/skin/flourish/templates/main.pt src/schooltool/skin/flourish/templates/modal_form_link.pt src/schooltool/skin/flourish/templates/page.pt src/schooltool/skin/flourish/templates/page_content.pt src/schooltool/skin/flourish/templates/page_nosidebar.pt src/schooltool/skin/flourish/templates/rml_macros.pt src/schooltool/skin/flourish/templates/z3c-schooltool-display.pt src/schooltool/skin/flourish/templates/z3c-schooltool-form.pt src/schooltool/skin/flourish/templates/z3c_form_display.pt src/schooltool/skin/flourish/templates/z3c_form_edit.pt src/schooltool/skin/flourish/tests/__init__.py src/schooltool/skin/flourish/tests/simple_viewlet.pt src/schooltool/skin/flourish/tests/test_content.py src/schooltool/skin/flourish/tests/test_report.py src/schooltool/skin/flourish/tests/test_sorting.py src/schooltool/skin/flourish/tests/test_tal.py src/schooltool/skin/flourish/tests/test_viewlet.py src/schooltool/skin/resources/delete.png src/schooltool/skin/resources/downarrow.png src/schooltool/skin/resources/editor_config.js src/schooltool/skin/resources/favicon.ico src/schooltool/skin/resources/icon.png src/schooltool/skin/resources/jquery.min.js src/schooltool/skin/resources/layout.css src/schooltool/skin/resources/next.png src/schooltool/skin/resources/note-body-l.gif src/schooltool/skin/resources/note-body-r.gif src/schooltool/skin/resources/note-head-l.gif src/schooltool/skin/resources/note-head-r.gif src/schooltool/skin/resources/previous.png src/schooltool/skin/resources/print.css src/schooltool/skin/resources/private-note-body-l.gif src/schooltool/skin/resources/private-note-body-r.gif src/schooltool/skin/resources/private-note-head-l.gif src/schooltool/skin/resources/private-note-head-r.gif src/schooltool/skin/resources/rightarrow.png src/schooltool/skin/resources/schooltool.css src/schooltool/skin/resources/schooltool.js src/schooltool/skin/resources/sidebar-background-top.png src/schooltool/skin/resources/sidebar-background.png src/schooltool/skin/resources/toolbar-background-hover.png src/schooltool/skin/resources/toolbar-background.png src/schooltool/skin/resources/zonki-regular.png src/schooltool/skin/resources/jstree/jquery.tree.js src/schooltool/skin/resources/jstree/script.js src/schooltool/skin/resources/jstree/style.css src/schooltool/skin/resources/jstree/themes/classic/dot_for_ie.gif src/schooltool/skin/resources/jstree/themes/classic/icons.png src/schooltool/skin/resources/jstree/themes/classic/style.css src/schooltool/skin/resources/jstree/themes/classic/throbber.gif src/schooltool/skin/templates/actionsViewlet.pt src/schooltool/skin/templates/actionsbar.pt src/schooltool/skin/templates/ckeditor_widget_display.pt src/schooltool/skin/templates/ckeditor_widget_hidden.pt src/schooltool/skin/templates/ckeditor_widget_input.pt src/schooltool/skin/templates/container.pt src/schooltool/skin/templates/container_delete.pt src/schooltool/skin/templates/error.pt src/schooltool/skin/templates/f_error.pt src/schooltool/skin/templates/f_notfound.pt src/schooltool/skin/templates/f_unauthorized.pt src/schooltool/skin/templates/filter.pt src/schooltool/skin/templates/formlib_macros.pt src/schooltool/skin/templates/generic_macros.pt src/schooltool/skin/templates/language_selector.pt src/schooltool/skin/templates/menuBarViewlet.pt src/schooltool/skin/templates/menubar.pt src/schooltool/skin/templates/navigation.pt src/schooltool/skin/templates/navigationViewlet.pt src/schooltool/skin/templates/notfound.pt src/schooltool/skin/templates/rml_macros.pt src/schooltool/skin/templates/simple_add.pt src/schooltool/skin/templates/simple_edit.pt src/schooltool/skin/templates/table_container.pt src/schooltool/skin/templates/unauthorized.pt src/schooltool/skin/templates/view_macros.pt src/schooltool/skin/templates/widget_macros.pt src/schooltool/skin/templates/z3c-schooltool-display.pt src/schooltool/skin/templates/z3c-schooltool-form.pt src/schooltool/skin/tests/__init__.py src/schooltool/skin/tests/test_containers.py src/schooltool/skin/tests/test_dateformatter.py src/schooltool/skin/tests/test_error.py src/schooltool/skin/tests/test_skin.py src/schooltool/skin/tests/test_widgets.py src/schooltool/standard/README.txt src/schooltool/standard/__init__.py src/schooltool/standard/configure.zcml src/schooltool/standard/ftesting.py src/schooltool/standard/ftesting.zcml src/schooltool/standard/skin.py src/schooltool/standard/ftests/__init__.py src/schooltool/standard/ftests/standard.txt src/schooltool/standard/ftests/test_all.py src/schooltool/table/__init__.py src/schooltool/table/ajax.py src/schooltool/table/batch.py src/schooltool/table/catalog.py src/schooltool/table/column.py src/schooltool/table/configure.zcml src/schooltool/table/flourish.zcml src/schooltool/table/interfaces.py src/schooltool/table/pdf.py src/schooltool/table/table.py src/schooltool/table/resources/table.js src/schooltool/table/rml/grid.pt src/schooltool/table/rml/grid_part.pt src/schooltool/table/rml/table.pt src/schooltool/table/rml/table_part.pt src/schooltool/table/templates/batch.pt src/schooltool/table/templates/f_ajax_table.pt src/schooltool/table/templates/f_batch.pt src/schooltool/table/templates/f_filter.pt src/schooltool/table/templates/f_form_table.pt src/schooltool/table/templates/f_table.pt src/schooltool/table/templates/f_table_container.pt src/schooltool/table/templates/filter.pt src/schooltool/table/tests/__init__.py src/schooltool/table/tests/test_batch.py src/schooltool/table/tests/test_catalog.py src/schooltool/table/tests/test_pdf.py src/schooltool/table/tests/test_table.py src/schooltool/task/__init__.py src/schooltool/task/celery.py src/schooltool/task/configure.zcml src/schooltool/task/interfaces.py src/schooltool/task/progress.py src/schooltool/task/result_server.py src/schooltool/task/result_server.zcml src/schooltool/task/security.zcml src/schooltool/task/state.py src/schooltool/task/tasks.py src/schooltool/task/browser/__init__.py src/schooltool/task/browser/configure.zcml src/schooltool/task/browser/flourish.zcml src/schooltool/task/browser/task.py src/schooltool/task/browser/resources/task.js src/schooltool/task/browser/templates/f_short_fail_message.pt src/schooltool/task/browser/templates/f_task_progress.pt src/schooltool/task/browser/templates/task_container.pt src/schooltool/task/browser/templates/task_dialog.pt src/schooltool/task/browser/templates/task_status.pt src/schooltool/task/config/__init__.py src/schooltool/task/config/worker_dbonly.py src/schooltool/task/config/worker_default.py src/schooltool/task/config/worker_import.py src/schooltool/task/config/worker_report.py src/schooltool/task/config/zope.py src/schooltool/term/__init__.py src/schooltool/term/configure.zcml src/schooltool/term/ftesting.py src/schooltool/term/ftesting.zcml src/schooltool/term/interfaces.py src/schooltool/term/sampledata.py src/schooltool/term/schoolyear.py src/schooltool/term/security.zcml src/schooltool/term/stesting.py src/schooltool/term/stesting.zcml src/schooltool/term/term.py src/schooltool/term/time_machine.zcml src/schooltool/term/browser/__init__.py src/schooltool/term/browser/configure.zcml src/schooltool/term/browser/emergency.py src/schooltool/term/browser/emergencydays.txt src/schooltool/term/browser/errors.py src/schooltool/term/browser/flourish.zcml src/schooltool/term/browser/term.py src/schooltool/term/browser/termrenderer.txt src/schooltool/term/browser/tests.py src/schooltool/term/browser/ftests/__init__.py src/schooltool/term/browser/ftests/term.txt src/schooltool/term/browser/ftests/test_all.py src/schooltool/term/browser/stests/__init__.py src/schooltool/term/browser/stests/selenium_extensions.txt src/schooltool/term/browser/stests/test_selenium.py src/schooltool/term/browser/templates/emergency2.pt src/schooltool/term/browser/templates/emergency_select.pt src/schooltool/term/browser/templates/f_confirm_delete_term.pt src/schooltool/term/browser/templates/f_manage_years_overview.pt src/schooltool/term/browser/templates/f_term.pt src/schooltool/term/browser/templates/f_term_add.pt src/schooltool/term/browser/templates/f_terms.pt src/schooltool/term/browser/templates/f_terms_related.pt src/schooltool/term/browser/templates/term-container-delete.pt src/schooltool/term/browser/templates/term.pt src/schooltool/term/browser/templates/term_add.pt src/schooltool/term/browser/templates/term_overlap_error.pt src/schooltool/term/tests/__init__.py src/schooltool/term/tests/date_management.pt src/schooltool/term/tests/test_sampledata.py src/schooltool/term/tests/test_term.py src/schooltool/testing/README.selenium.txt src/schooltool/testing/README.txt src/schooltool/testing/__init__.py src/schooltool/testing/analyze.py src/schooltool/testing/functional.py src/schooltool/testing/mock.py src/schooltool/testing/pdf.py src/schooltool/testing/registry.py src/schooltool/testing/selenium-overrides.zcml src/schooltool/testing/selenium.py src/schooltool/testing/selenium.zcml src/schooltool/testing/setup.py src/schooltool/testing/stubs.py src/schooltool/testing/util.py src/schooltool/testing/xls.py src/schooltool/testing/tests/__init__.py src/schooltool/testing/tests/echodirective.py src/schooltool/testing/tests/echodirective.zcml src/schooltool/testing/tests/test_pdf.py src/schooltool/testing/tests/test_readme.py src/schooltool/timetable/README.txt src/schooltool/timetable/__init__.py src/schooltool/timetable/app.py src/schooltool/timetable/calendar.py src/schooltool/timetable/calendar.zcml src/schooltool/timetable/configure.zcml src/schooltool/timetable/daytemplates.py src/schooltool/timetable/daytemplates.zcml src/schooltool/timetable/ftesting.py src/schooltool/timetable/ftesting.zcml src/schooltool/timetable/integration.zcml src/schooltool/timetable/interfaces.py src/schooltool/timetable/schedule.py src/schooltool/timetable/schedule.zcml src/schooltool/timetable/security.zcml src/schooltool/timetable/stesting.py src/schooltool/timetable/stesting.zcml src/schooltool/timetable/timetable.py src/schooltool/timetable/timetable.zcml src/schooltool/timetable/browser/__init__.py src/schooltool/timetable/browser/app.py src/schooltool/timetable/browser/calendar.py src/schooltool/timetable/browser/configure-oldskin.zcml src/schooltool/timetable/browser/configure.zcml src/schooltool/timetable/browser/flourish.zcml src/schooltool/timetable/browser/schedule.py src/schooltool/timetable/browser/timetable.py src/schooltool/timetable/browser/ttwizard.py src/schooltool/timetable/browser/ftests/__init__.py src/schooltool/timetable/browser/ftests/composite-timetables.txt src/schooltool/timetable/browser/ftests/new_schoolyear.txt src/schooltool/timetable/browser/ftests/test_all.py src/schooltool/timetable/browser/ftests/timetable-events.txt src/schooltool/timetable/browser/ftests/timetabling.txt src/schooltool/timetable/browser/resources/error-icon.png src/schooltool/timetable/browser/resources/timetable.css src/schooltool/timetable/browser/stests/__init__.py src/schooltool/timetable/browser/stests/schedule_multi_terms.txt src/schooltool/timetable/browser/stests/test_selenium.py src/schooltool/timetable/browser/templates/calendar_yearly.pt src/schooltool/timetable/browser/templates/calendar_yearly_legend.pt src/schooltool/timetable/browser/templates/confirm_schedule_delete.pt src/schooltool/timetable/browser/templates/date_boundaries_content.pt src/schooltool/timetable/browser/templates/daytemplates_table.pt src/schooltool/timetable/browser/templates/f_confirm_delete_selected_schedule.pt src/schooltool/timetable/browser/templates/f_confirm_delete_timetable.pt src/schooltool/timetable/browser/templates/f_confirm_make_default.pt src/schooltool/timetable/browser/templates/f_daytemplates_selected_table.pt src/schooltool/timetable/browser/templates/f_daytemplates_table.pt src/schooltool/timetable/browser/templates/f_manage_timetables_overview.pt src/schooltool/timetable/browser/templates/f_multi_schedule_periods_edit.pt src/schooltool/timetable/browser/templates/f_schedule_container_view.pt src/schooltool/timetable/browser/templates/f_schedule_event_add.pt src/schooltool/timetable/browser/templates/f_schedule_event_edit.pt src/schooltool/timetable/browser/templates/f_selected_periods_add.pt src/schooltool/timetable/browser/templates/f_selected_periods_edit.pt src/schooltool/timetable/browser/templates/f_specialday_change.pt src/schooltool/timetable/browser/templates/f_specialday_related.pt src/schooltool/timetable/browser/templates/f_specialday_select.pt src/schooltool/timetable/browser/templates/f_timetable.pt src/schooltool/timetable/browser/templates/f_timetable_container.pt src/schooltool/timetable/browser/templates/f_timetable_container_related.pt src/schooltool/timetable/browser/templates/f_timetables.pt src/schooltool/timetable/browser/templates/f_ttwizard.pt src/schooltool/timetable/browser/templates/f_ttwizard_choice.pt src/schooltool/timetable/browser/templates/f_ttwizard_first.pt src/schooltool/timetable/browser/templates/f_ttwizard_form.pt src/schooltool/timetable/browser/templates/f_ttwizard_homeroom.pt src/schooltool/timetable/browser/templates/f_ttwizard_period_order1.pt src/schooltool/timetable/browser/templates/f_ttwizard_period_order2.pt src/schooltool/timetable/browser/templates/f_ttwizard_slottimes.pt src/schooltool/timetable/browser/templates/link_to_school_timetables.pt src/schooltool/timetable/browser/templates/schedule_container_view.pt src/schooltool/timetable/browser/templates/schedule_event_add.pt src/schooltool/timetable/browser/templates/schedule_event_edit.pt src/schooltool/timetable/browser/templates/schedule_exceptions_content.pt src/schooltool/timetable/browser/templates/schema_export.pt src/schooltool/timetable/browser/templates/selected_period_date_boundaries.pt src/schooltool/timetable/browser/templates/selected_periods_add.pt src/schooltool/timetable/browser/templates/selected_periods_content.pt src/schooltool/timetable/browser/templates/selected_periods_edit.pt src/schooltool/timetable/browser/templates/simpletts.pt src/schooltool/timetable/browser/templates/specialday_change.pt src/schooltool/timetable/browser/templates/specialday_select.pt src/schooltool/timetable/browser/templates/timetable.pt src/schooltool/timetable/browser/templates/timetable_container.pt src/schooltool/timetable/browser/templates/timetable_container_delete.pt src/schooltool/timetable/browser/templates/ttwizard.pt src/schooltool/timetable/browser/templates/ttwizard_choice.pt src/schooltool/timetable/browser/templates/ttwizard_form.pt src/schooltool/timetable/browser/templates/ttwizard_homeroom.pt src/schooltool/timetable/browser/templates/ttwizard_period_order1.pt src/schooltool/timetable/browser/templates/ttwizard_period_order2.pt src/schooltool/timetable/browser/templates/ttwizard_slottimes.pt src/schooltool/timetable/browser/tests/__init__.py src/schooltool/timetable/browser/tests/specialdays.txt src/schooltool/timetable/browser/tests/test_cal.py src/schooltool/timetable/browser/tests/test_calendar.py src/schooltool/timetable/browser/tests/test_timetable.py src/schooltool/timetable/browser/tests/test_ttwizard.py src/schooltool/timetable/tests/__init__.py src/schooltool/timetable/tests/test_calendar.py src/schooltool/timetable/tests/test_schedule.py src/schooltool/timetable/tests/test_timetable.py src/schooltool/traverser/README.txt src/schooltool/traverser/__init__.py src/schooltool/traverser/browser.py src/schooltool/traverser/configure.zcml src/schooltool/traverser/interfaces.py src/schooltool/traverser/meta.zcml src/schooltool/traverser/metaconfigure.py src/schooltool/traverser/metadirectives.py src/schooltool/traverser/tests.py src/schooltool/traverser/traverser.py src/schooltool/utility/__init__.py src/schooltool/utility/utility.py src/schooltool/utility/tests/__init__.py src/schooltool/utility/tests/test_utility.py src/schooltool/widget/__init__.py src/schooltool/widget/password.pyschooltool-2.6.3/src/schooltool.egg-info/top_level.txt0000644000175000017500000000001312322062006024222 0ustar menesismenesis00000000000000schooltool schooltool-2.6.3/src/schooltool.egg-info/entry_points.txt0000644000175000017500000000123012322062006024770 0ustar menesismenesis00000000000000 [paste.app_factory] main = schooltool.paste.main:schooltool_app_factory task_results = schooltool.paste.main:task_result_app_factory [console_scripts] start-schooltool-instance = schooltool.paste.run:main make-schooltool-instance = schooltool.paste.instance:make_schooltool_instance schooltool-server = schooltool.app.main:main [paste.paster_create_template] schooltool_deploy = schooltool.paste.templates:SchoolToolDeploy [schooltool.instance_type] old = schooltool.standard schooltool = schooltool.skin.flourish.instance [schooltool.tasks] schooltool.export.importer = schooltool.export.importer schooltool-2.6.3/src/schooltool.egg-info/PKG-INFO0000644000175000017500000000230412322062006022572 0ustar menesismenesis00000000000000Metadata-Version: 1.1 Name: schooltool Version: 2.6.3 Summary: A common information systems platform for school administration. Home-page: http://www.schooltool.org Author: SchoolTool Developers Author-email: schooltool-developers@lists.launchpad.net License: GPL Description: SchoolTool is an open source school management information system. It is a web application, usable with an ordinary browser. Any modern web browser is suitable for the web application interface. The interface degrades gracefully, so a browser that does not support CSS or Javascript will be usable, although perhaps not very nice or convenient. Platform: any Classifier: Development Status :: 5 - Production/Stable Classifier: Environment :: Web Environment Classifier: Intended Audience :: End Users/Desktop Classifier: License :: OSI Approved :: GNU General Public License (GPL) Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.6 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Zope Classifier: Topic :: Education schooltool-2.6.3/src/schooltool.egg-info/requires.txt0000644000175000017500000000266412322062006024106 0ustar menesismenesis00000000000000celery>=2.5 redis bottle PasteDeploy PasteScript Pillow pytz reportlab setuptools xlrd xlwt z3c.autoinclude z3c.form>=2.0 z3c.formui z3c.macro z3c.rml z3c.template zc.catalog zc.datetimewidget zc.resourcelibrary zc.table ZODB3 zope.annotation zope.authentication zope.app.applicationcontrol zope.app.appsetup zope.app.basicskin zope.app.broken zope.app.component zope.app.container zope.app.dependable zope.app.error zope.app.exception zope.app.form zope.app.generations>=3.5 zope.app.http zope.app.locales zope.app.principalannotation zope.app.publication zope.app.schema zope.app.security zope.app.wsgi zope.browser zope.browsermenu zope.browserpage>=3.10.1 zope.cachedescriptors zope.catalog zope.component>=3.8 zope.configuration zope.container>=3.7.2 zope.contentprovider zope.dublincore>=3.7 zope.event zope.file zope.filerepresentation zope.formlib>=4.0 zope.html zope.i18n>=3.5 zope.i18nmessageid zope.interface zope.intid zope.keyreference zope.lifecycleevent zope.location zope.login zope.mimetype zope.pagetemplate>=3.5 zope.password zope.proxy zope.publisher>=3.6 zope.schema zope.security zope.securitypolicy zope.server zope.session zope.site zope.size zope.tales zope.testing zope.testbrowser zope.app.testing zope.traversing>=3.13 zope.ucol zope.viewlet [test] lxml zope.app.testing zope.copypastemove zope.exceptions zope.principalregistry zope.testbrowser z3c.form>=2.6 schooltool.devtools>=0.7.1 selenium [docs] Sphinx z3c.recipe.sphinxdocschooltool-2.6.3/src/schooltool.egg-info/dependency_links.txt0000644000175000017500000000000112322062006025544 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool.egg-info/namespace_packages.txt0000644000175000017500000000001312322062006026023 0ustar menesismenesis00000000000000schooltool schooltool-2.6.3/src/schooltool.egg-info/not-zip-safe0000644000175000017500000000000112270520476023740 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/0000755000175000017500000000000012322062007020005 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/standard/0000755000175000017500000000000012322062007021605 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/standard/__init__.py0000644000175000017500000000000212270520475023720 0ustar menesismenesis00000000000000# schooltool-2.6.3/src/schooltool/standard/ftesting.zcml0000644000175000017500000000015512270520475024332 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/standard/skin.py0000644000175000017500000000165212270520475023141 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) Standard Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ SchoolTool Standard skin. """ from schooltool.skin.skin import ISchoolToolSkin class ISchoolToolStandardSkin(ISchoolToolSkin): """The Standard SchoolTool skin""" schooltool-2.6.3/src/schooltool/standard/configure.zcml0000644000175000017500000000213712270520475024472 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/standard/ftesting.py0000644000175000017500000000206512270520475024017 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2005 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # import os from schooltool.testing.functional import ZCMLLayer dir = os.path.abspath(os.path.dirname(__file__)) filename = os.path.join(dir, 'ftesting.zcml') standard_functional_layer = ZCMLLayer(filename, __name__, 'standard_functional_layer') schooltool-2.6.3/src/schooltool/standard/README.txt0000644000175000017500000000037012270520475023315 0ustar menesismenesis00000000000000Standard SchoolTool ------------------- This package contains the configuration and tests for a standard schooltool configuration. It's main purpose is to gather the dependencies and define a zcml configuration. Literally it defines the server. schooltool-2.6.3/src/schooltool/standard/ftests/0000755000175000017500000000000012322062007023115 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/standard/ftests/__init__.py0000644000175000017500000000000012270520475025226 0ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/standard/ftests/standard.txt0000644000175000017500000000232712270520475025474 0ustar menesismenesis00000000000000The SchoolTool Application ========================== A manager logs in >>> from zope.testbrowser.testing import Browser >>> manager = Browser() >>> manager.addHeader('Authorization', 'Basic manager:schooltool') >>> manager.handleErrors = False >>> manager.open('http://localhost/') Create a Basic Person >>> manager.getLink('Manage').click() >>> manager.getLink('Persons').click() >>> manager.getLink('New Person').click() >>> manager.getControl('First name').value = "John" >>> manager.getControl('Last name').value = "Petterson" >>> manager.getControl('Gender').value = ['male'] >>> manager.getControl('Birth date').value = '1980-01-01' >>> manager.getControl('Username').value = "john" >>> manager.getControl('Password').value = "pwd" >>> manager.getControl('Confirm').value = "pwd" >>> manager.getControl('Add').click() Go to the person list: >>> manager.getLink('Manage').click() >>> manager.getLink('Persons').click() Both of our users are in there: >>> manager.getLink('John') >>> manager.getLink('Default', index=1) schooltool-2.6.3/src/schooltool/standard/ftests/test_all.py0000644000175000017500000000212012270520475025303 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2005 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ Functional tests for schooltool.standard """ import unittest from schooltool.testing.functional import collect_ftests from schooltool.standard.ftesting import standard_functional_layer def test_suite(): return collect_ftests(layer=standard_functional_layer) if __name__ == '__main__': unittest.main(defaultTest='test_suite') schooltool-2.6.3/src/schooltool/widget/0000755000175000017500000000000012322062007021270 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/widget/password.py0000644000175000017500000000450612270520475023523 0ustar menesismenesis00000000000000from zope.app.form.browser import PasswordWidget from zope.app.form.browser.widget import renderElement from zope.app.form.interfaces import ConversionError from zope.i18n import translate from schooltool.common import SchoolToolMessage as _ class PasswordConfirmationWidget(PasswordWidget): """Password Widget that uses two fields to confirm user input. """ default = '' type = 'password' displayWidth = 15 def __call__(self): password_tag = renderElement( self.tag, type=self.type, name=self.name, id=self.name, value=self.default, cssClass=self.cssClass, style=self.style, size=self.displayWidth, extra=self.extra) confirm_name = self.name + '.confirm' confirm_tag = renderElement( self.tag, type=self.type, name=confirm_name, id=confirm_name, value=self.default, cssClass=self.cssClass, style=self.style, size=self.displayWidth, extra=self.extra) confirm_label = translate(_("Confirm password"), context=self.request) return u"""
%s

%s
""" % ( password_tag, confirm_name, confirm_label, confirm_tag) def _toFieldValue(self, input): """Check whether the confirmation field value is identical to the password value. """ formdata = self.request.form if input != formdata[self.name + '.confirm']: raise ConversionError(_(u"Supplied passwords are not identical"), '') return super(PasswordConfirmationWidget, self)._toFieldValue(input) def hasInput(self): """Check whether the field is represented in the form. """ return self.name + ".confirm" in self.request.form or \ super(PasswordConfirmationWidget, self).hasInput() def hidden(self): raise NotImplementedError( 'Cannot get a hidden tag for a password field') schooltool-2.6.3/src/schooltool/widget/__init__.py0000644000175000017500000000000212270520475023403 0ustar menesismenesis00000000000000# schooltool-2.6.3/src/schooltool/export/0000755000175000017500000000000012322062007021326 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/export/stesting.py0000644000175000017500000000362712270520475023562 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2012 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ Selenium Functional Testing Utilities for export. """ import os from schooltool.testing.selenium import SeleniumLayer dir = os.path.abspath(os.path.dirname(__file__)) filename = os.path.join(dir, 'stesting.zcml') export_selenium_layer = SeleniumLayer(filename, __name__, 'export_selenium_layer') def registerSeleniumSetup(): try: import selenium except ImportError: return from schooltool.testing import registry import schooltool.testing.selenium def importXLS(browser, filename): browser.query.link('School').click() browser.query.link('Import XLS').click() if filename: import pkg_resources elem = browser.query.name('xlsfile') browser.query.name('xlsfile').type(filename) page = browser.query.tag('html') browser.query.button('Submit').click() browser.wait(lambda: page.expired) registry.register('SeleniumHelpers', lambda: schooltool.testing.selenium.registerBrowserUI( 'import_xls', importXLS)) registerSeleniumSetup() del registerSeleniumSetup schooltool-2.6.3/src/schooltool/export/__init__.py0000644000175000017500000000002012270520475023441 0ustar menesismenesis00000000000000import stesting schooltool-2.6.3/src/schooltool/export/ftesting.zcml0000644000175000017500000000116112270520475024051 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/export/resources/0000755000175000017500000000000012322062007023340 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/export/resources/importer.js0000644000175000017500000001220712270520475025553 0ustar menesismenesis00000000000000 ST.export = $.extend(ST.export, {importer: function() { /* Private */ function poll_progress(progress_id, task_id) { var url = ST.base_url+'schooltool.task_results/'+task_id; var request = $.ajax({ type: "GET", url: url, }).success(function(result, textStatus, jqXHR){ progress_update_status(progress_id, task_id, result); }); } function wait_to_poll(progress_id, task_id) { setTimeout(function(){ poll_progress(progress_id, task_id); }, 1); } function status_parts(progress_id) { return { pending: $(ST.dialogs.jquery_id(progress_id+'-pending')), committing: $(ST.dialogs.jquery_id(progress_id+'-committing')), inprogress: $(ST.dialogs.jquery_id(progress_id+'-in-progress')), succeeded: $(ST.dialogs.jquery_id(progress_id+'-succeeded')), failed: $(ST.dialogs.jquery_id(progress_id+'-failed')), }; } function on_progress_pending(progress_id, task_id, progress) { var parts = status_parts(progress_id); parts.committing.hide(); parts.inprogress.hide(); parts.succeeded.hide(); parts.failed.hide(); parts.pending.show(); wait_to_poll(progress_id, task_id); } function update_progress_table(progress_id, part, progress) { var tbody = $(part).find('table tbody'); for (var counter in progress.info) { var counter_id = progress_id+'-counter-'+counter; var row = tbody.find('tr[name="'+counter+'"]'); if (row.length == 0) { part.find('table tbody:last').append($( '
')); row = tbody.find('tr[name="'+counter+'"]'); } var counter_value = progress.info[counter].progress * 100; row.find('td[name="title"]').html(progress.info[counter].title); row.find('div[name="progress"]').progressbar({value:counter_value}); if (progress.info[counter].active) { row.show(); } else { row.hide(); } } } function on_progress_update(progress_id, task_id, progress) { var parts = status_parts(progress_id); parts.pending.hide(); parts.committing.hide(); parts.succeeded.hide(); parts.failed.hide(); update_progress_table(progress_id, parts.inprogress, progress); parts.inprogress.show(); wait_to_poll(progress_id, task_id); } function on_progress_committing(progress_id, task_id, progress) { var parts = status_parts(progress_id); parts.pending.hide(); parts.succeeded.hide(); parts.failed.hide(); update_progress_table(progress_id, parts.inprogress, progress); parts.inprogress.show(); parts.committing.show(); wait_to_poll(progress_id, task_id); } function on_progress_succeeded(progress_id, task_id, progress) { var parts = status_parts(progress_id); parts.pending.hide(); parts.inprogress.hide('slow'); parts.committing.hide(); parts.failed.hide(); if (progress.info.overall.errors.length) { var status = parts.succeeded.find('div[class="status"]'); var error_templ = parts.succeeded.find('div[name="error-template"]'); for (n in progress.info.overall.errors) { var error = progress.info.overall.errors[n]; var new_error = $(error_templ.html()); new_error.find('div[name="error"]').html(error); parts.succeeded.find('div[class="status"]:last').append(new_error); new_error.show(); } status.show(); } parts.succeeded.show(); /* TODO: list xls errors on succesful import failure :) */ } function on_progress_failed(progress_id, task_id, progress) { var parts = status_parts(progress_id); parts.failed.find('div[name="traceback"]').html(progress.traceback); parts.failed.find('div[name="info"]').html(progress.info); parts.pending.hide(); parts.inprogress.hide('slow'); parts.committing.hide(); parts.succeeded.hide(); parts.failed.show(); } function progress_update_status(progress_id, task_id, progress) { var status = progress.status; if (status.pending) { on_progress_pending(progress_id, task_id, progress); } else if (status.committing) { on_progress_committing(progress_id, task_id, progress); } else if (status.in_progress) { on_progress_update(progress_id, task_id, progress); } else if (status.succeeded) { on_progress_succeeded(progress_id, task_id, progress); } else if (status.failed) { on_progress_failed(progress_id, task_id, progress); } } /* Public */ return { show_progress: function(progress_id, task_id) { poll_progress(progress_id, task_id); }, } }() } ); schooltool-2.6.3/src/schooltool/export/flourish.zcml0000644000175000017500000001010012270520475024052 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/export/stesting.zcml0000644000175000017500000000057212270520475024073 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/export/app.py0000644000175000017500000000170312270520475022473 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2011 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ SchoolTool exporter generic views. """ from schooltool.export.export import RequestXLSReportDialog class FlourishRequestXLSExportView(RequestXLSReportDialog): report_builder = 'export.xls' schooltool-2.6.3/src/schooltool/export/configure.zcml0000644000175000017500000000537512270520475024222 0ustar menesismenesis00000000000000 schooltool-2.6.3/src/schooltool/export/sample_data_small.xls0000644000175000017500000130000012270520475025524 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ ½ºþÿÿÿ€‚ƒ„ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~…Root Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8  @"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD¦@à¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…îÖ School Years… nÙTerms…áSchool Timetables….÷ Resources…dPersons…8Contact Persons…ýRContact Relationships…àÀCourses…^ÆSections…ÇÓSectionEnrollment…<9SectionTimetables…-WGroupsŒrrÁÁTë²ðªðp0     3 ð¿ À@@ñ  ÷ü È6©IDTitleStartEnd 2011-2012 2010-2011 SchoolYear 2010-fall 2010 Fall 2011-fall 2011 Fall 2011-spring 2011 Spring 2012-spring 2012 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School Year Period days school_days Time slotsDaysPeriodsDay 1ABCDEFhomeroomlessonDay 2Day 3Day 4Day 5Day 6 Time schedule 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Type projector00Resource Projector 00 projector01 Projector 01 projector02 Projector 02 projector03 Projector 03 projector04 Projector 04 projector05 Projector 05 projector06 Projector 06 projector07 Projector 07 projector08 Projector 08 projector09 Projector 09 projector10 Projector 10 projector11 Projector 11 projector12 Projector 12 projector13 Projector 13 projector14 Projector 14 projector15 Projector 15 projector16 Projector 16 projector17 Projector 17 projector18 Projector 18 projector19 Projector 19 projector20 Projector 20 projector21 Projector 21 projector22 Projector 22 projector23 Projector 23room00LocationRoom 00room01Room 01room02Room 02room03Room 03room04Room 04room05Room 05room06Room 06room07Room 07room08Room 08room09Room 09room10Room 10room11Room 11room12Room 12room13Room 13room14Room 14room15Room 15room16Room 16room17Room 17room18Room 18room19Room 19room20Room 20room21Room 21room22Room 22room23Room 23room24Room 24room25Room 25room26Room 26room27Room 27room28Room 28room29Room 29room30Room 30room31Room 31room32Room 32room33Room 33room34Room 34room35Room 35room36Room 36room37Room 37room38Room 38room39Room 39room40Room 40room41Room 41room42Room 42room43Room 43room44Room 44room45Room 45room46Room 46room47Room 47room48Room 48room49Room 49room50Room 50room51Room 51room52Room 52room53Room 53room54Room 54room55Room 55room56Room 56room57Room 57room58Room 58room59Room 59room60Room 60room61Room 61room62Room 62room63Room 63 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth CitizenshipmanagerDefaultManager student000FlorianHartfemale1WhiteEnglish ArlingtonUS student001Peg Jorgensenmale2 student002PiotrCooper4 student003KimmyEllis7 student004TeddyLynch12 student005NicolasMarshall13 student006SophieDixon14 student007KatieBrown16 student008DylanRhodes24 student009OliviaLevi25 student010 ChristopherRichards28 student011HannahAndersen30 student012WilmaVaughn32 student013ErinMaes34 student014EmilyO'Connor36 student015 KrzysztofBishop37 student016IsabelBurke40 student017FrederikHorton44 student018CamillaReid46 student019FabianJackson48 student020LuO'Reilly49 student021TobiasBeck53 student022SammyLeclercq56 student023Alexis57 student024JimMiles58 student025MargaretBowman59 student026Ivan Hernandez62 student027MickDubois63 student028JoseMorales68 student029NickyMorrison69 student030 MaximilianKelly70 student031JoeyReed71 student032SteveFerguson72 student033DanielRogers76 student034 Alejandro77 student035Nick81 student036Medina82 student037CristianFleming84 student038Edwards88 student039DiegoShaw90 student040Parker92 student041Daan94 student042HerbCarter95 student043Scotty Patterson96 student044Geoffery97 student045MaggieJennings100 student046MaxElliott102 student047Dick103 student048Emil Mortensen106 student049Gomez108 student050JoRenard109 student051JeanetteHarper111 student052EleanorWest116 student053Klara117 student054SergioSanchez119 student055 Christian Alexander120 student056Spencer121 student057123 student058JesseGarza124 student059CarlaMueller125 student060Edward126 student061Joe129 student062JanetFletcher131 student063TimWillis132 student064 Margarita134 student065SemCastro135 student066NathanPowell137 student067HarryCampbell141 student068AshleySullivan143 student069 Christiansen145 student070 AgnieszkaHamilton146 student071TheodoreGibson147 student072Dumont150 student073Bill155 student074CharlesFowler158 student075NicholasMason159 student076HugoCraig160 student077Pearson161 student078AndrzejGraham162 student079163 student080JaceCastillo164 student081PetePhillips165 student082DanielaSchulz167 student083DaveKing170 student084Amy172 student085NateSimon175 student086Trevor177 student087WillyWeber185 student088CarolinaO'Brien186 student089Burton194 student090AlvaroReynolds195 student091NereaRyan197 student092Claudia199 student093Megan Montgomery202 student094LeaBryant206 student095208 student096Marcin209 student097SamPrice210 student098Ainhoa212 student099Vanessa213 student100IrisHawkins214 student101Carroll215 student102LeonieLee216 student103Garrett217 student104IsabelleFox219 student105MichaelHill220 student106LizzyMurray224 student107RossTurner225 student108Rachel227 student109AndyAlvarez229 student110Martin230 student111Thompson231 student112SaraColeman235 student113Lowe239 student114LaraGilbert244 student115LukasCruz247 student116Edwyn249 student117PedroHolland250 student118Ramirez253 student119BenjaminWilson254 student120Hall255 student121Lane256 student122JaneHowell260 student123 Schneider262 student124NigelDiaz263 student125RuthNeal267 student126Hiram O'Sullivan268 student127Carr270 student128Nelson271 student129TylerOrtiz272 student130SydneyGregory273 student131274 student132MikkelFischer275 student133Foster277 student134TaraBates278 student135JozefJohnson279 student136FemkeDaniels280 student137Charlie Rasmussen288 student138Black290 student139LinneaHansen291 student140IsaacOwens292 student141Day293 student142Laurent296 student143Hayes298 student144Jessica299 student145Long304 student146Hunter305 student147Paula Christensen307 student148LaurenRamos310 student149SamanthaGarcia316 student150319 student151LeonFields325 student152326 student153327 student154Jean328 student155TomWatts329 student156MartaGeorge330 student157 O'Doherty331 student158332 student159LotteBaker334 student160KayleighMercado337 student161338 student162Mario339 student163JaclynEvans340 student164AlbertSutton341 student165Rich342 student1663< 43 student167Joshua349 student168351 student169NiklasLarsen352 student170ScottieJanssens353 student171 De los Santos354 student172Jeffery355 student173SharonPeterson356 student174GillReyes357 student175Cathy Williamson359 student176Mathias360 student177Anderson362 student178Butler364 student179Drew369 student180ElinBecker370 student181AnnieBrewer373 student182Ricky374 student183Boyd377 student184379 student185IdaTorres380 student186ManuelSmith386 student187James387 student188RickWillems388 student189389 student190Patricia391 student191Dawson392 student192JackHolt394 student193Cian398 student194Thomas399 student195KayleeSchmidt400 student196PipHardy403 student197MathildeTucker405 student198408 student199BettySantos412 student200PhilipJimenez413 student201414 student202Liam416 student203Isak418 student204RollaPedersen419 student205421 student206 KatarzynaVasquez422 student207AdamMckinney423 student208Herrera426 student209OllieJenkins428 student210Wood429 student211Morgan432 student212SeanFlores433 student213Hanson437 student214Lopez438 student215SusanBennett439 student216LeahMay440 student217Doyle443 student218William444 student219Georgina451 student220Welch454 student221SylviaWeaver459 student222460 student223BengieCrawford463 student224EdDunn464 student225DuncanLawson466 student226468 student227472 student228475 student229ElenaMeyer477 student230WillAndrews478 student231479 student232Franklin480 student233486 student234AlvaRice487 student235Stewart488 student236489 student237Ana493 student238499 student239Mendez500 student240Mcdaniel501 student241503 student242Byrne506 student243Martinez511 student244MajaCurry512 student245MariaHoward515 student246Jan519 student247ErikWalsh520 student248JuanaMoreno522 student249Dean524 student250KarinMatthews526 student251528 student252Gonzales530 student253531 student254Chapman532 student255Tommy535 student256536 student257Bell537 student258Harvey540 student259Barnett542 student260Thelma544 student261Sanne549 student262551 student263AlRiley553 student264554 student265Romero555 student266Liza Gutierrez556 student267Fisher558 student268Russell560 student269 De los Reyes563 student270AnnSilva567 student271568 student272 MalgorzataFord570 student273Juan576 student274Hicks580 student275Little581 student276582 student277Kim592 student278AnnaFreeman595 student279596 student280Frazier597 student281599 student282Johansen601 student283PhilippaDouglas604 student284Ellie605 student285Mccoy608 student286610 student287Carlson616 student288 Washington617 student289Byrd620 student290622 student291624 student292625 student293TomaszPoulsen626 student294Nguyen628 student295630 student296Alice Carpenter632 student297PaulO'Neill633 student298KimberlyCole634 student299640 student300Payne644 student301645 student302Austin646 student303Jamie647 student304Olson648 student305653 student306655 student307659 student308Dorothy660 student309SamuelKennedy662 student310LucyHolmes666 student311Hunt667 student312668 student313671 student314ShermanPetersen674 student315676 student316677 student317Mertens680 student318JosephGonzalez681 student319Dupont682 student320Sally683 student321RobNichols685 student322686 student323689 student324 Charlotte690 student325693 student326Knudsen694 student327Jorge695 student328Ada696 student329699 student330Caitlin700 student331ZoePalmer702 student332Stevens704 student333MartyFuller705 student334Krystyna706 student335Lucas708 student336Parks709 student337Hoffman711 student338715 student339716 student340720 student341723 student342BenjyGardner724 student343 Gallagher725 student344728 student345Laura729 student346735 student347Viktor736 student348737 student349738 student350Bush740 student351742 student352743 student353Rose748 student354Lisa753 student355754 student356755 student357ChuckOlsen757 student358Norris762 student359763 student360Wagner764 student361Anton766 student362Javier767 student363768 student364769 student365DavidMcCarthy770 student366Madsen772 student367 CatherineWallace774 student368Quinn778 student369Julian Richardson779 student370781 student371Lucille783 student372784 student373785 student374PawelBradley789 student375IzzyPierce790 student376Gordon793 student377ShermieWalker798 student378Wright802 student379Richard803 student380Claes804 student381806 student382807 student383809 student384812 student385815 student386Gillian816 student387ElzbietaCohen817 student388JacobSimmons818 student389822 student390823 student391827 student392AndreaSantiago833 student393Louise839 student394Matthew842 student395847 student396850 student397854 student398856 student399857 student400858 student401 Rodriguez859 student402AoifeJordan861 student403Bram869 student404872 student405873 student406875 student407878 student408LenaLim879 student409884 student410Phil887 student411890 student412Kay892 student413 KatharinaGrant894 student414896 student415Anthony899 student416Greene900 student417902 student418905 student419Moore906 student420907 student421909 student422912 student423TonyHopkins915 student424916 student425918 student426920 student427JuliaPeters921 student428922 student429Andrew923 student430928 student431930 student432Harris933 student433935 student434Wouters937 student435Barker939 student436947 student437Rosa956 student438SueWebb957 student439Shelton958 student440Arnold961 student441Ray964 student442Madison965 student443Williams966 student444967 student445968 student446Matt972 student447974 student448976 student449977 student450978 student451979 student452980 student453ConorThomsen981 student454Watson982 student455AmberSimpson983 student456985 student457Jill987 student458990 student459991 student460StephenHughes992 student461Sanders994 student462995 student463998 student464999 student465Curtis1000 teacher000 teacher001Sophia teacher002 teacher003Hank teacher004 teacher005Address line 1Address line 2CityStateCountry Postal code Home phone Work phone Mobile phoneEm< ail contact0002334 University DriveVA60607 312-705-4271 contact001Karen2755 Heavner Court11743 516-286-4030 contact003711 Broadway Avenue37403 423-762-1421 contact006German2490 Maryland Avenue34640 727-582-6820ggates@example.com contact011 Christine2788 Meadowbrook Mall Road90232 310-838-6693 contact0122281 Hall Place75247 903-689-6230 contact013Jesus2682 Reppert Coal Road48045 586-948-6102jdelaney@example.com contact0152560 Brentwood Drive78758kwhite@example.com contact023Deborah465 Emerson Road71302 contact0244059 Dogwood Lane85711 520-571-2188 contact027Randall3244 Hazelwood Avenue50322 515-441-9415 contact029John3727 Boring Lane94108 contact031 Gwendolyn107 Penn Street63066gesparza@example.com contact033Eddie144 Mount Street49707 contact035Jimmy 2117 D Street48302 586-481-9016 contact036Seymour7 White Pine Lane22408 540-660-6740ssmith@example.com contact039Scott1126 Nash Street48075 313-262-6635sperez@example.com contact043Wayne1680 Hamill Avenue92103 858-369-4877wespinoza@example.com contact0453638 Oakridge Farm Lane53095 contact047Donna2088 Hamilton Drive21601 410-200-0826 contact0484922 August Lane71301 318-452-1495klange@example.com contact052Norman117 Jones Avenue27101 336-770-0125 contact0552844 Waterview Lane87501jwolfe@example.com contact056Eric4901 Blane Street63141 contact057474 Blackwell Street99503 907-394-9774 contact058Chris465 Wexford Way29115 803-268-1642 contact061 Elisabeth3467 Riverwood Drive96130 530-375-3803ehathaway@example.com contact062Major2009 Wetzel Lane49503 231-366-6953mmendez@example.com contact067Minnie2346 Sunny Glen Lane44131 contact0683363 Gateway Avenue93501 contact069Lesley3709 Whitman Court06103 203-632-1984 contact070 3739 Oak Lane64664 contact071Mary3779 Sunny Day Drive92632 714-871-2059mcoulombe@example.com contact0751981 Khale Street29407 843-559-5619jsheets@example.com contact076Desiree2081 Viking Drive45710 contact0804970 Huntz Lane01581 978-618-6163 contact081Rebecca942 Kyle Street68801 308-440-4377 contact0834875 Bridge Avenue70532rentwistle@example.com contact087Lorena4528 Irish Lane53718 608-712-2388 contact0891353 Pennsylvania Avenue08854ewaugh@example.com contact0914598 Melody Lane23233 804-360-7542wgarza@example.com contact093Janice2082 Andy Street57702 605-381-5896 contact094Pearl1151 Emerson Road 318-719-9989pterry@example.com contact095Julie1771 Myra Street02852 contact096Carolyn4758 Mill Street29672 864-264-2987cdewitt@example.com contact099476 Star Trek Drive32548 contact101Darcy937 Laurel Lee55121 651-994-3258dsmith@example.com contact102Grady2973 Turkey Pen Lane36104 334-570-8266 contact105Kasper3507 Sycamore Lake Road53202 920-483-1478jkasper@example.com contact1071485 Wyatt Street33401 561-414-7805 contact108Madlyn661 Irish Lane54650mbrown@example.com contact110BrianMilburn1226 Rocky Road19103 215-669-1799bmilburn@example.com contact115Lilly McWilliams1469 Libby Street90717lmcwilliams@example.com contact116Gray3708 Center Street97801 541-966-7352rgray@example.com contact118Cannon4197 Taylor Street10641 914-606-7634wcannon@example.com contact119Deana2966 Cody Ridge Road73942 580-520-2033 contact120Valarie4159 Catherine Drive58102 701-234-7591vthompson@example.com contact122BrettBuchanan2157 Garfield Road61614 309-693-0317 contact123MathewPacheco2777 Columbia Mine Road25701 304-523-5624 contact124Gagne4699 Lake Floyd Circle19714 302-224-2801jgagne@example.com contact125Mamie2751 Aspen Court02132 contact128Hargrave3951 Dogwood Road85016 contact130Cain4944 Walt Nuzum Farm Road14048 585-403-8150ccain@example.com contact131Robert1389 Lynn Ogden Lane77662 contact133McCoy2779 Fire Access Road27406 336-816-2897 contact134Teresa1170 Austin Avenue31501 912-287-4657tsutton@example.com contact136Zola Hunsinger2219 Prudence Street48335zhunsinger@example.com contact140Yuen2130 Conference Center Way18503 570-972-2175syuen@example.com contact142LindaCalkins4593 Ashmor Drive56482 218-325-2497 contact144JacqueTaylor4418 Post Avenue55769 218-885-0759 contact145CarlosKeel399 Wetzel Lane49649 231-263-5904ckeel@example.com contact146Dona4247 Juniper Drive48858 989-934-4048 contact149 Katherine2863 Whaley Lane53225 262-416-1447 contact154Cortez4544 Duke Lane 732-699-4290 contact157PatrickMifflin4459 Mesa Drive89032 702-371-7581pmifflin@example.com contact158EdithRitter4929 Trainer Avenue61265 309-524-0848 contact159BarbaraSmart2158 Oak Avenue60173 contact160Alcaraz3694 Wright Court35205aalcaraz@example.com contact161Wheeler1548 Woodlawn Drive53085 414-596-3034awheeler@example.com contact162Judith4813 Metz Lane01608 857-229-7179jrosa@example.com contact163Coldwell53 Coolidge Street59101 406-896-4193dcoldwell@example.com contact164Virginia4470 Circle Drive77020 832-554-4957vsanchez@example.com contact1664141 Abner Road54401jreyes@example.com contact1694765 Colonial Drive77803 979-587-3964tgarza@example.com contact171AlfredMcCollum1706 Coal Street16879 814-345-8176 contact174Rosemary3738 Mudlick Road98902 509-494-7990rthompson@example.com contact1761022 Collins Street33610 813-997-8777 contact184 FlorenciaJones1594 Mesa Drive89119 702-406-6778fjones@example.com contact185JasonKopec38 Single Street01803 781-601-0490jkopec@example.com contact193RudyYeh4438 Liberty Avenue91505 714-488-8115 contact194AdrianaFullmer243 Little Street44311 330-595-2465afullmer@example.com contact196Hastings3268 Foley Street33128 contact198Kendall968 West Virginia Avenue12205 518-880-9285jkendall@example.com contact201Minh4817 George Avenue36602 contact205Dupree2235 High Meadow Lane18823 570-434-5047jdupree@example.com contact207PeterHoughton2563 Bingamon Branch Road60605 847-224-8870 contact208BradyMott104 Still Street43615 419-710-4273 contact209LuisPerham1281 Elk Street92660 949-759-9951 contact211Hogan3788 Colonial Drive77024 979-667-9932whogan@example.com contact212Vogler274 Stoneybrook Road32810 321-517-3756 contact213Carol4002 Parkview Drive91766 contact214Leroy4210 Baker Avenue75244 817-819-5791ljenkins@example.com contact215Abate2704 Spring Avenue 267-659-1104kabate@example.com contact216 AlbertinaMcDowell245 Highland Drive54911 contact218Judy3906 Hillview Drive30523 706-947-0565janderson@example.com contact219RogerColin2858 Cessna Drive46804 260-434-5123rcolin@example.com contact2234261 Jewell Road55415 612-743-3808 contact224Lehto1829 Mapleview Drive38128 731-303-5860 contact226Gertrude3522 Wyatt Street33436 561-502-3009 contact228SherryCampisi4761 Masonic Hill Road72212 contact229Lewis757 Richison Drive59102 406-294-0573jlewis@example.com contact230HerbertClark575 Dawson Drive72105 501-815-5306 contact234WadeSchafer4010 Ersel Street75074 214-344-5390wschafer@example.com contact238DinaBarber4214 Berkley Str< eet 484-886-3673 contact243831 Chandler Drive64832 417-642-1598jwilliams@example.com contact246DonaldBrock4444 Friendship Lane94607dbrock@example.com contact248Alan Robertson1922 Sharon Lane63011 contact249Nance2621 Neville Street47546 812-630-4839snance@example.com contact252TameraMurphy3100 Pringle Drive 312-421-7714tmurphy@example.com contact253Dix1256 Rubaiyat Road contact254DannySaldana1065 Spirit Drive32801 386-845-4223 contact2554317 Austin Avenue31405 912-355-7535gsmith@example.com contact259 Wentworth707 Norma Avenue77006 936-893-4297lwentworth@example.com contact2613013 Red Hawk Road56262 320-793-0457tcrawford@example.com contact262Hogg3025 Walnut Street39301 601-581-5695chogg@example.com contact2663709 Gambler Lane77060 contact267EstherProsser4130 Clarksburg Park Road86511 928-309-7528 contact2691998 Raver Croft Drive37601 423-647-4601rthomas@example.com contact270LillianVanover3394 Pearl Street95814 916-316-4773lvanover@example.com contact271Lindsey2972 Kuhl Avenue30518 678-714-8405hlindsey@example.com contact272Keaton4964 Clover Drive88083 719-349-9740 contact2734246 Thrash Trail75601 903-555-3024psutton@example.com contact274Edna3421 Bird Spring Lane77539 281-534-9883 contact276PhyllisHeslin3420 Pratt Avenue97205pheslin@example.com contact277Pierre4340 Ingram Road27409 336-665-7190 contact278Aaron995 Pritchard Court56183 contact279 Morrissette3143 Bailey Drive52627 319-372-8323amorrissette@example.com contact287CrystalSpann22 Orphan Road14775 716-252-6454 contact289CindyBritton1446 Terra Cotta Street56441 218-678-9794cbritton@example.com contact290Adrian Hutcherson4589 Kincheloe Road 503-510-7534ahutcherson@example.com contact291Kelley695 Tuna Street contact2923625 Freed Drive95202 209-766-1379bharris@example.com contact295Maestas3136 Traction Street29607 864-470-7117jmaestas@example.com contact297Steele3670 Medical Center Drive34228 941-383-2681 contact298Cecil3039 Elm Drive10007 646-441-7906 contact303Dyer3835 Ventura Drive93901 831-308-7301ddyer@example.com contact304Oscar Sylvester2547 Geneva Street10016 917-451-3821osylvester@example.com contact306JoanGuerin182 Scheuvront Drive80211jguerin@example.com contact309Young4618 Millbrook Road60106 contact315VeldaKellogg3505 Owen Lanevkellogg@example.com contact318Elia1792 Davisson Street47904 765-771-9187 contact324Caylor1184 Nutters Barn Lane50525 515-602-4491 contact325Dennison3152 Russell Street02141 978-953-6815 contact3261734 Fleming Street36040kkelley@example.com contact327MarkCoe798 Timber Oak Drive79072 contact3284741 Jody Road19108 610-615-0470 contact3293418 Upton Avenue04101 contact3304170 Petunia Way35209 205-816-3690 contact331Heath1253 Overlook Drive46017 765-378-6993 contact333JessieJacobs2614 White Pine Lane22655 540-683-2632jjacobs@example.com contact336ErmaLogsdon3244 Eastland Avenue39480 601-375-3383elogsdon@example.com contact337CandaceHume3063 Tennessee Avenue48226 248-260-9879chume@example.com contact338LarryMetzger2806 Harley Vincent Drive44044 440-748-8438 contact3393475 Parkview Drive77055 713-973-8846jjennings@example.com contact340Naughton3984 Burke Street 781-308-8422 contact341Burks3868 Bingamon Branch Road10917 845-928-2478mburks@example.com contact342JameRader3667 Deans Lane10538 914-833-9153 contact348SalvadorRowden4660 Corpening Drive 248-376-9624 contact350Winkles725 Bailey Drive52209 319-454-4935 contact351LawrenceColon2331 Raccoon Run98106 206-849-6296 contact352Pappas470 Cook Hill Road06410 203-529-5210vpappas@example.com contact353Jennie3811 Sigley Road66531jboyd@example.com contact354JenniferCompton3509 Marie Street21202 410-907-1773 contact355Kelvin Covington1385 Flint Street30303 678-281-0912kcovington@example.com contact356DorisSwafford4800 Blair Court64096 660-493-7897dswafford@example.com contact358JoiDavis3128 Wilkinson Court33901 239-645-8029 contact359Nolin2105 Irving Place63016jnolin@example.com contact361Glen4596 Vine Street 847-591-3612 contact363Theresa Cunningham3847 Maxwell Farm Road22801tcunningham@example.com contact368Boles195 Green Hill Road72764 contact3693699 Clement Street 404-434-6276wwade@example.com contact372BruceBenson3463 Augusta Park26003 304-803-6174 contact373Hilary704 Pine Tree Lane20005 240-391-3334 contact376Pang4855 Hilltop Street01230 413-644-9881tpang@example.com contact378AnnePerkins2732 Laurel Lee55414 651-785-5977 contact3792332 Fleming Street36303 contact385McGinnis1051 Massachusetts Avenue20036 202-833-3392 contact386 Armstrong3280 Union Street98133 contact387Corbo3372 Clay Street46254 contact388Heflin3257 Garrett Street 269-265-9344eheflin@example.com contact3904439 Tyler Avenue33131 305-351-6265 contact391 Hoskinson4754 Clousson Road77063 713-201-5722shoskinson@example.com contact393TammyEaster3471 Tetrick Road33884 863-325-9755teaster@example.com contact397MarieHuges2592 Barrington Court71602 870-592-0725 contact398EvelynRollins3753 Queens Lane23974 434-696-6068 contact399TinaChandler3637 Quarry Drive 334-771-5800 contact402KerryMelanson1014 Harvest Lane65322 contact404TraciRobinson226 Franklin Street36301 334-640-0501trobinson@example.com contact407AnitaCote1666 Monroe Street 713-424-2160 contact411Stoner819 Buffalo Creek Road37115 615-865-2028mstoner@example.com contact412Tremblay2785 Drummond Street07042 973-233-5606 contact413SarahRusso3991 Lyon Avenue01519srusso@example.com contact415Lloyd2734 Bastin Drive19526 484-665-7916lsilva@example.com contact4173973 Reeves Street53005 920-838-5769mcole@example.com contact418Royer4349 Hickory Ridge Drive89108aroyer@example.com contact420 ElizabethBissette4978 Wilson Street92225 760-922-4085 contact421 ConstanceLavender1691 Woodhill Avenue21875 contact422Berry2606 Center Avenue93721dberry@example.com contact425 Delafuente4944 McVaney Road28263 828-289-3761rdelafuente@example.com contact427Warren278 Webster Street08840 732-632-3857 contact4282077 Wilkinson Street37027 615-387-8693 contact431 Bernadine1358 Water Street94597blopez@example.com contact4323663 Gordon Street91789 909-468-2769mrich@example.com contact4363232 Badger Pond Lane33711 727-363-3663ndavis@example.com contact437AllisonHardin4286 Leverton Cove Road01001 413-374-7019 contact438Ladner2392 Andell Road43215 contact439Ellen4990 Columbia Boulevard21214 410-444-4558ebrown@example.com contact442Rodney2050 Felosa Drive90706 323-999-0706jrodney@example.com contact443Kyle2139 Frederick Street79922 915-875-4275kcooper@example.com contact450 Frederick1272 Westfall Avenue 505-983-3269 contact4534772 Eagle Street62450 618-354-3312ahayes@example.com contact4584701 Nickel Road91723 626-732-7883 contact4593796 Par Drive93101bmurphy@example.com contact462Perez4997 Whitman Court 203-555-5781 contact463Vanetten2172 Still< Pastures Drive29720 803-416-7456 contact4651861 Jenna Lane45241 513-944-9747 contact467HisakoFiller1418 Stout Street17101 717-315-2680 contact471Murrill1965 Chipmunk Lane 207-780-6942emurrill@example.com contact474GaryCurrie4754 Byers Lane95616 530-759-1395 contact476Adame850 Commerce Boulevard68102 402-620-9836madame@example.com contact477Cook134 Hillcrest Lane92677 949-831-7064icook@example.com contact478Sandra764 Cost Avenue20850 301-424-4036 contact479NinaOakes3578 Gordon Street92405 909-475-9125 contact485787 Rockwell Lane28560 252-603-3572 contact486Tracy772 Washington Avenue39211 601-978-0209twilson@example.com contact4872709 Windy Ridge Road46748 260-637-6287 contact488Preston Houseknecht501 Bungalow Road 402-943-1628 contact4923286 Hinkle Deegan Lake Road13901 607-245-7903 contact4981922 Mulberry Street77360 936-646-4019snichols@example.com contact499GeorgiaHasson983 Lowland Drive60606 815-401-6445ghasson@example.com contact500Michelle4533 Washington Street78476 361-376-4753 contact5023237 Oakridge Farm Lane53012cvanbrunt@example.com contact505Delbert4217 Holt Street33463droland@example.com contact5101616 Garrett Streetgmorris@example.com contact511Becky3146 Southern Avenue50401 contact5141409 Timberbrook Lane81637 970-337-3056wbelcher@example.com contact518Melvin1237 Peaceful Lane44128 216-390-1802 contact519Marlys3611 Lamberts Branch Road33025 786-547-0346mjohnson@example.com contact5211478 Hidden Meadow Drive58071 701-749-3693 contact523Elaine1476 Frank Avenue01103ecrisp@example.com contact5252520 Ritter Avenue48185 586-804-0860 contact527Jerome2006 Green Gate Lane 443-736-2978 contact529Naomi2895 Vesta Drive60637nreardon@example.com contact530Lois4925 West Side Avenue07047 201-295-8427 contact531Nicole1145 Hart Ridge Road48607nhuskey@example.com contact5342109 Boone Crockett Lane98273 contact5354567 Hiddenview Drive19146 215-985-3729 contact5361677 College Street30092 404-319-4576 contact5394389 Don Jackson Lane48502 810-235-2349 contact541603 Olive Street43626 419-318-9852 contact543906 Pearcy Avenue46806 260-744-1104 contact5484258 Stroop Hill Road30329 404-844-2367 contact550Norma4633 Harley Brook Lane16801 814-596-0902 contact5522247 Old Dear Lane10005 845-818-7759mmonreal@example.com contact553Rod4897 Saint Marys Avenue13601 315-788-0572 contact554Bernice1858 Kennedy Court01730 774-553-8722 contact5552649 McKinley Avenue80421 303-838-8974dbolick@example.com contact557553 Wyatt Streetrwilcox@example.com contact5593004 Feathers Hooves Drive11706 631-666-3005 contact5622352 Saint James Drive17082 717-527-4849jhuntley@example.com contact566Bonnie2050 Kelly Street28034 704-923-9347 contact567192 Randolph Street02532 508-743-6729 contact569Debra3256 Crummit Lane68351dchamplin@example.com contact575Susie1672 Bubby Drive78704 512-434-8251smalcolm@example.com contact579Alicia2770 Oakmound Road60661 773-299-1640 contact580Lilla1148 Patterson Road11418 718-849-7167 contact5812267 Jerry Dove Drive29575 843-477-0543gherr@example.com contact5914875 Stockert Hollow Road98033achristianson@example.com contact594Andre1670 Duke Lane07071 732-737-3918alopez@example.com contact595Wanda286 Adams Drive77414 979-323-1699 contact5963651 Woodhill Avenue21044 410-772-2930amcdonald@example.com contact598Darryl2690 Sunny Glen Lanedlebrun@example.com contact600Lucia4152 Bloomfield Way04092lcole@example.com contact603Denise4057 Wilmar Farm Road20191 240-255-1357dsoto@example.com contact604Herschel1781 Elk City Road71069 318-223-5465hsuggs@example.com contact607Weston4984 Winifred Way47374 765-625-2907 contact6093623 High Meadow Lane18640 570-574-7212agilliland@example.com contact6154992 Maxwell Streetkpauley@example.com contact6161406 Hillview Drive30240 706-885-1377lmorrow@example.com contact619Kala1327 White Oak Drive64151 816-741-8571 contact6214326 Coburn Hollow Road61401 309-345-9924 contact6234175 Black Stallion Road41006 859-472-3037 contact6243575 Southside Lane90017 323-764-3213lwatson@example.com contact6253858 Kenwood Place33301hhunt@example.com contact6274667 Lucy Lane47408 812-494-6930drobb@example.com contact629Ernest1354 Ralph Drive44055 440-233-0132ekelly@example.com contact631Angela4592 Raccoon Run98105 206-925-9737 contact6321304 Woodland Terrace95827 916-856-6739 contact6332878 Sycamore Street94103 408-850-9844amoyer@example.com contact6394111 Pin Oak Drive90807 562-989-1380jyoung@example.com contact6432623 Friendship Lane95054 contact6441035 Hazelwood Avenue50309 515-508-8739 contact645884 Felosa Drive78643 325-247-9175 contact6464564 Euclid Avenue 805-260-6682 contact6474158 Alpaca Way90621 contact6524603 Sycamore Street 408-896-8394 contact6543803 Melm Street02909 401-285-1364 contact658Everett4639 Lake Road08102 609-309-4930 contact6592790 Burwell Heights Road77591 409-683-6359ttravis@example.com contact661France4116 Conifer Drive98109 425-458-0220 contact665Frank492 Nickel Road 626-657-1395 contact6664104 Midway Road72823lmize@example.com contact667171 Bastin Drive 484-749-6891rfleming@example.com contact670Glenda4210 Sardis Station55402 612-468-5480gphillips@example.com contact6731894 Green Avenue94612 510-835-2081rmerlin@example.com contact675Dianne606 Grant View Drive53151 414-507-7521deby@example.com contact6762772 Eagle Street62206 618-337-1667 contact6792779 Sunburst Drive 239-312-3803rhicks@example.com contact680April2027 Despard Street30310 404-756-1050acunningham@example.com contact681Clara2036 Metz Lane08070 856-961-4821 contact6823403 Melrose Street99362 509-876-0207 contact6841513 Jarvisville Road48933 517-230-7611 contact685Stacy2401 Peck Street03079 603-890-5191slopez@example.com contact688 Francisco753 Foley Street33311 954-632-7248 contact6891344 Delaware Avenue94143 415-278-3252rdelossantos@example.com contact692Victor2454 Barfield Lane46250vdowdy@example.com contact693Audra2229 Green Gate Lane21221 443-777-4162 contact694Rickey1536 Linden Avenue32789 407-559-6898 contact6952106 Glory Road37204 contact6982337 Quincy Street 267-525-4377rmorales@example.com contact6994686 Lowndes Hill Park Road93308 661-399-4198lguzman@example.com contact7001770 Ralph Drive44022 440-247-1188 contact701Alison396 Jefferson Street23502 757-715-5232 contact703 Sebastian3088 Williams Lane67216 316-670-3416 contact706 JacquelynLonergan2943 Whitetail Lane75209jlonergan@example.com contact711Platt2483 Francis Mine 530-214-6132rplatt@example.com contact7123683 Benson Park Drive74857 405-386-1779jnelson@example.com contact713Keen653 Sherwood Circle70629 contact71534 Myra Street02914 401-434-4670jdiaz@example.com contact723JeniferCenters415 Buck Drive05301 802-209-6321 contact724Antonio2785 Southern Avenue52501 641-455-3403 contact727TedBaldwin818 Reeves Street54241 920-794-1778tbaldwin@example.com contact7293625 Memory Lane60115 815-906-< 7797 contact731Nancy2893 State Street48204 313-935-3441nrussell@example.com contact7331696 Swick Hill Street28202 980-328-7190psmith@example.com contact735 Davenport2107 Clarence Court 909-963-6058 contact736Stotler319 Union Street98118 206-721-3871astotler@example.com contact739Chad Strickland3603 Hall Valley Drive25801 304-619-4937cstrickland@example.com contact743Goodrich3514 Thompson Drive94587 510-477-3021bgoodrich@example.com contact745Boylan2208 Pine Tree Lane21773 240-385-9220 contact747Goll399 Small Street10014 212-884-9342 contact748Meister2207 Settlers Lanemmeister@example.com contact752HaroldNelsen3483 West Side Avenue07662 201-315-4395 contact755ReginaldGannaway3613 Bolman Court61820rgannaway@example.com contact756Nellie4939 Sigley Road67657 contact757Cho2427 Winifred Way 765-725-3576dcho@example.com contact758RobertoPlunkett69 Pooz Street08901 732-247-0047rplunkett@example.com contact761Manske3524 Tuna Street 810-834-6011 contact762McCowan4145 Andell Road37214 615-231-5436 contact767Garon441 Filbert Street19020 contact7684220 Radford Street40202 502-322-0287 contact769Regina3610 Tetrick Road 863-271-2182rnelson@example.com contact770CherylJohnston3400 Quiet Valley Lane91403 818-978-1373 contact771747 Alpha Avenue32250 contact775 Martineau3517 Pallet Street10940 914-443-5036 contact776CourtneyHuff2907 Frum Street37201 615-261-7487 contact780631 Center Street97526 541-956-2089nmedina@example.com contact781Curley3295 White Oak Drive64111 816-759-1406rcurley@example.com contact783Melissa2863 Randolph Street 508-735-0933mlong@example.com contact787Jerry3685 Fantages Way 207-761-8331 contact7893909 James Martin Circlearhodes@example.com contact791 Ledbetter4061 Villa Drive46516 contact793Geist473 Bassell Avenue67202 501-648-6173 contact794LiDenton4593 University Drive 312-726-8926 contact795Fishel1626 Willison Street 763-390-8296jfishel@example.com contact796AgnesStahl395 Adonais Way30097 678-492-6529 contact799Brenda2230 Cedarstone Drive43457 contact801Bailey2973 Limer Street30901 706-447-8397cbailey@example.com contact8051418 Stonepot Road08853 908-371-8516 contact807StanleyMcNeil745 Joseph Street 262-758-5473smcneil@example.com contact8081634 Froe Street26187 304-375-4923 contact809 1574 C Street 508-395-5893meverett@example.com contact811Barnes3335 Cody Ridge Road73947 580-546-0800 contact8123696 Robinson Lane43201 740-370-7247sweber@example.com contact813SabinaLemon1969 Sugar Camp Road56001 507-506-7159slemon@example.com contact814LesliePorter2061 Park Boulevard50106 641-498-2060 contact815Clutter4963 Clarence Court91761 909-975-9094iclutter@example.com contact816 Mattingly4249 Farland Avenue78055emattingly@example.com contact818FrancesHayden2396 Norma Avenue77868fhayden@example.com contact819Tillery2678 Saint James Drive17257 contact8231814 Sherman Street66044 785-865-0575 contact824Griffin3106 Locust Street31707 contact826Huong2333 Lincoln Drive17116 717-641-1616 contact8282992 Overlook Drive46052swatson@example.com contact829 Chavarria310 Sweetwood Drive80010 303-344-6192 contact830Glenn1845 Mill Street33823 863-965-4096gwatson@example.com contact834 McWhorter1623 Harper Street42431jmcwhorter@example.com contact838 McFarlane1466 Pinnickinnick Street07008 732-802-5982 contact843Johnnie Cervantes3139 East Avenue85207 480-357-1904jcervantes@example.com contact8464870 Aviation Way75201 214-206-3367 contact848CynthiaGifford3530 Pretty View Lane 707-896-0314 contact849Maryann833 Stonepot Road07102mdenton@example.com contact852Frankie4472 Fincham Road 760-490-1169 contact853Furtado4402 Eastland Avenue39201 601-431-7010mfurtado@example.com contact854Clarke310 Maxwell Farm Roadjclarke@example.com contact855482 Spruce Drive15201 724-971-9777 contact8591518 Green Acres Road27801 252-467-6077kcalkins@example.com contact861Kevin4846 Leisure Lane91362 805-557-0613kkim@example.com contact862LaciRoberts3700 Romano Street02421 contact866Morrell4196 Doe Meadow Drive20763 301-554-6085 contact867SheldonParnell2500 Retreat Avenue 207-299-0896sparnell@example.com contact8694027 Stonepot Road08865 908-454-9289 contact8704856 White Lane31206ktaylor@example.com contact871ElviaSparkman2275 Riverwood Drive95928esparkman@example.com contact872Yun1271 Junior Avenue 404-550-4941ylawrence@example.com contact873LynnMagwood3649 University Hill Road62019 217-537-2568lmagwood@example.com contact874 Sepulveda2527 Bobcat Drive 248-224-6419 contact876Filson3257 Westfall Avenue56164 507-215-4029 contact877616 Summit Street52806 563-388-5157tthomas@example.com contact878 Pettigrew4971 Bingamon Branch Road12790 contact8792351 Brighton Circle Road56303 320-434-4970 contact887Roberson2120 Barrington Court72351 870-526-5075vroberson@example.com contact8894441 Perry Street48461jclark@example.com contact890DerickGreen2091 Hill Street43609 contact891Dani74 Fleming Way23227 804-681-2263dromero@example.com contact892Debbie1688 Thunder Road94010 650-548-7361 contact895Miller2323 Steele Streetamiller@example.com contact897Shena3293 Forest Drive22042 703-849-2631 contact898Molinaro1954 Boundary Street32202 contact901StevenCalhoun4028 Pride Avenue10467 718-325-2539scalhoun@example.com contact904Andres2156 Duff Avenue05773 contact9052311 Dennison Street95207 209-472-4519cmiller@example.com contact906Pitts1418 Pearl Street95823jpitts@example.com contact908 Stripling898 Lakeland Terracesstripling@example.com contact911Speller1064 Abia Martin Drive11530rspeller@example.com contact914Dwight4936 Libby Street90301 310-330-3574drobinson@example.com contact915Evens4766 Kenwood Place 954-522-8917revens@example.com contact9174080 Elk Avenue49230 517-592-2911ejohnson@example.com contact919781 Nutter Street64106 816-308-0889 contact9204726 Callison Lane19711jchristiansen@example.com contact921MarianHathcock3959 Pearlman Avenue01801mhathcock@example.com contact922Mayfield4966 Pearl Street95826 916-295-2736jmayfield@example.com contact927Hugh Ellington1669 Virginia Street60089 773-617-2764hellington@example.com contact929EugeneShaffer3571 Lightning Point Drive38110 901-524-0003eshaffer@example.com contact932Shoop3197 Woodbridge Lane 313-465-2182 contact934Tuck3099 Scenic Way62758 217-706-8899ltuck@example.com contact936HazelMeza1263 Hart Ridge Road 989-312-9723hmeza@example.com contact938 Beardsley 195 Poe Lane 913-499-7947 contact946FloydHarbison2774 Ferrell Street55723 218-376-9775fharbison@example.com contact955SelenaRio2497 Olive Street45841 419-326-5713srio@example.com contact9562296 Blane Street63101 314-539-8966sstewart@example.com contact9573552 Morgan Street32531 850-537-9352 contact960Koehler146 Lighthouse Drive65616 contact9633146 Kincheloe Roaddthomas@example.com contact964Carmen2967 West Virginia Avenue contact9654816 Palmer Road43085 614-642-62<Ÿ18 contact966Schutt3276 Hillhaven Drive90036 323-930-7196 contact9674860 Giraffe Hill Drive contact971GeoffreySwaney901 Haymond Rocks Road97401gswaney@example.com contact973Emma259 Westwood Avenue11756 516-839-3288 contact975AdeleLeu2686 Austin Avenue31324 912-315-1551aleu@example.com contact9763149 Koontz Lane91601 contact977428 Myra Street02840 401-493-9273 contact978Cummings3678 Willow Greene Drivemcummings@example.com contact979Butcher519 Ethels Lane33602 863-733-8888sbutcher@example.com contact9802005 McVaney Road28787rdick@example.com contact9813282 Timber Oak Drive93458 805-928-1923mmartin@example.com contact982RobinElder1387 Five Points21201 contact984Newlon632 Collins Avenue43213 614-856-8721 contact986Laboy4257 Broad Street35203 205-443-5328 contact989MonikaEsquivel1943 Strother Streetmesquivel@example.com contact990Haynes1658 Edington Drive30308 678-850-1549ahaynes@example.com contact991 4 Petunia Way 205-877-2246jstrickland@example.com contact993 AlejandraKennon61 Buena Vista Avenue97477 541-741-4419akennon@example.com contact994371 Franklin Street36345 334-693-2046 contact997Ammons428 Tibbs Avenue59701lammons@example.com contact998Edelson2763 Philli Lane74119 918-537-1931 contact999BrandonDailey120 Thomas Street 847-558-1903bdailey@example.com Person ID Contact ID Relationshipparent step_parent foster_parentguardiansibling DescriptionLocal ID Government IDCreditsart_aArt english_a history_aHistorymath_aMath science_aScience spanish_aSpanishCoursesTerm Section ID Previous IDNext ID Instructors Resourcesart_a_2011-fall_teacher004_000 Art A  1 art_a_2012-spring_teacher004_000"english_a_2011-fall_teacher005_000 English A  1$english_a_2012-spring_teacher005_000"history_a_2011-fall_teacher002_000 History A  1$history_a_2012-spring_teacher002_000math_a_2011-fall_teacher001_000 Math A  1!math_a_2012-spring_teacher001_000"science_a_2011-fall_teacher000_000 Science A  1$science_a_2012-spring_teacher000_000"spanish_a_2011-fall_teacher003_000 Spanish A  1$spanish_a_2012-spring_teacher003_000 art_a_2011-spring_teacher004_000art_a_2010-fall_teacher004_000$english_a_2011-spring_teacher005_000"english_a_2010-fall_teacher005_000$history_a_2011-spring_teacher002_000"history_a_2010-fall_teacher002_000!math_a_2011-spring_teacher001_000math_a_2010-fall_teacher001_000$science_a_2011-spring_teacher000_000"science_a_2010-fall_teacher000_000$spanish_a_2011-spring_teacher003_000"spanish_a_2010-fall_teacher003_000Students Timetable Consecutiveno Period ID Group TitleSchool Administratorsadministrators)School principal and other administratorsClerksclerksStaffMembers Marching bandgroup00 Swing chorusgroup01 Chess clubgroup02Dungeons and Dragons clubgroup03 Jazz dancegroup04 Newspapergroup05Yearbookgroup06 Basketballgroup07Swimminggroup08 Gymnasticsgroup09Dramagroup10 Computer clubgroup11Hip-Hopgroup12 Greenpeacegroup13Sewinggroup14Scoutsgroup15 Cart racinggroup16ST radiogroup17 Cheerleadinggroup18Aikidogroup19 Site ManagersManager Group.students Students.Teachersteachers Teachers.School Administrators.Clerks.System administratorsÿ …T _ o' Îꢧ_k$#E)Ù.›Ò2f °7DŠ<fAúbFö«MùTi\ˆOc¿–jâúqF yhC€Õ‡ýe—?Ûžw¦ŸÚ­ÞTµX½’Ä–1Ì>Õcc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿý ý ý ý ý ý ½J}Êý ý ½šw|ìPðHðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½šwîyý ý  ý  ½J}žý ý  ý  ½úy|ý ý  ý ½ªÊý ½®w®w½:x:x½ ’x’x½ ¶x¶x½ îxòx½ by~y½ ÂyÂy½Nz^z½.{>{½Ö{Ö{½^}^}½ê}ê}½ž~¢~½.½::½rr½þ€½¶€¶€½Þ€î€½††ý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” Cÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý  ý !¾ý "ý #ý $ý %ý &ý 'ý (ý )ý *ý *ý *ý *ý *ý +ý $ý %ý &ý 'ý (ý #ý )ý *ý *ý *ý *ý *ý ,ý %ý &ý 'ý (ý #ý $ý )ý *ý *ý *ý *ý *ý -ý &ý 'ý (ý #ý $ý %ý )ý *ý *ý *ý *ý *ý .ý 'ý (ý #ý $ý %ý &ý )ý *ý *ý *ý *ý *ý /ý (ý #ý $ý %ý &ý 'ý )ý *ý *ý *ý *ý *ý 0ý "ý 1ý 2ý 3ý 4ý 5ý 6¾ý +ý 1ý 2ý 3ý 4ý 5ý 6¾ý ,ý 1ý 2ý 3ý 4ý 5ý 6¾ý -ý 1ý 2ý 3ý 4ý 5ý 6¾ý .ý 1ý 2ý 3ý 4ý 5ý 6¾ý /ý 1ý 2ý 3ý 4ý 5ý 6 ÿ#ÿ$ÿ%ÿ&ÿ'ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿ¾ ý #ý #ý $ý $ý %ý %ý &ý &ý 'ý 'ý ) ý )!¾)ý *"ý *#ý *$ý *%ý *&ý *'ý *(ý +)ý +*ý +*ý +*ý +*ý +*ý ,+ý ,$ý ,%ý ,&ý ,'ý ,(ý ,#ý -)ý -*ý -*ý -*ý -*ý -*ý .,ý .%ý .&ý .'ý .(ý .#ý .$ý /)ý /*ý /*ý /*ý /*ý /*ý 0-ý 0&ý 0'ý 0(ý 0#ý 0$ý 0%ý 1)ý 1*ý 1*ý 1*ý 1*ý 1*ý 2.ý 2'ý 2(ý 2#ý 2$ý 2%ý 2&ý 3)ý 3*ý 3*ý 3*ý 3*ý 3*ý 4/ý 4(ý 4#ý 4$ý 4%ý 4&ý 4'ý 5)ý 5*ý 5*ý 5*ý 5*ý 5*ý 70ý 8"ý 81ý 82ý 83ý 84ý 85ý 86¾9ý :+ý :1ý :2ý :3ý :4ý :5ý :6¾;ý <,ý <1ý <2ý <3ý <4ý <5ý <6¾=ý >-ý >1ý >2ý >3ý >4ý >5ý >6¾?@ÿAÿBÿý @.ý @1ý @2ý @3ý @4ý @5ý @6¾Aý B/ý B1ý B2ý B3ý B4ý B5ý B6å))ìPðH0ð ð0ð( ð ð >¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” Yÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý 7ý ý 8ý 9ý :ý ;ý 9ý <ý =ý 9ý >ý ?ý 9ý @ý Aý 9ý Bý Cý 9ý Dý Eý 9ý Fýÿÿÿýÿÿÿýÿÿÿýÿÿÿýÿÿÿ†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹þÿÿÿþÿÿÿ¼þÿÿÿ¾þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý Gý 9ý Hý Iý 9ý Jý Ký 9ý Lý Mý 9ý Ný Oý 9ý Pý Qý 9ý Rý Sý 9ý Tý Uý 9ý Vý Wý 9ý Xý Yý 9ý Zý [ý 9ý \ý ]ý 9ý ^ý _ý 9ý `ý aý 9ý bý cý 9ý dý eý 9ý fý gý 9ý hý iý jý ký lý jý mý ný jý oý pý jý qý rý jý sý tý jý uý vý jý w ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý xý jý yý !zý !jý !{ý "|ý "jý "}ý #~ý #jý #ý $€ý $jý $ý %‚ý %jý %ƒý &„ý &jý &…ý '†ý 'jý '‡ý (ˆý (jý (‰ý )Šý )jý )‹ý *Œý *jý *ý +Žý +jý +ý ,ý ,jý ,‘ý -’ý -jý -“ý .”ý .jý .•ý /–ý /jý /—ý 0˜ý 0jý 0™ý 1šý 1jý 1›ý 2œý 2jý 2ý 3žý 3jý 3Ÿý 4 ý 4jý 4¡ý 5¢ý 5jý 5£ý 6¤ý 6jý 6¥ý 7¦ý 7jý 7§ý 8¨ý 8jý 8©ý 9ªý 9jý 9«ý :¬ý :jý :­ý ;®ý ;jý ;¯ý <°ý <jý <±ý =²ý =jý =³ý >´ý >jý >µý ?¶ý ?jý ?·@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿý @¸ý @jý @¹ý Aºý Ajý A»ý B¼ý Bjý B½ý C¾ý Cjý C¿ý DÀý Djý DÁý EÂý Ejý EÃý FÄý Fjý FÅý GÆý Gjý GÇý HÈý Hjý HÉý IÊý Ijý IËý JÌý Jjý JÍý KÎý Kjý KÏý LÐý Ljý LÑý MÒý Mjý MÓý NÔý Njý NÕý OÖý Ojý O×ý PØý Pjý PÙý QÚý Qjý QÛý RÜý Rjý RÝý SÞý Sjý Sßý Tàý Tjý Táý Uâý Ujý Uãý Väý Vjý Våý Wæý Wjý Wçý Xèý Xjý XéìPðH@ðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” Úÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý êý ëý ìý íý îý ïý ðý ñý òý óý ý ôý õý öý ÷ý øý ùý ú¾ý ûý üý ýý þý  ûý  ÿý  ý  ý  ý ý ý ý ý ý  ý  ý  ý  ý  ý ý  ý  ý  ý þý   ý   ý  ý  ý  ý ý  ý ý ý þý   ý  ý  ý  ý  ý ý ý ý ý þý  ý  ý  ý  ý  ý ý ý ý ý ý  ý  ý  ý  ý  ý ý ý ý ý þý  ý  ý  ý  ý  ý ý ý ý ý ý ý  ý ý ý ý ý !ý "ý #ý þý !ý $ý ý ý ý ý %ý &ý 'ý ý %ý (ý ý ý ý ý )ý *ý +ý þý )ý ,ý ý ý ý ý -ý .ý /ý þý -ý 0ý ý ý ý ý 1ý 2ý 3ý þý  1ý  4ý  ý  ý  ý ý 5ý 6ý 7ý þý  5ý  8ý  ý  ý  ý ý 9ý :ý ;ý ý  9ý  <ý  ý  ý  ý ý =ý >ý ?ý þý  =ý  @ý  ý  ý  ý ý Aý Bý Cý þý  Aý  Dý  ý  ý  ý ý Eý Fý Gý þý  Eý  Hý  ý  ý  ý ý Iý Jý Ký ý  Iý  Lý  ý  ý  ý ý Mý Ný Oý þý  Mý  Pý  ý  ý  ý ý Qý Rý Sý þý  Qý  Tý  ý  ý  ý ý Uý Vý Wý þý  Uý  Xý  ý  ý  ý ý Yý Zý [ý þý  Yý  \ý  ý  ý  ý ý ]ý ^ý 'ý ý  ]ý  _ý  ý  ý  ý ý `ý aý bý þý  `ý  cý  ý  ý  ý ý dý eý fý ý  dý  gý  ý  ý  ý ý hý iý jý ý  hý  ký  ý  ý  ý ý lý mý ný ý  lý  oý  ý  ý  ý ý pý qý rý ý  pý  sý  ý  ý  ý ý tý uý vý þý  tý  wý  ý  ý  ý  ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý xý yý zý þý xý {ý ý ý ý ý !|ý !}ý !~ý !þý ! |ý ! ý ! ý ! ý ! ý !ý "€ý "ý "‚ý "þý " €ý " ƒý " ý " ý " ý "ý #„ý #…ý #†ý #ý # „ý # ‡ý # ý # ý # ý #ý $ˆý $‰ý $?ý $ý $ ˆý $ Šý $ ý $ ý $ ý $ý %‹ý %Œý %zý %þý % ‹ý % ý % ý % ý % ý %ý &Žý &ý &ý &þý & Žý & ý & ý & ý & ý &ý '‘ý '’ý '“ý 'ý ' ‘ý ' ”ý ' ý ' ý ' ý 'ý (•ý (ý (–ý (þý ( •ý ( —ý ( ý ( ý ( ý (ý )˜ý )™ý )šý )ý ) ˜ý ) ›ý ) ý ) ý ) ý )ý *œý *qý *ý *þý * œý * žý * ý * ý * ý *ý +Ÿý + ý +ý +ý + Ÿý + ¡ý + ý + ý + ý +ý ,¢ý ,£ý ,¤ý ,þý , ¢ý , ¥ý , ý , ý , ý ,ý -¦ý -§ý -¨ý -ý - ¦ý - ©ý - ý - ý - ý -ý .ªý .«ý .ý .þý . ªý . ¬ý . ý . ý . ý .ý /­ý /®ý /¯ý /ý / ­ý / °ý / ý / ý / ý /ý 0±ý 0²ý 0³ý 0ý 0 ±ý 0 ´ý 0 ý 0 ý 0 ý 0ý 1µý 1¶ý 13ý 1þý 1 µý 1 ·ý 1 ý 1 ý 1 ý 1ý 2¸ý 2¹ý 2ºý 2ý 2 ¸ý 2 »ý 2 ý 2 ý 2 ý 2ý 3¼ý 3Vý 3½ý 3ý 3 ¼ý 3 ¾ý 3 ý 3 ý 3 ý 3ý 4¿ý 4Àý 4Áý 4ý 4 ¿ý 4 Âý 4 ý 4 ý 4 ý 4ý 5Ãý 5Äý 5Åý 5ý 5 Ãý 5 Æý 5 ý 5 ý 5 ý 5ý 6Çý 6Èý 6Éý 6ý 6 Çý 6 Êý 6 ý 6 ý 6 ý 6ý 7Ëý 7Ìý 7ý 7ý 7 Ëý 7 Íý 7 ý 7 ý 7 ý 7ý 8Îý 8Ïý 8Ðý 8þý 8 Îý 8 Ñý 8 ý 8 ý 8 ý 8ý 9Òý 9Óý 9Ôý 9þý 9 Òý 9 Õý 9 ý 9 ý 9 ý 9ý :Öý :uý :×ý :ý : Öý : Øý : ý : ý : ý :ý ;Ùý ;Zý ;†ý ;þý ; Ùý ; Úý ; ý ; ý ; ý ;ý <Ûý <Üý <Ýý <þý < Ûý < Þý < ý < ý < ý <ý =ßý =àý =áý =þý = ßý = âý = ý = ý = ý =ý >ãý >äý >Wý >þý > ãý > åý > ý > ý > ý >ý ?æý ?çý ?rý ?ý ? æý ? èý ? ý ? ý ? ý ?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @éý @êý @ëý @þý @ éý @ ìý @ ý @ ý @ ý @ý Aíý Aîý Aïý Aþý A íý A ðý A ý A ý A ý Aý Bñý Bòý B ý Bþý B ñý B óý B ý B ý B ý Bý Côý Cõý Cöý Cþý C ôý C ÷ý C ý C ý C ý Cý Døý Dùý Dúý Dþý D øý D ûý D ý D ý D ý Dý Eüý Eýý Eþý Eþý E üý E ÿý E ý E ý E ý Eý Fý Fý Fý Fþý F ý F ý F ý F ý F ý Fý Gý Gqý Gý Gþý G ý G ý G ý G ý G ý Gý Hý Hý H ý Hý H ý H  ý H ý H ý H ý Hý I ý I ý I ý Iý I  ý I ý I ý I ý I ý Iý Jý Jeý Jý Jý J ý J ý J ý J ý J ý Jý Ký Ký K/ý Ký K ý K ý K ý K ý K ý Ký Lý Lý Lý Lþý L ý L ý L ý L ý L ý Lý Mý Mý Mý Mþý M ý M ý M ý M ý M ý Mý Ný Ný Ný Ný N ý N  ý N ý N ý N ý Ný O!ý Oaý O"ý Oþý O !ý O #ý O ý O ý O ý Oý P$ý P%ý P&ý Pý P $ý P 'ý P ý P ý P ý Pý Q(ý QRý Qzý Qþý Q (ý Q )ý Q ý Q ý Q ý Qý R*ý R+ý R,ý Rý R *ý R -ý R ý R ý R ý Rý S.ý S/ý S0ý Sþý S .ý S 1ý S ý S ý S ý Sý T2ý T3ý T4ý Tý T 2ý T 5ý T ý T ý T ý Tý U6ý U7ý U8ý Uý U 6ý U 9ý U ý U ý U ý Uý V:ý V;ý VÅý Vý V :ý V <ý V ý V ý V ý Vý W=ý W>ý W?ý Wþý W =ý W @ý W ý W ý W ý Wý XAý XBý XSý Xý X Aý X Cý X ý X ý X ý Xý YDý YEý YFý Yþý Y Dý Y Gý Y ý Y ý Y ý Yý ZHý ZIý ZJý Zý Z Hý Z Ký Z ý Z ý Z ý Zý [Lý [’ý [Mý [þý [ Lý [ Ný [ ý [ ý [ ý [ý \Oý \Pý \Qý \þý \ Oý \ Rý \ ý \ ý \ ý \ý ]Sý ]Tý ]Uý ]ý ] Sý ] Vý ] ý ] ý ] ý ]ý ^Wý ^Xý ^Éý ^þý ^ Wý ^ Yý ^ ý ^ ý ^ ý ^ý _Zý _[ý _\ý _þý _ Zý _ ]ý _ ý _ ý _ ý _`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `^ý `_ý ``ý `ý ` ^ý ` aý ` ý ` ý ` ý `ý abý a*ý aý aý a bý a cý a ý a ý a ý aý bdý beý bý bþý b dý b fý b ý b ý b ý bý cgý chý ciý cý c gý c jý c ý c ý c ý cý dký dlý dCý dý d ký d mý d ý d ý d ý dý ený eoý eÝý eý e ný e pý e ý e ý e ý eý fqý frý fsý fý f qý f tý f ý f ý f ý fý guý gêý gvý gý g uý g wý g ý g ý g ý gý hxý hyý hzý hþý h xý h {ý h ý h ý h ý hý i|ý iý i}ý iý i |ý i ~ý i ý i ý i ý iý jý j€ý jý jþý j ý j ‚ý j ý j ý j ý jý kƒý k„ý k…ý ký k ƒý k †ý k ý k ý k ý ký l‡ý lˆý l‰ý lþý l ‡ý l Šý l ý l ý l ý lý m‹ý mŒý mý mþý m ‹ý m Žý m ý m ý m ý mý ný ný nÁý ný n ý n ‘ý n ý n ý n ý ný o’ý o“ý o”ý oý o ’ý o •ý o ý o ý o ý oý p–ý pý p—ý pý p –ý p ˜ý p ý p ý p ý pý q™ý q;ý qšý qý q ™ý q ›ý q ý q ý q ý qý rœý rý ržý rý r œý r Ÿý r ý r ý r ý rý s ý s ý s¡ý sý s  ý s ¢ý s ý s ý s ý sý t£ý t¤ý t¥ý tý t £ý t ¦ý t ý t ý t ý tý u§ý u¨ý u©ý uý u §ý u ªý u ý u ý u ý uý v«ý v¬ý v8ý vý v «ý v ­ý v ý v ý v ý vý w®ý w¯ý w°ý wþý w ®ý w ±ý w ý w ý w ý wý x²ý x;ý x³ý xý x ²ý x ´ý x ý x ý x ý xý yµý y¶ý y·ý yþý y µý y ¸ý y ý y ý y ý yý z¹ý zý zºý zþý z ¹ý z »ý z ý z ý z ý zý {¼ý {Fý {½ý {ý { ¼ý { ¾ý { ý { ý { ý {ý |¿ý |Àý |Áý |þý | ¿ý | Âý | ý | ý | ý |ý }Ãý }hý }Äý }ý } Ãý } Åý } ý } ý } ý }ý ~Æý ~Çý ~Èý ~þý ~ Æý ~ Éý ~ ý ~ ý ~ ý ~ý Êý Ëý Ìý ý  Êý  Íý  ý  ý  ý €ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €Îý €Ïý €Ðý €ý € Îý € Ñý € ý € ý € ý €ý Òý ý Óý þý Òý Ôý ý ý ý ý ‚Õý ‚%ý ‚Öý ‚ý ‚ Õý ‚ ×ý ‚ ý ‚ ý ‚ ý ‚ý ƒØý ƒÙý ƒÚý ƒý ƒ Øý ƒ Ûý ƒ ý ƒ ý ƒ ý ƒý „Üý „Ýý „Þý „þý „ Üý „ ßý „ ý „ ý „ ý „ý …àý …?ý …ný …ý … àý … áý … ý … ý … ý …ý †âý †ãý †äý †þý † âý † åý † ý † ý † ý †ý ‡æý ‡Ôý ‡çý ‡þý ‡ æý ‡ èý ‡ ý ‡ ý ‡ ý ‡ý ˆéý ˆêý ˆëý ˆþý ˆ éý ˆ ìý ˆ ý ˆ ý ˆ ý ˆý ‰íý ‰îý ‰ïý ‰ý ‰ íý ‰ ðý ‰ ý ‰ ý ‰ ý ‰ý Šñý Šòý Šóý Šý Š ñý Š ôý Š ý Š ý Š ý Šý ‹õý ‹öý ‹÷ý ‹þý ‹ õý ‹ øý ‹ ý ‹ ý ‹ ý ‹ý Œùý Œý Œúý Œý Œ ùý Œ ûý Œ ý Œ ý Œ ý Œý üý ýý þý ý üý ÿý ý ý ý ý Žý Žý Žý Žþý Ž ý Ž ý Ž ý Ž ý Ž ý Žý ý aý ý ý ý ý ý ý ý ý ý qý ý þý ý  ý ý ý ý ý ‘ ý ‘ý ‘ ý ‘ý ‘  ý ‘  ý ‘ ý ‘ ý ‘ ý ‘ý ’ ý ’ý ’Ìý ’þý ’  ý ’ ý ’ ý ’ ý ’ ý ’ý “ý “Ný “ý “ý “ ý “ ý “ ý “ ý “ ý “ý ”ý ” ý ”ý ”ý ” ý ” ý ” ý ” ý ” ý ”ý •ý •ý •ý •ý • ý • ý • ý • ý • ý •ý –ý –ý –ý –þý – ý – ý – ý – ý – ý –ý —ý —ý — ý —ý — ý — !ý — ý — ý — ý —ý ˜"ý ˜hý ˜ ý ˜ý ˜ "ý ˜ #ý ˜ ý ˜ ý ˜ ý ˜ý ™$ý ™%ý ™&ý ™ý ™ $ý ™ 'ý ™ ý ™ ý ™ ý ™ý š(ý šÓý š\ý šþý š (ý š )ý š ý š ý š ý šý ›*ý ›çý ›ý ›þý › *ý › +ý › ý › ý › ý ›ý œ,ý œ-ý œºý œþý œ ,ý œ .ý œ ý œ ý œ ý œý /ý 0ý 1ý ý /ý 2ý ý ý ý ý ž3ý ž4ý ž5ý žý ž 3ý ž 6ý ž ý ž ý ž ý žý Ÿ7ý Ÿuý Ÿ8ý Ÿþý Ÿ 7ý Ÿ 9ý Ÿ ý Ÿ ý Ÿ ý Ÿ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  :ý  ý  Uý  ý   :ý   ;ý   ý   ý   ý  ý ¡<ý ¡=ý ¡>ý ¡þý ¡ <ý ¡ ?ý ¡ ý ¡ ý ¡ ý ¡ý ¢@ý ¢Aý ¢Bý ¢þý ¢ @ý ¢ Cý ¢ ý ¢ ý ¢ ý ¢ý £Dý £§ý £0ý £ý £ Dý £ Eý £ ý £ ý £ ý £ý ¤Fý ¤Gý ¤Wý ¤ý ¤ Fý ¤ Hý ¤ ý ¤ ý ¤ ý ¤ý ¥Iý ¥Jý ¥Ký ¥þý ¥ Iý ¥ Lý ¥ ý ¥ ý ¥ ý ¥ý ¦Mý ¦Ný ¦Oý ¦ý ¦ Mý ¦ Pý ¦ ý ¦ ý ¦ ý ¦ý §Qý §Rý §Oý §þý § Qý § Sý § ý § ý § ý §ý ¨Tý ¨eý ¨}ý ¨ý ¨ Tý ¨ Uý ¨ ý ¨ ý ¨ ý ¨ý ©Vý ©Wý ©ý ©þý © Vý © Xý © ý © ý © ý ©ý ªYý ª£ý ªçý ªþý ª Yý ª Zý ª ý ª ý ª ý ªý «[ý «\ý «]ý «þý « [ý « ^ý « ý « ý « ý «ý ¬_ý ¬`ý ¬aý ¬þý ¬ _ý ¬ bý ¬ ý ¬ ý ¬ ý ¬ý ­cý ­¤ý ­dý ­ý ­ cý ­ eý ­ ý ­ ý ­ ý ­ý ®fý ®gý ®Äý ®þý ® fý ® hý ® ý ® ý ® ý ®ý ¯iý ¯jý ¯ký ¯þý ¯ iý ¯ lý ¯ ý ¯ ý ¯ ý ¯ý °mý °ný °oý °þý ° mý ° pý ° ý ° ý ° ý °ý ±qý ±rý ±sý ±þý ± qý ± tý ± ý ± ý ± ý ±ý ²uý ²vý ²çý ²ý ² uý ² wý ² ý ² ý ² ý ²ý ³xý ³ý ³yý ³þý ³ xý ³ zý ³ ý ³ ý ³ ý ³ý ´{ý ´qý ´|ý ´þý ´ {ý ´ }ý ´ ý ´ ý ´ ý ´ý µ~ý µý µ4ý µý µ ~ý µ €ý µ ý µ ý µ ý µý ¶ý ¶‚ý ¶ƒý ¶ý ¶ ý ¶ „ý ¶ ý ¶ ý ¶ ý ¶ý ·…ý ·†ý ·‡ý ·ý · …ý · ˆý · ý · ý · ý ·ý ¸‰ý ¸Šý ¸iý ¸þý ¸ ‰ý ¸ ‹ý ¸ ý ¸ ý ¸ ý ¸ý ¹Œý ¹«ý ¹ý ¹ý ¹ Œý ¹ Žý ¹ ý ¹ ý ¹ ý ¹ý ºý ºäý ºÅý ºý º ý º ý º ý º ý º ý ºý »‘ý »’ý »“ý »þý » ‘ý » ”ý » ý » ý » ý »ý ¼•ý ¼–ý ¼—ý ¼þý ¼ •ý ¼ ˜ý ¼ ý ¼ ý ¼ ý ¼ý ½™ý ½šý ½ý ½þý ½ ™ý ½ ›ý ½ ý ½ ý ½ ý ½ý ¾œý ¾ý ¾žý ¾þý ¾ œý ¾ Ÿý ¾ ý ¾ ý ¾ ý ¾ý ¿ ý ¿yý ¿ý ¿ý ¿  ý ¿ ¡ý ¿ ý ¿ ý ¿ ý ¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý À¢ý À£ý À‡ý Àþý À ¢ý À ¤ý À ý À ý À ý Àý Á¥ý Á`ý Á¦ý Áþý Á ¥ý Á §ý Á ý Á ý Á ý Áý ¨ý ©ý ªý Âþý  ¨ý  «ý  ý  ý  ý Âý ìý íý Þý Ãý à ¬ý à ®ý à ý à ý à ý Ãý įý Äoý İý Äþý Ä ¯ý Ä ±ý Ä ý Ä ý Ä ý Äý Ųý ųý Å´ý Åý Å ²ý Å µý Å ý Å ý Å ý Åý ƶý Æ·ý Ƹý Æý Æ ¶ý Æ ¹ý Æ ý Æ ý Æ ý Æý Ǻý Ç»ý Ǽý Çý Ç ºý Ç ½ý Ç ý Ç ý Ç ý Çý Ⱦý ÈŒý ÈGý Èý È ¾ý È ¿ý È ý È ý È ý Èý ÉÀý ÉÁý ÉÂý Éý É Àý É Ãý É ý É ý É ý Éý ÊÄý ÊÅý ÊÆý Êý Ê Äý Ê Çý Ê ý Ê ý Ê ý Êý ËÈý Ëý ËFý Ëþý Ë Èý Ë Éý Ë ý Ë ý Ë ý Ëý ÌÊý ÌËý Ì3ý Ìþý Ì Êý Ì Ìý Ì ý Ì ý Ì ý Ìý ÍÍý ÍÎý Íyý Íþý Í Íý Í Ïý Í ý Í ý Í ý Íý ÎÐý ÎÑý ÎÒý Îý Î Ðý Î Óý Î ý Î ý Î ý Îý ÏÔý Ïý Ïšý Ïþý Ï Ôý Ï Õý Ï ý Ï ý Ï ý Ïý ÐÖý Ð×ý ÐØý Ðþý Ð Öý Ð Ùý Ð ý Ð ý Ð ý Ðý ÑÚý ÑÛý ÑÜý Ñþý Ñ Úý Ñ Ýý Ñ ý Ñ ý Ñ ý Ñý ÒÞý ÒÏý Òßý Òý Ò Þý Ò àý Ò ý Ò ý Ò ý Òý Óáý Óâý Óãý Óý Ó áý Ó äý Ó ý Ó ý Ó ý Óý Ôåý Ôçý Ôæý Ôý Ô åý Ô çý Ô ý Ô ý Ô ý Ôý Õèý ÕÁý Õéý Õý Õ èý Õ êý Õ ý Õ ý Õ ý Õý Öëý Öìý Öíý Öþý Ö ëý Ö îý Ö ý Ö ý Ö ý Öý ×ïý ×}ý ×ðý ×þý × ïý × ñý × ý × ý × ý ×ý Øòý Ø[ý Øóý Øþý Ø òý Ø ôý Ø ý Ø ý Ø ý Øý Ùõý Ùöý Ù÷ý Ùý Ù õý Ù øý Ù ý Ù ý Ù ý Ùý Úùý Úúý Úûý Úý Ú ùý Ú üý Ú ý Ú ý Ú ý Úý Ûýý Û[ý Ûþý Ûþý Û ýý Û ÿý Û ý Û ý Û ý Ûý Üý Üý ÜSý Üý Ü ý Ü ý Ü ý Ü ý Ü ý Üý Ýý Ýý Ý×ý Ýþý Ý ý Ý ý Ý ý Ý ý Ý ý Ýý Þý Þý Þý Þþý Þ ý Þ ý Þ ý Þ ý Þ ý Þý ß ý ß ý ß ý ßþý ß  ý ß  ý ß ý ß ý ß ý ßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý à ý àvý àÐý àý à  ý à ý à ý à ý à ý àý áý áý áý áþý á ý á ý á ý á ý á ý áý âý âý âý âþý â ý â ý â ý â ý â ý âý ãý ãý ãý ãý ã ý ã ý ã ý ã ý ã ý ãý äý äÝý äéý äý ä ý ä ý ä ý ä ý ä ý äý åý åý åÜý åþý å ý å ý å ý å ý å ý åý æý æeý æý æý æ ý æ  ý æ ý æ ý æ ý æý ç!ý ç"ý ç#ý çý ç !ý ç $ý ç ý ç ý ç ý çý è%ý è&ý è'ý èþý è %ý è (ý è ý è ý è ý èý é)ý éîý éïý éþý é )ý é *ý é ý é ý é ý éý ê+ý ê-ý ê,ý êý ê +ý ê -ý ê ý ê ý ê ý êý ë.ý ëý ëÝý ëþý ë .ý ë /ý ë ý ë ý ë ý ëý ì0ý ì1ý ì2ý ìþý ì 0ý ì 3ý ì ý ì ý ì ý ìý í4ý í ý í5ý íý í 4ý í 6ý í ý í ý í ý íý î7ý îvý îý îý î 7ý î 8ý î ý î ý î ý îý ï9ý ï:ý ïºý ïý ï 9ý ï ;ý ï ý ï ý ï ý ïý ð<ý ðý ð ý ðþý ð <ý ð =ý ð ý ð ý ð ý ðý ñ>ý ñ?ý ñ?ý ñý ñ >ý ñ @ý ñ ý ñ ý ñ ý ñý òAý òyý òBý òý ò Aý ò Cý ò ý ò ý ò ý òý óDý óeý óý óþý ó Dý ó Eý ó ý ó ý ó ý óý ôFý ôjý ôGý ôþý ô Fý ô Hý ô ý ô ý ô ý ôý õIý õËý õJý õþý õ Iý õ Ký õ ý õ ý õ ý õý öLý öMý öNý öý ö Lý ö Oý ö ý ö ý ö ý öý ÷Pý ÷Qý ÷Rý ÷þý ÷ Pý ÷ Sý ÷ ý ÷ ý ÷ ý ÷ý øTý øUý øý øþý ø Tý ø Vý ø ý ø ý ø ý øý ùWý ùXý ùYý ùþý ù Wý ù Zý ù ý ù ý ù ý ùý ú[ý ú\ý ú]ý úþý ú [ý ú ^ý ú ý ú ý ú ý úý û_ý ûeý û`ý ûý û _ý û aý û ý û ý û ý ûý übý ücý üdý üþý ü bý ü eý ü ý ü ý ü ý üý ýfý ý¶ý ýý ýý ý fý ý gý ý ý ý ý ý ý ýý þhý þ°ý þiý þý þ hý þ jý þ ý þ ý þ ý þý ÿký ÿ:ý ÿÆý ÿþý ÿ ký ÿ lý ÿ ý ÿ ý ÿ ý ÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý mý £ý ný þý  mý  oý  ý  ý  ý ý pý qý Gý þý  pý  rý  ý  ý  ý ý sý ný vý þý  sý  tý  ý  ý  ý ý uý +ý vý ý  uý  wý  ý  ý  ý ý xý ;ý yý þý  xý  zý  ý  ý  ý ý {ý °ý |ý þý  {ý  }ý  ý  ý  ý ý ~ý ý  ý þý  ~ý  €ý  ý  ý  ý ý ý ‚ý ý ý  ý  ƒý  ý  ý  ý ý „ý Äý 4ý þý  „ý  …ý  ý  ý  ý ý †ý ‡ý ˆý ý  †ý  ‰ý  ý  ý  ý ý Šý Tý ¨ý ý  Šý  ‹ý  ý  ý  ý ý Œý Šý ý ý  Œý  Žý  ý  ý  ý ý ý ý ‘ý ý  ý  ’ý  ý  ý  ý ý “ý :ý ”ý ý  “ý  •ý  ý  ý  ý ý –ý rý —ý þý  –ý  ˜ý  ý  ý  ý ý ™ý eý šý ý  ™ý  ›ý  ý  ý  ý ý œý ý žý ý  œý  Ÿý  ý  ý  ý ý  ý ²ý aý ý   ý  ¡ý  ý  ý  ý ý ¢ý £ý ¤ý þý  ¢ý  ¥ý  ý  ý  ý ý ¦ý §ý Gý þý  ¦ý  ¨ý  ý  ý  ý ý ©ý ùý ªý þý  ©ý  «ý  ý  ý  ý ý ¬ý ý ­ý þý  ¬ý  ®ý  ý  ý  ý ý ¯ý ý &ý þý  ¯ý  °ý  ý  ý  ý ý ±ý ý ²ý ý  ±ý  ³ý  ý  ý  ý ý ´ý µý ¶ý þý  ´ý  ·ý  ý  ý  ý ý ¸ý Wý ý ý  ¸ý  ¹ý  ý  ý  ý ý ºý Vý »ý ý  ºý  ¼ý  ý  ý  ý ý ½ý "ý ‰ý ý  ½ý  ¾ý  ý  ý  ý ý ¿ý  ý Àý þý  ¿ý  Áý  ý  ý  ý ý Âý Ãý Äý ý  Âý  Åý  ý  ý  ý ý Æý Çý jý þý  Æý  Èý  ý  ý  ý ý Éý ¶ý Êý ý  Éý  Ëý  ý  ý  ý  ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý Ìý Üý —ý þý  Ìý  Íý  ý  ý  ý ý !Îý !2ý !Ïý !þý ! Îý ! Ðý ! ý ! ý ! ý !ý "Ñý "Œý "Òý "ý " Ñý " Óý " ý " ý " ý "ý #Ôý #Bý #Õý #ý # Ôý # Öý # ý # ý # ý #ý $×ý $×ý $fý $þý $ ×ý $ Øý $ ý $ ý $ ý $ý %Ùý %õý %½ý %ý % Ùý % Úý % ý % ý % ý %ý &Ûý &Ný &éý &þý & Ûý & Üý & ý & ý & ý &ý 'Ýý 'Þý 'ßý 'þý ' Ýý ' àý ' ý ' ý ' ý 'ý (áý (“ý (âý (ý ( áý ( ãý ( ý ( ý ( ý (ý )äý )Jý )þý )þý ) äý ) åý ) ý ) ý ) ý )ý *æý *çý *èý *þý * æý * éý * ý * ý * ý *ý +êý +ëý +ìý +þý + êý + íý + ý + ý + ý +ý ,îý ,ïý ,ðý ,ý , îý , ñý , ý , ý , ý ,ý -òý -£ý -ý -ý - òý - óý - ý - ý - ý -ý .ôý .ý .õý .ý . ôý . öý . ý . ý . ý .ý /÷ý /Ìý /úý /þý / ÷ý / øý / ý / ý / ý /ý 0ùý 0Jý 0úý 0þý 0 ùý 0 ûý 0 ý 0 ý 0 ý 0ý 1üý 1ýý 1”ý 1þý 1 üý 1 þý 1 ý 1 ý 1 ý 1ý 2ÿý 2¹ý 2ý 2þý 2 ÿý 2 ý 2 ý 2 ý 2 ý 2ý 3ý 3îý 3[ý 3ý 3 ý 3 ý 3 ý 3 ý 3 ý 3ý 4ý 4ý 4#ý 4ý 4 ý 4 ý 4 ý 4 ý 4 ý 4ý 5ý 5oý 5&ý 5þý 5 ý 5 ý 5 ý 5 ý 5 ý 5ý 6ý 6 ý 6ý 6þý 6 ý 6  ý 6 ý 6 ý 6 ý 6ý 7 ý 7 ý 7 ý 7ý 7  ý 7 ý 7 ý 7 ý 7 ý 7ý 8ý 8ý 8ý 8þý 8 ý 8 ý 8 ý 8 ý 8 ý 8ý 9ý 9Bý 9ý 9þý 9 ý 9 ý 9 ý 9 ý 9 ý 9ý :ý :-ý :‰ý :ý : ý : ý : ý : ý : ý :ý ;ý ; ý ;1ý ;þý ; ý ; ý ; ý ; ý ; ý ;ý <ý <ý <ý <þý < ý < ý < ý < ý < ý <ý =ý =ý =0ý =þý = ý = ý = ý = ý = ý =ý > ý >Ný >ý >þý >  ý > !ý > ý > ý > ý >ý ?"ý ?ý ?#ý ?ý ? "ý ? $ý ? ý ? ý ? ý ?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @%ý @&ý @'ý @ý @ %ý @ (ý @ ý @ ý @ ý @ý A)ý Aòý A*ý Aþý A )ý A +ý A ý A ý A ý Aý B,ý B-ý B&ý Bþý B ,ý B .ý B ý B ý B ý Bý C/ý C0ý C1ý Cþý C /ý C 2ý C ý C ý C ý Cý D3ý DÜý D ý Dý D 3ý D 4ý D ý D ý D ý Dý E5ý E6ý Eý Eý E 5ý E 6ý E ý E ý E ý Eý F7ý F8ý Fý Fþý F 7ý F 9ý F ý F ý F ý Fý G:ý G0ý GFý Gþý G :ý G ;ý G ý G ý G ý Gý H<ý HJý H=ý Hþý H <ý H >ý H ý H ý H ý Hý I?ý I@ý Iný Iþý I ?ý I Aý I ý I ý I ý Iý JBý JCý J;ý Jý J Bý J Dý J ý J ý J ý Jý KEý Kòý KÓý Ký K Eý K Fý K ý K ý K ý Ký LGý LHý Lßý Lþý L Gý L Iý L ý L ý L ý Lý MJý MKý MLý Mý M Jý M Mý M ý M ý M ý Mý NNý N=ý NOý Nþý N Ný N Pý N ý N ý N ý Ný OQý ORý OSý Oý O Qý O Tý O ý O ý O ý Oý PUý PVý Pþý Pý P Uý P Wý P ý P ý P ý Pý QXý QYý Q[ý Qþý Q Xý Q Zý Q ý Q ý Q ý Qý R[ý RPý R\ý Rþý R [ý R ]ý R ý R ý R ý Rý S^ý S£ý S_ý Sý S ^ý S `ý S ý S ý S ý Sý Taý Tµý T"ý Tþý T aý T bý T ý T ý T ý Tý Ucý Uaý U—ý Uþý U cý U dý U ý U ý U ý Uý Veý V™ý VMý Vý V eý V fý V ý V ý V ý Vý Wgý W‡ý Wžý Wý W gý W hý W ý W ý W ý Wý Xiý Xjý Xký Xþý X iý X lý X ý X ý X ý Xý Ymý YÃý Yný Yþý Y mý Y oý Y ý Y ý Y ý Yý Zpý Zeý ZÁý Zþý Z pý Z qý Z ý Z ý Z ý Zý [rý [sý [Jý [þý [ rý [ tý [ ý [ ý [ ý [ý \uý \ý \ný \ý \ uý \ vý \ ý \ ý \ ý \ý ]wý ]xý ]ý ]ý ] wý ] yý ] ý ] ý ] ý ]ý ^zý ^-ý ^Âý ^þý ^ zý ^ {ý ^ ý ^ ý ^ ý ^ý _|ý _ý _|ý _ý _ |ý _ }ý _ ý _ ý _ ý _`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `~ý `oý `ý `þý ` ~ý ` €ý ` ý ` ý ` ý `ý aý a ý aý aþý a ý a ‚ý a ý a ý a ý aý bƒý bŒý b“ý bþý b ƒý b „ý b ý b ý b ý bý c…ý ceý c†ý cý c …ý c ‡ý c ý c ý c ý cý dˆý d‰ý dý dþý d ˆý d Šý d ý d ý d ý dý e‹ý eõý e©ý eý e ‹ý e Œý e ý e ý e ý eý fý füý fˆý fþý f ý f Žý f ý f ý f ý fý gý gý g‘ý gý g ý g ’ý g ý g ý g ý gý h“ý hý h”ý hþý h “ý h •ý h ý h ý h ý hý i–ý i"ý i\ý iý i –ý i —ý i ý i ý i ý iý j˜ý j2ý j™ý jý j ˜ý j šý j ý j ý j ý jý k›ý kœý ký ký k ›ý k ý k ý k ý k ý ký lžý lŸý lOý lý l žý l  ý l ý l ý l ý lý m¡ý m–ý m~ý mþý m ¡ý m ¢ý m ý m ý m ý mý n£ý ný nƒý ný n £ý n ¤ý n ý n ý n ý ný o¥ý o¦ý o§ý oþý o ¥ý o ¨ý o ý o ý o ý oý p©ý pÑý pªý pý p ©ý p «ý p ý p ý p ý pý q¬ý q­ý q®ý qý q ¬ý q ¯ý q ý q ý q ý qý r°ý rüý r±ý rþý r °ý r ²ý r ý r ý r ý rý s³ý s´ý sµý sý s ³ý s ¶ý s ý s ý s ý sý t·ý t%ý t°ý tý t ·ý t ¸ý t ý t ý t ý tý u¹ý uºý uý uþý u ¹ý u »ý u ý u ý u ý uý v¼ý vý v­ý vý v ¼ý v ½ý v ý v ý v ý vý w¾ý wçý wGý wý w ¾ý w ¿ý w ý w ý w ý wý xÀý xÁý xÂý xþý x Àý x Ãý x ý x ý x ý xý yÄý yÅý yÆý yý y Äý y Çý y ý y ý y ý yý zÈý z?ý zÉý zþý z Èý z Êý z ý z ý z ý zý {Ëý {Ìý {Íý {þý { Ëý { Îý { ý { ý { ý {ý |Ïý |Jý |Ðý |ý | Ïý | Ñý | ý | ý | ý |ý }Òý }Óý },ý }þý } Òý } Ôý } ý } ý } ý }ý ~Õý ~ý ~Öý ~ý ~ Õý ~ ×ý ~ ý ~ ý ~ ý ~ý Øý Ký ïý þý  Øý  Ùý  ý  ý  ý €ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €Úý €Èý €Óý €þý € Úý € Ûý € ý € ý € ý €ý Üý Uý 7ý ý  Üý  Ýý  ý  ý  ý ý ‚Þý ‚Jý ‚þý ‚þý ‚ Þý ‚ ßý ‚ ý ‚ ý ‚ ý ‚ý ƒàý ƒý ƒ"ý ƒý ƒ àý ƒ áý ƒ ý ƒ ý ƒ ý ƒý „âý „ãý „æý „ý „ âý „ äý „ ý „ ý „ ý „ý …åý …æý …çý …þý … åý … èý … ý … ý … ý …ý †éý †êý †ëý †ý † éý † ìý † ý † ý † ý †ý ‡íý ‡[ý ‡iý ‡þý ‡ íý ‡ îý ‡ ý ‡ ý ‡ ý ‡ý ˆïý ˆqý ˆ*ý ˆþý ˆ ïý ˆ ðý ˆ ý ˆ ý ˆ ý ˆý ‰ñý ‰Vý ‰µý ‰þý ‰ ñý ‰ òý ‰ ý ‰ ý ‰ ý ‰ý Šóý Šôý Šõý Šý Š óý Š öý Š ý Š ý Š ý Šý ‹÷ý ‹øý ‹ý ‹þý ‹ ÷ý ‹ ùý ‹ ý ‹ ý ‹ ý ‹ý Œúý Œûý Œöý Œý Œ úý Œ üý Œ ý Œ ý Œ ý Œý ýý ¤ý sý ý  ýý  þý  ý  ý  ý ý Žÿý Žoý ŽGý Žþý Ž ÿý Ž ý Ž ý Ž ý Ž ý Žý ý Mý ý ý  ý  ý  ý  ý  ý ý ý îý ý þý  ý  ý  ý  ý  ý ý ‘ý ‘rý ‘ºý ‘þý ‘ ý ‘ ý ‘ ý ‘ ý ‘ ý ‘ý ’ý ’‰ý ’ý ’þý ’ ý ’ ý ’ ý ’ ý ’ ý ’ý “ ý “£ý “ ý “þý “  ý “  ý “ ý “ ý “ ý “ý ” ý ” ý ”ý ”ý ”  ý ” ý ” ý ” ý ” ý ”ý •ý •ý •Èý •þý • ý • ý • ý • ý • ý •ý –ý –Óý –ëý –þý – ý – ý – ý – ý – ý –ý —ý —²ý —šý —þý — ý — ý — ý — ý — ý —ý ˜ý ˜2ý ˜ý ˜þý ˜ ý ˜ ý ˜ ý ˜ ý ˜ ý ˜ý ™ý ™ý ™|ý ™ý ™ ý ™ ý ™ ý ™ ý ™ ý ™ý šý šý šý šþý š ý š ý š ý š ý š ý šý ›ý ›êý ›“ý ›ý › ý ›  ý › ý › ý › ý ›ý œ!ý œ"ý œ¼ý œþý œ !ý œ #ý œ ý œ ý œ ý œý $ý öý Òý þý  $ý  %ý  ý  ý  ý ý ž&ý ž'ý ž—ý žþý ž &ý ž (ý ž ý ž ý ž ý žý Ÿ)ý Ÿ*ý Ÿ+ý Ÿý Ÿ )ý Ÿ ,ý Ÿ ý Ÿ ý Ÿ ý Ÿ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  -ý  eý  ×ý  þý   -ý   .ý   ý   ý   ý  ý ¡/ý ¡0ý ¡²ý ¡þý ¡ /ý ¡ 1ý ¡ ý ¡ ý ¡ ý ¡ý ¢2ý ¢¤ý ¢3ý ¢ý ¢ 2ý ¢ 4ý ¢ ý ¢ ý ¢ ý ¢ý £5ý £òý £âý £ý £ 5ý £ 6ý £ ý £ ý £ ý £ý ¤7ý ¤0ý ¤»ý ¤þý ¤ 7ý ¤ 8ý ¤ ý ¤ ý ¤ ý ¤ý ¥9ý ¥Ïý ¥:ý ¥ý ¥ 9ý ¥ ;ý ¥ ý ¥ ý ¥ ý ¥ý ¦<ý ¦¬ý ¦Cý ¦ý ¦ <ý ¦ =ý ¦ ý ¦ ý ¦ ý ¦ý §>ý §Ný § ý §þý § >ý § ?ý § ý § ý § ý §ý ¨@ý ¨ýý ¨ý ¨ý ¨ @ý ¨ Aý ¨ ý ¨ ý ¨ ý ¨ý ©Bý ©Cý ©Dý ©ý © Bý © Eý © ý © ý © ý ©ý ªFý ª£ý ªçý ªý ª Fý ª Gý ª ý ª ý ª ý ªý «Hý «úý «rý «ý « Hý « Iý « ý « ý « ý «ý ¬Jý ¬oý ¬ïý ¬ý ¬ Jý ¬ Ký ¬ ý ¬ ý ¬ ý ¬ý ­Lý ­Mý ­Ný ­þý ­ Lý ­ Oý ­ ý ­ ý ­ ý ­ý ®Pý ®šý ®“ý ®ý ® Pý ® Qý ® ý ® ý ® ý ®ý ¯Rý ¯Sý ¯ ý ¯þý ¯ Rý ¯ Tý ¯ ý ¯ ý ¯ ý ¯ý °Uý °-ý °³ý °ý ° Uý ° Vý ° ý ° ý ° ý °ý ±Wý ±ý ± ý ±þý ± Wý ± Xý ± ý ± ý ± ý ±ý ²Yý ²ïý ²Zý ²þý ² Yý ² [ý ² ý ² ý ² ý ²ý ³\ý ³5ý ³Yý ³þý ³ \ý ³ ]ý ³ ý ³ ý ³ ý ³ý ´^ý ´òý ´_ý ´ý ´ ^ý ´ `ý ´ ý ´ ý ´ ý ´ý µaý µý µbý µý µ aý µ cý µ ý µ ý µ ý µý ¶dý ¶ ý ¶Cý ¶ý ¶ dý ¶ eý ¶ ý ¶ ý ¶ ý ¶ý ·fý ·gý ·ý ·ý · fý · hý · ý · ý · ý ·ý ¸iý ¸jý ¸ký ¸ý ¸ iý ¸ lý ¸ ý ¸ ý ¸ ý ¸ý ¹mý ¹ý ¹ný ¹þý ¹ mý ¹ oý ¹ ý ¹ ý ¹ ý ¹ý ºpý ºý ºqý ºþý º pý º rý º ý º ý º ý ºý »sý » ý »tý »ý » sý » uý » ý » ý » ý »ý ¼vý ¼wý ¼Þý ¼þý ¼ vý ¼ xý ¼ ý ¼ ý ¼ ý ¼ý ½yý ½Hý ½zý ½þý ½ yý ½ {ý ½ ý ½ ý ½ ý ½ý ¾|ý ¾hý ¾°ý ¾þý ¾ |ý ¾ }ý ¾ ý ¾ ý ¾ ý ¾ý ¿~ý ¿ ý ¿–ý ¿þý ¿ ~ý ¿ ý ¿ ý ¿ ý ¿ ý ¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿý À€ý Àý À7ý Àþý À €ý À ‚ý À ý À ý À ý Àý Áƒý ÁŒý Áý Áý Á ƒý Á „ý Á ý Á ý Á ý Áý Â…ý ÂCý ªý Âý  …ý  †ý  ý  ý  ý Âý Çý Ãý Âý Ãý à ‡ý à ˆý à ý à ý à ý Ãý ĉý ÄÅý Äjý Äþý Ä ‰ý Ä Šý Ä ý Ä ý Ä ý Äý Å‹ý Ŧý Åúý Åþý Å ‹ý Å Œý Å ý Å ý Å ý Åý Æý ÆŠý Æ”ý Æþý Æ ý Æ Žý Æ ý Æ ý Æ ý Æý Çý Çý Ç‘ý Çý Ç ý Ç ’ý Ç ý Ç ý Ç ý Çý È“ý Ⱥý È”ý Èþý È “ý È •ý È ý È ý È ý Èý É–ý É—ý ɘý Éþý É –ý É ™ý É ý É ý É ý Éý Êšý Êrý Êoý Êþý Ê šý Ê ›ý Ê ý Ê ý Ê ý Êý Ëœý Ëý ËÉý Ëþý Ë œý Ë žý Ë ý Ë ý Ë ý Ëý ÌŸý ÌVý Ì`ý Ìþý Ì Ÿý Ì  ý Ì ý Ì ý Ì ý Ìý Í¡ý Í„ý Íúý Íý Í ¡ý Í ¢ý Í ý Í ý Í ý Íý Σý Τý Î¥ý Îý Î £ý Î ¦ý Î ý Î ý Î ý Îý ϧý ÏŒý Ϩý Ïý Ï §ý Ï ©ý Ï ý Ï ý Ï ý Ïý Ъý Ð_ý Ð'ý Ðý Ð ªý Ð «ý Ð ý Ð ý Ð ý Ðý Ѭý ÑJý Ñ3ý Ñý Ñ ¬ý Ñ ­ý Ñ ý Ñ ý Ñ ý Ñý Ò®ý Òý Ò|ý Òþý Ò ®ý Ò ¯ý Ò ý Ò ý Ò ý Òý Ó°ý Ó§ý Ó±ý Óþý Ó °ý Ó ²ý Ó ý Ó ý Ó ý Óý Ô³Ôý ÔùÔý Ô”¾ Ôý Ôý Ô ³¾Ô ý Õ´Õý ÕµÕý Õö¾ Õý Õþý Õ ´¾Õ ý Ö¶Öý Ö&Öý Öd¾ Öý Öý Ö ¶¾Ö ý ×·×ý ׸×ý ×y¾ ×ý ×ý × ·¾× ý عØý ØBØý ØY¾ Øý Øþý Ø ¹¾Ø ý ÙºÙý ÙjÙý Ù ¾ Ùý Ùþý Ù º¾Ù ìPðHPðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚%"&C&"Times New Roman,Normalus"&12&A,)&C&"Times New Roman,Normalus"&12Página &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } U } ¯}  } ÷ }  } –} A} } ,} û} ƒ} ¿ } Ä } _ } ¡} # } ” ßÿÿÿ ÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿ ÿÿÿ ÿÿ ÿÿÿÿÿ ÿ ÿÿý ý ëý ìý íý îý ïý »ý ¼ý ½ý ¾ý ¿ý Àý Áý Âý Ãý Äý õý Åý ý ýý Æý ý  Çý  ý  Èý Éý Êý Ëý ý Ìý ý  Çý  ý  Íý  Îý Ïý *ý  ý Ðý ý  Çý  ý  Ñý  Òý Óý Ôý ý Õý ý  Çý  ý  Öý  ×ý Øý Ùý Úý ý Ûý ý  Çý  ý  Üý Ýý Þý ‰ý ý ßý ý  Çý  ý  àý  áý âý ãý ý äý ý  Çý  ý  åý  æý çý èý Ëý ý éý ý  Çý  ý  êý ëý ìý íý #ý îý ý Çý ý ïý ðý ¶ý 'ý ñý ý Çý ý òý óý ôý õý +ý öý ý Çý ý ÷ý øý ùý úý /ý ûý ý Çý ý üý ýý þý 3ý ÿý ý Çý ý ý ý ý ý 7ý ý ý  Çý  ý  ý ý ý ;ý ý ý  Çý  ý   ý   ý  ý  ý ?ý  ý ý  Çý  ý  ý  ý ý ý ý Cý ý ý  Çý  ý  ý  ý ý ý ý Gý ý ý  Çý  ý  ý  ý ý ý jý Ký ý ý  Çý  ý  ý  ý !ý Oý "ý ý  Çý  ý  #ý $ý %ý ²ý Sý &ý ý  Çý  ý  'ý  (ý )ý *ý +ý Wý ,ý ý  Çý  ý  -ý  .ý /ý &ý [ý 0ý ý  Çý  ý  1ý 2ý 3ý 4ý 'ý 5ý ý  Çý  ý  6ý 7ý Œý bý 8ý ý  Çý  ý  9ý :ý ;ý <ý fý =ý ý  Çý  ý  >ý  ?ý @ý Aý jý Bý ý  Çý  ý  Cý Dý Eý Fý Gý ný Hý ý  Çý  ý  Iý Jý Ký Lý Mý rý Ný ý  Çý  ý  Oý Pý 5ý vý Qý ý  Çý  ý  Rý Sý Tý zý Uý ý  Çý  ý  Vý  W ÿ!ÿ"ÿ# ÿ$ÿ%ÿ&ÿ' ÿ(ÿ)ÿ*ÿ+ÿ, ÿ-ÿ. ÿ/ÿ0 ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8 ÿ9ÿ:ÿ;ÿ<ÿ= ÿ> ÿ?ÿý Xý šý ~ý Yý ý Çý ý Zý ![ý !\ý !‚ý !]ý !ý ! Çý ! ý ! ^ý !_ý !`ý "aý "ý "†ý "bý "ý " Çý " ý " cý "dý "eý #fý #gý #?ý #hý #ý # Çý # ý # iý $jý $Åý $zý $ký $ý $ Çý $ ý $ lý $ mý %ný %oý %ý %pý %ý % Çý % ý % qý % rý &sý &ý &“ý &tý &ý & Çý & ý & uý &vý 'wý 'xý '–ý 'yý 'ý ' Çý ' ý ' zý ' {ý (|ý (4ý (šý (}ý (ý ( Çý ( ý ( ~ý (ý )€ý )ý )ý )ý )ý ) Çý ) ý ) ‚ý )ƒý )„ý *…ý *†ý *ý *‡ý *ý * Çý * ý * ˆý * ‰ý +Šý +‹ý +¤ý +Œý +ý + Çý + ý + 'ý + ý +Žý ,ý ,ý ,¨ý ,‘ý ,ý , Çý , ý , ’ý -“ý -”ý -ý -•ý -ý - Çý - ý - –ý -—ý -˜ý .™ý .ý .¯ý .šý .ý . Çý . ý . ›ý /œý /ý /—ý /žý /ý / Çý / ý / Ÿý /  ý /¡ý 0¢ý 0„ý 0£ý 0¤ý 0ý 0 Çý 0 ý 0 ¥ý 0 ¦ý 1§ý 1šý 1¨ý 1©ý 1ý 1 Çý 1 ý 1 ªý 1 «ý 1¬ý 2­ý 2ý 2Åý 2®ý 2ý 2 Çý 2 ý 2 ¯ý 2°ý 3±ý 3²ý 3ý 3³ý 3ý 3 Çý 3 ý 3 ´ý 3µý 4¶ý 4·ý 4¸ý 4¹ý 4ý 4 Çý 4 ý 4 ºý 4 »ý 4¼ý 5½ý 5¾ý 5¿ý 5Àý 5ý 5 Çý 5 ý 5 Áý 5Âý 6Ãý 6—ý 6Äý 6Åý 6ý 6 Çý 6 ý 6 Æý 6Çý 6Èý 7Éý 7ý 7Êý 7Ëý 7ý 7 Çý 7 ý 7 Ìý 7 Íý 7Îý 8Ïý 8Ðý 8©ý 8Ñý 8ý 8 Çý 8 ý 8 Òý 8 Óý 9Ôý 9Õý 9šý 9Öý 9ý 9 Çý 9 ý 9 ×ý 9 Øý 9Ùý :Úý :Ûý :Üý :Ýý :ý : Çý : ý : Þý :ßý ;àý ;áý ;âý ;ãý ;ý ; Çý ; ý ; äý ; åý <æý <Wý <çý <èý <ý < Çý < ý < éý < êý <ëý =ìý =íý =±ý =îý =ý = Çý = ý = ïý >ðý >`ý >ñý >òý >ý > Çý > ý > óý ?ôý ?Úý ?õý ?öý ?ý ? Çý ? ý ? ÷ý ? øý ?ù@ ÿAÿBÿCÿDÿEÿF ÿGÿHÿI ÿJÿKÿL ÿM ÿNÿOÿPÿQÿRÿSÿTÿUÿVÿW ÿXÿYÿZÿ[ÿ\ ÿ]ÿ^ ÿ_ÿý @úý @ûý @¥ý @üý @ý @ Çý @ ý @ ýý Aþý Aý Aÿý Aý Aý A Çý A ý A ý A ý Bý Bý BOý Bý Bý B Çý B ý B ý Bý Bý C ý C ý C ý C ý Cý C Çý C ý C  ý Cý Dý Dý Dý Dý Dý D Çý D ý D ý D ý Dý Eý Eý Eý Eý Eý E Çý E ý E ý E ý Fý Fý Fý Fý Fý F Çý F ý F ý F  ý G!ý G"ý G#ý G$ý Gý G Çý G ý G %ý G &ý G'ý H(ý H)ý HÄý H*ý Hý H Çý H ý H +ý H ,ý I-ý I.ý Išý I/ý Iý I Çý I ý I 0ý I 1ý J2ý JÓý J3ý J4ý Jý J Çý J ý J ~ý J 5ý K6ý K7ý K8ý K9ý Ký K Çý K ý K :ý K;ý K<ý L=ý L>ý L?ý L@ý Lý L Çý L ý L Aý L Bý MCý MDý MEý MFý Mý M Çý M ý M Gý NHý N0ý NIý NJý Ný N Çý N ý N Ký NLý OMý O†ý ONý OOý Oý O Çý O ý O Pý O Qý ORý PSý PTý Pgý PUý Pý P Çý P ý P Vý PWý PXý QYý Q…ý QZý Q[ý Qý Q Çý Q ý Q \ý Q]ý Q^ý R_ý R`ý RÐý Raý Rý R Çý R ý R bý Rcý Rdý Seý Sqý Soý Sfý Sý S Çý S ý S gý Shý Tiý T ý TÝý Tjý Tý T Çý T ý T ký T lý Tmý Uný Uoý Upý Uqý Uý U Çý U ý U rý U sý Vtý Vuý Všý Vvý Vý V Çý V ý V wý Vxý Vyý Wzý W„ý Wïý W{ý Wý W Çý W ý W |ý W }ý X~ý Xý X€ý Xý Xý X Çý X ý X ‚ý X ƒý X„ý Y…ý Y†ý Y‡ý Yˆý Yý Y Çý Y ý Y ‰ý YŠý Y‹ý ZŒý Zý ZŽý Zý Zý Z Çý Z ý Z ý Z ‘ý [’ý [“ý [”ý [•ý [ý [ Çý [ ý [ –ý [—ý [˜ý \™ý \Ûý \šý \›ý \ý \ Çý \ ý \ œý ]ý ]ý ]žý ]Ÿý ]ý ] Çý ] ý ]  ý ] ¡ý ]¢ý ^£ý ^¤ý ^tý ^¥ý ^ý ^ Çý ^ ý ^ ¦ý _§ý _&ý _¨ý _©ý _ý _ Çý _ ý _ ªý _«ý _¬` ÿaÿbÿcÿdÿe ÿfÿgÿh ÿiÿjÿkÿlÿm ÿn ÿoÿpÿqÿr ÿsÿtÿu ÿvÿwÿx ÿy ÿzÿ{ÿ|ÿ}ÿ~ ÿ ÿý `­ý `®ý `¯ý `°ý `ý ` Çý ` ý ` ±ý ` ²ý a³ý a´ý aµý a¶ý aý a Çý a ý a ·ý a ¸ý b¹ý bºý b»ý b¼ý bý b Çý b ý b ½ý b¾ý c¿ý cý cÀý cÁý cý c Çý c ý c Âý cÃý cÄý dÅý dïý dÆý dÇý dý d Çý d ý d Èý d Éý eÊý eËý eïý eÌý eý e Çý e ý e Íý fÎý fÏý fãý fÐý fý f Çý f ý f Ñý f Òý fÓý gÔý g²ý gÕý gÖý gý g Çý g ý g éý g×ý gØý hÙý hÚý hÛý hÜý hý h Çý h ý h Ýý iÞý ißý iyý iàý iý i Çý i ý i áý i âý iãý jäý jåý jæý jçý jý j Çý j ý j èý jéý jêý këý kˆý k—ý kìý ký k Çý k ý k íý k îý lïý lúý lðý lñý lý l Çý l ý l òý l óý môý mõý mïý möý mý m Çý m ý m ÷ý m øý nùý núý nûý nüý ný n Çý n ý n ýý oþý oMý oÿý o ý oý o Çý o ý o  ý o  ý o ý p ý p ý p ý p ý pý p Çý p ý p  ý p  ý q ý q ý q ý q ý qý q Çý q ý q  ý q ý q ý r ý r ý r ý r ý rý r Çý r ý r éý r  ý s ý sšý szý s ý sý s Çý s ý s  ý s  ý s ý t ý t ý t ý t ý tý t Çý t ý t  ý t ý u! ý u" ý u# ý u$ ý uý u Çý u ý u % ý v& ý v ý v' ý v( ý vý v Çý v ý v ) ý v* ý v+ ý w, ý w- ý w. ý w/ ý wý w Çý w ý w Èý w 0 ý w1 ý x2 ý xý x3 ý x4 ý xý x Çý x ý x Iý y5 ý y6 ý y7 ý y8 ý yý y Çý y ý y 9 ý y : ý z; ý z5ý z—ý z< ý zý z Çý z ý z = ý z > ý z? ý {@ ý {ý {A ý {B ý {ý { Çý { ý { C ý { D ý {E ý |F ý |Ùý |ý |G ý |ý | Çý | ý | H ý | I ý |J ý }K ý }àý }L ý }M ý }ý } Çý } ý } N ý } O ý }P ý ~Q ý ~Ûý ~ïý ~R ý ~ý ~ Çý ~ ý ~ S ý T ý U ý V ý W ý ý  Çý  ý  X ý  Y €ÿÿ‚ÿƒ ÿ„ÿ…ÿ†ÿ‡ÿˆ ÿ‰ÿŠÿ‹ÿŒÿ ÿŽÿÿ ÿ‘ÿ’ÿ“ÿ”ÿ• ÿ–ÿ— ÿ˜ ÿ™ÿšÿ› ÿœÿ ÿžÿŸ ÿý €Z ý €ûý €°ý €[ ý €ý € Çý € ý € \ ý €] ý €^ ý _ ý ` ý a ý b ý ý Çý ý c ý d ý e ý ‚f ý ‚ ý ‚g ý ‚h ý ‚ý ‚ Çý ‚ ý ‚ i ý ‚ j ý ‚k ý ƒl ý ƒûý ƒm ý ƒn ý ƒý ƒ Çý ƒ ý ƒ o ý ƒ p ý „q ý „¯ý „Oý „r ý „ý „ Çý „ ý „ s ý „ t ý „u ý …v ý …w ý …tý …x ý …ý … Çý … ý … y ý … z ý †{ ý †| ý †} ý †~ ý †ý † Çý † ý †  ý †€ ý ‡ ý ‡ûý ‡‚ ý ‡ƒ ý ‡ý ‡ Çý ‡ ý ‡ „ ý ‡… ý ˆ† ý ˆ‡ ý ˆ ý ˆˆ ý ˆý ˆ Çý ˆ ý ˆ ‰ ý ‰Š ý ‰Ný ‰‹ ý ‰Œ ý ‰ý ‰ Çý ‰ ý ‰  ý ‰ Ž ý ‰ ý Š ý Š‘ ý Š’ ý Š“ ý Šý Š Çý Š ý Š ” ý Š• ý ‹– ý ‹— ý ‹˜ ý ‹™ ý ‹ý ‹ Çý ‹ ý ‹ š ý ‹ › ý ‹œ ý Œ ý Œž ý ŒŸ ý Œ  ý Œý Œ Çý Œ ý Œ  ý Œ ¡ ý Œ¢ ý £ ý ý ¤ ý ¥ ý ý Çý ý  ý ަ ý Žý ŽZý ާ ý Žý Ž Çý Ž ý Ž ¨ ý Ž © ý Žª ý « ý úý ¬ ý ­ ý ý Çý ý ® ý ¯ ý ° ý ± ý Ëý ² ý ³ ý ý Çý ý ´ ý µ ý ‘¶ ý ‘· ý ‘ý ‘¸ ý ‘ý ‘ Çý ‘ ý ‘ ¹ ý ‘º ý ’» ý ’…ý ’¼ ý ’½ ý ’ý ’ Çý ’ ý ’ ¾ ý ’ ¿ ý ’À ý “Á ý “ ý “à ý “Ä ý “ý “ Çý “ ý “ Å ý “ Æ ý “Ç ý ”È ý ”É ý ”Ê ý ”Ë ý ”ý ” Çý ” ý ” Ì ý ”Í ý •Î ý •šý •Ï ý •Ð ý •ý • Çý • ý • Ñ ý –Ò ý –Ó ý –Ô ý –Õ ý –ý – Çý – ý – Iý –Ö ý —× ý —Ø ý —8ý —Ù ý —ý — Çý — ý — Ú ý — Û ý ˜Ü ý ˜Œý ˜Ý ý ˜Þ ý ˜ý ˜ Çý ˜ ý ˜ ß ý ˜ à ý ™á ý ™ý ™â ý ™ã ý ™ý ™ Çý ™ ý ™ ä ý ™å ý šæ ý š.ý š¤ ý šç ý šý š Çý š ý š è ý šé ý ›ê ý ›ë ý ›ì ý ›í ý ›ý › Çý › ý › î ý œï ý œ…ý œý œð ý œý œ Çý œ ý œ ñ ý œò ý ó ý ¤ý ïý ô ý ý Çý ý õ ý žö ý žý žý ž÷ ý žý ž Çý ž ý ž ø ý ž ù ý Ÿú ý Ÿ ý Ÿû ý Ÿü ý Ÿý Ÿ Çý Ÿ ý Ÿ ý ý Ÿ þ  ÿ¡ÿ¢ÿ£ ÿ¤ÿ¥ ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ ÿµÿ¶ÿ·ÿ¸ÿ¹ÿº ÿ»ÿ¼ ÿ½ ÿ¾ÿ¿ÿý  ÿ ý   ý   ý   ý  ý   Çý   ý    ý    ý   ý ¡ ý ¡ ý ¡ ý ¡ ý ¡ý ¡ Çý ¡ ý ¡  ý ¡ ý ¡ ý ¢ ý ¢ ý ¢ ý ¢ ý ¢ý ¢ Çý ¢ ý ¢  ý ¢ ý ¢ ý £ ý £ ý £ ý £ ý £ý £ Çý £ ý £  ý £  ý ¤ ý ¤Wý ¤¯ý ¤ ý ¤ý ¤ Çý ¤ ý ¤  ý ¤  ý ¤ ý ¥ ý ¥âý ¥ ý ¥! ý ¥ý ¥ Çý ¥ ý ¥ ä ý ¥ " ý ¦# ý ¦\ý ¦$ ý ¦% ý ¦ý ¦ Çý ¦ ý ¦ & ý ¦' ý ¦( ý §) ý §* ý §+ ý §, ý §ý § Çý § ý § - ý §. ý ¨/ ý ¨0 ý ¨1 ý ¨2 ý ¨ý ¨ Çý ¨ ý ¨  ý ¨ 3 ý ©4 ý ©¤ý ©5 ý ©6 ý ©ý © Çý © ý © 7 ý © 8 ý ª9 ý ª: ý ª; ý ª< ý ªý ª Çý ª ý ª = ý ª> ý «? ý «`ý «@ ý «A ý «ý « Çý « ý « B ý « C ý «D ý ¬E ý ¬F ý ¬ý ¬G ý ¬ý ¬ Çý ¬ ý ¬ H ý ¬I ý ­J ý ­K ý ­L ý ­M ý ­ý ­ Çý ­ ý ­ N ý ­ O ý ®P ý ®Q ý ®R ý ®S ý ®ý ® Çý ® ý ® T ý ® U ý ®V ý ¯W ý ¯X ý ¯Y ý ¯Z ý ¯ý ¯ Çý ¯ ý ¯ [ ý ¯ \ ý ¯] ý °^ ý °_ ý °` ý °a ý °ý ° Çý ° ý ° b ý °c ý ±d ý ±ßý ±e ý ±f ý ±ý ± Çý ± ý ± g ý ±h ý ²i ý ²j ý ²ý ²k ý ²ý ² Çý ² ý ² ±ý ² l ý ³m ý ³n ý ³o ý ³p ý ³ý ³ Çý ³ ý ³ q ý ³r ý ´s ý ´Ný ´t ý ´u ý ´ý ´ Çý ´ ý ´ v ý µw ý µý µ ý µx ý µý µ Çý µ ý µ T ý µ y ý µz ý ¶{ ý ¶| ý ¶} ý ¶~ ý ¶ý ¶ Çý ¶ ý ¶  ý ¶ € ý · ý ·‚ ý ·Íý ·ƒ ý ·ý · Çý · ý · „ ý ·… ý ¸† ý ¸°ý ¸‡ ý ¸ˆ ý ¸ý ¸ Çý ¸ ý ¸ ‰ ý ¸ Š ý ¸‹ ý ¹Œ ý ¹ ý ¹Ž ý ¹ ý ¹ý ¹ Çý ¹ ý ¹  ý ¹‘ ý º’ ý ºXý ºý º“ ý ºý º Çý º ý º ” ý »• ý »ûý »– ý »— ý »ý » Çý » ý » ˜ ý »™ ý ¼š ý ¼®ý ¼› ý ¼œ ý ¼ý ¼ Çý ¼ ý ¼  ý ½ž ý ½šý ½Ÿ ý ½  ý ½ý ½ Çý ½ ý ½ ¡ ý ¾¢ ý ¾4ý ¾£ ý ¾¤ ý ¾ý ¾ Çý ¾ ý ¾ Iý ¾ ¥ ý ¾¦ ý ¿§ ý ¿*ý ¿—ý ¿¨ ý ¿ý ¿ Çý ¿ ý ¿ © ý ¿ª ÀÿÁÿÂÿà ÿÄÿÅ ÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎ ÿÏ ÿÐÿÑÿÒ ÿÓÿÔÿÕÿÖÿ×ÿØ ÿÙÿÚÿÛÿÜ ÿÝÿÞ ÿßÿý À« ý Àjý À¬ ý À­ ý Àý À Çý À ý À ® ý À ¯ ý À° ý Á± ý Á² ý Á³ ý Á´ ý Áý Á Çý Á ý Á µ ý Á ¶ ý Á· ý ¸ ý ¹ ý º ý » ý Âý  Çý  ý  ¼ ý  ½ ý þ ý ÿ ý ÃÀ ý ÃÁ ý Ãý à Çý à ý à  ý à à ý ÄÄ ý ÄÅ ý ÄÆ ý ÄÇ ý Äý Ä Çý Ä ý Ä ” ý ÄÈ ý ÅÉ ý ÅÊ ý ÅË ý ÅÌ ý Åý Å Çý Å ý Å Í ý ÆÎ ý ÆÏ ý ÆÐ ý ÆÑ ý Æý Æ Çý Æ ý Æ Ò ý Æ Ó ý ÆÔ ý ÇÕ ý ÇÖ ý Ç× ý ÇØ ý Çý Ç Çý Ç ý Ç C ý Ç Ù ý ÈÚ ý Èý ÈÛ ý ÈÜ ý Èý È Çý È ý È Ý ý ÈÞ ý Èß ý Éà ý ÉK ý Éá ý Éâ ý Éý É Çý É ý É ã ý Éä ý Êå ý Êæ ý Êç ý Êè ý Êý Ê Çý Ê ý Ê é ý Êê ý Ëë ý Ëì ý Ëžý Ëí ý Ëý Ë Çý Ë ý Ë î ý Ëï ý Ëð ý Ìñ ý Ì„ý Ìðý Ìò ý Ìý Ì Çý Ì ý Ì ó ý Ì ô ý Ìõ ý Íö ý Íçý Í÷ ý Íø ý Íý Í Çý Í ý Í ù ý Íú ý Îû ý Îü ý Îý ý Îþ ý Îý Î Çý Î ý Î ÿ ý Î  ý Ï ý Ï ý Ï ý Ï ý Ïý Ï Çý Ï ý Ï  ý Ð ý Ð…ý Ð ý Ð ý Ðý Ð Çý Ð ý Ð  ý Ð ý Ñ ý Ñõý Ñ ý Ñ ý Ñý Ñ Çý Ñ ý Ñ  ý Ñ  ý Ñ ý Ò ý Ò ý Òjý Ò ý Òý Ò Çý Ò ý Ò  ý Ò  ý Ó ý Óý Óÿý Ó ý Óý Ó Çý Ó ý Ó  ý Ó ý Ô ý Ô ý Ôóý Ô ý Ôý Ô Çý Ô ý Ô  ý Ô ý Õ ý Õ\ý ÕRý Õ ý Õý Õ Çý Õ ý Õ ! ý Õ " ý Õ# ý Ö$ ý Öý Ö` ý Ö% ý Öý Ö Çý Ö ý Ö & ý Ö ' ý Ö( ý ×) ý ×* ý ×+ ý ×, ý ×ý × Çý × ý × - ý × . ý Ø/ ý Øöý Ø0 ý Ø1 ý Øý Ø Çý Ø ý Ø 2 ý Ù3 ý Ù4 ý Ùý Ù5 ý Ùý Ù Çý Ù ý Ù 6 ý Ù 7 ý Ù8 ý Ú9 ý Úšý Ú: ý Ú; ý Úý Ú Çý Ú ý Ú < ý Ú = ý Ú> ý Û? ý Û@ ý Û ý ÛA ý Ûý Û Çý Û ý Û B ý Û C ý ÛD ý ÜE ý Ü&ý ÜF ý ÜG ý Üý Ü Çý Ü ý Ü 1ý Ü H ý ÝI ý Ý* ý Ý ý ÝJ ý Ýý Ý Çý Ý ý Ý K ý Ý L ý ÝM ý ÞN ý Þ„ý Þ¶ý ÞO ý Þý Þ Çý Þ ý Þ P ý Þ Q ý ßR ý ßÂý ß. ý ßS ý ßý ß Çý ß ý ß T ý ßU àÿáÿâÿã ÿäÿå ÿæÿçÿè ÿé ÿê ÿëÿìÿí ÿîÿïÿðÿñÿòÿóÿôÿõ ÿöÿ÷ ÿøÿù ÿúÿûÿüÿýÿþÿÿÿý àV ý àý àW ý àX ý àý à Çý à ý à Vý à Y ý áZ ý áSý á[ ý á\ ý áý á Çý á ý á ] ý á ^ ý â_ ý âý âqý â` ý âý â Çý â ý â a ý â b ý ãc ý ãd ý ãe ý ãf ý ãý ã Çý ã ý ã g ý ã h ý äi ý äU ý äj ý äk ý äý ä Çý ä ý ä õ ý ä l ý äm ý ån ý åo ý åp ý åq ý åý å Çý å ý å r ý å s ý æt ý æQý æu ý æv ý æý æ Çý æ ý æ w ý æx ý æy ý çz ý çrý ç{ ý ç| ý çý ç Çý ç ý ç } ý ç~ ý ç ý è€ ý è ý è™ý è‚ ý èý è Çý è ý è ƒ ý è „ ý é… ý é† ý é‡ ý éˆ ý éý é Çý é ý é ‰ ý é Š ý ê‹ ý ê„ý ê8ý êŒ ý êý ê Çý ê ý ê  ý ê Ž ý ë ý ë ý ë·ý ë‘ ý ëý ë Çý ë ý ë ’ ý ë “ ý ë” ý ì• ý ì–ý ìý ì– ý ìý ì Çý ì ý ì — ý ì˜ ý í™ ý íš ý í› ý íœ ý íý í Çý í ý í w ý í  ý îž ý îSý îyý îŸ ý îý î Çý î ý î   ý î¡ ý ï¢ ý ïý ï1ý ï£ ý ïý ï Çý ï ý ï ¤ ý ï ¥ ý ï¦ ý ð§ ý ð¨ ý ð© ý ðª ý ðý ð Çý ð ý ð « ý ð¬ ý ð­ ý ñ® ý ñ¯ ý ñBý ñ° ý ñý ñ Çý ñ ý ñ ± ý ñ² ý ò³ ý òý òý ò´ ý òý ò Çý ò ý ò µ ý ò¶ ý ó· ý ó¸ ý óGý ó¹ ý óý ó Çý ó ý ó º ý ó» ý ô¼ ý ô¥ý ôJý ô½ ý ôý ô Çý ô ý ô Iý ô¾ ý õ¿ ý õÀ ý õNý õÁ ý õý õ Çý õ ý õ  ý öà ý öý öRý öÄ ý öý ö Çý ö ý ö Å ý ö Æ ý öÇ ý ÷È ý ÷É ý ÷ý ÷Ê ý ÷ý ÷ Çý ÷ ý ÷ Ë ý ÷ Ì ý øÍ ý øÎ ý øYý øÏ ý øý ø Çý ø ý ø Ð ý ø Ñ ý øÒ ý ùÓ ý ù”ý ù]ý ùÔ ý ùý ù Çý ù ý ù Õ ý ù Ö ý ú× ý úØ ý ú`ý úÙ ý úý ú Çý ú ý ú Ú ý úÛ ý ûÜ ý ûWý ûdý ûÝ ý ûý û Çý û ý û Þ ý ûß ý üà ý üá ý üý üâ ý üý ü Çý ü ý ü #ý üã ý ýä ý ýå ý ýiý ýæ ý ýý ý Çý ý ý ý ç ý ýè ý þé ý þê ý þÆý þë ý þý þ Çý þ ý þ ì ý þ í ý ÿî ý ÿï ý ÿný ÿð ý ÿý ÿ Çý ÿ ý ÿ ñ ý ÿò  ÿÿÿÿ ÿÿÿÿÿ ÿ ÿ ÿ ÿ  ÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿý ó ý " ý Gý ô ý ý  Çý  ý  õ ý ö ý úý vý ÷ ý ý  Çý  ý  ø ý ù ý ú ý ;ý vý û ý ý  Çý  ý  ü ý  ý ý þ ý ûý yý ÿ ý ý  Çý  ý   ý  ý  ý Wý |ý  ý ý  Çý  ý   ý   ý  ý zý  ý  ý ý  Çý  ý   ý   ý  ý \ý ý  ý ý  Çý  ý   ý   ý  ý  ý 4ý  ý ý  Çý  ý   ý  ý  ý „ý ˆý  ý ý  Çý  ý   ý   ý  ý  ý  ý ¨ý  ý ý  Çý  ý   ý   ý  ý  ý ý  ý ý  Çý  ý   ý  ! ý " ý ¦ý ‘ý # ý ý  Çý  ý  $ ý  % ý & ý ' ý ûý ”ý ( ý ý  Çý  ý  œý ) ý * ý qý —ý + ý ý  Çý  ý  , ý  - ý . ý &ý šý / ý ý  Çý  ý  0 ý  1 ý 2 ý 3 ý 4 ý žý 5 ý ý  Çý  ý  6 ý  7 ý 8 ý šý aý 9 ý ý  Çý  ý  : ý ; ý < ý = ý ¤ý > ý ý  Çý  ý  ? ý @ ý A ý B ý Gý C ý ý  Çý  ý  D ý E ý F ý G ý H ý ªý I ý ý  Çý  ý  J ý K ý L ý M ý ­ý N ý ý  Çý  ý  O ý  P ý Q ý 5ý &ý R ý ý  Çý  ý  S ý T ý U ý V ý Sý ²ý W ý ý  Çý  ý  X ý Y ý Z ý [ ý ¶ý \ ý ý  Çý  ý  ] ý  ^ ý _ ý ` ý a ý ý b ý ý  Çý  ý  c ý  d ý e ý µý »ý f ý ý  Çý  ý  g ý h ý i ý j ý k ý ‰ý l ý ý  Çý  ý  Ë ý m ý n ý o ý Àý p ý ý  Çý  ý  q ý r ý s ý t ý Äý u ý ý  Çý  ý  v ý  w ý x ý y ý z ý jý { ý ý  Çý  ý  | ý  } ý ~ ý  ý € ý Êý  ý ý  Çý  ý  ‚ ý ƒ ý „ ý †ý —ý … ý ý  Çý  ý  † ý  ‡ ý ˆ  ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ- ÿ.ÿ/ÿ0ÿ1 ÿ2ÿ3 ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý ‰ ý Ëý Ïý Š ý ý  Çý  ý  Vý ‹ ý !Œ ý !: ý !Òý ! ý !ý ! Çý ! ý ! Ž ý !  ý ! ý "‘ ý "’ ý "Õý "“ ý "ý " Çý " ý " ” ý " • ý #– ý #ý #fý #— ý #ý # Çý # ý # ˜ ý # ™ ý $š ý $ýý $½ý $› ý $ý $ Çý $ ý $ œ ý $  ý %ž ý %g ý %éý %Ÿ ý %ý % Çý % ý %   ý % ¡ ý %¢ ý &£ ý &ý &ßý &¤ ý &ý & Çý & ý & ¥ ý &¦ ý '§ ý ' ý 'âý '¨ ý 'ý ' Çý ' ý ' © ý ' ª ý '« ý (¬ ý (­ ý (þý (® ý (ý ( Çý ( ý ( ¯ ý (° ý (± ý )² ý )³ ý )èý )´ ý )ý ) Çý ) ý ) µ ý ) ¶ ý *· ý *ë ý *ìý *¸ ý *ý * Çý * ý * ¹ ý *º ý +» ý +Ö ý +ðý +¼ ý +ý + Çý + ý + ½ ý + ¾ ý +¿ ý ,À ý ,&ý ,ý ,Á ý ,ý , Çý , ý ,  ý , à ý ,Ä ý -Å ý - ý -õý -Æ ý -ý - Çý - ý - Ç ý .È ý .šý .úý .É ý .ý . Çý . ý . Ê ý . Ë ý /Ì ý /ëý /úý /Í ý /ý / Çý / ý / Î ý /Ï ý 0Ð ý 0‰ý 0”ý 0Ñ ý 0ý 0 Çý 0 ý 0 T ý 0 Ò ý 1Ó ý 1ý 1ý 1Ô ý 1ý 1 Çý 1 ý 1 Õ ý 2Ö ý 2ùý 2[ý 2× ý 2ý 2 Çý 2 ý 2 Ç ý 2Ø ý 3Ù ý 3ü ý 3#ý 3Ú ý 3ý 3 Çý 3 ý 3 Û ý 3 Ü ý 4Ý ý 4Þ ý 4&ý 4ß ý 4ý 4 Çý 4 ý 4 à ý 4 á ý 5â ý 5Å ý 5ý 5ã ý 5ý 5 Çý 5 ý 5 ä ý 5 å ý 5æ ý 6ç ý 6è ý 6 ý 6é ý 6ý 6 Çý 6 ý 6 ê ý 6ë ý 7ì ý 7í ý 7ý 7î ý 7ý 7 Çý 7 ý 7   ý 7ï ý 8ð ý 8%ý 8ý 8ñ ý 8ý 8 Çý 8 ý 8 ò ý 8ó ý 9ô ý 9ûý 9‰ý 9õ ý 9ý 9 Çý 9 ý 9 ñ ý 9 ö ý 9÷ ý :ø ý :ù ý :1ý :ú ý :ý : Çý : ý : û ý :ü ý :ý ý ;þ ý ;ûý ;ý ;ÿ ý ;ý ; Çý ; ý ;  ý ; ý ; ý < ý < ý <0ý < ý <ý < Çý < ý <  ý <  ý < ý = ý =ý =ý = ý =ý = Çý = ý =  ý = ý > ý >: ý >#ý > ý >ý > Çý > ý > b ý > ý > ý ? ý ? ý ?'ý ? ý ?ý ? Çý ? ý ?  ý ? ý ? @ ÿAÿB ÿCÿDÿEÿFÿGÿHÿI ÿJÿKÿLÿMÿNÿOÿPÿQÿR ÿSÿT ÿU ÿVÿWÿXÿYÿZ ÿ[ÿ\ÿ]ÿ^ÿ_ÿý @ ý @ ý @*ý @ ý @ý @ Çý @ ý @  ý @  ý A ý A6 ý A&ý A ý Aý A Çý A ý A  ý A  ý B ý BRý B1ý B! ý Bý B Çý B ý B " ý B # ý C$ ý C% ý C ý C& ý Cý C Çý C ý C ' ý C ( ý C) ý D* ý D+ ý Dý D, ý Dý D Çý D ý D - ý D . ý E/ ý EUý Eý E0 ý Eý E Çý E ý E 1 ý E2 ý E3 ý F4 ý F5 ý FFý F6 ý Fý F Çý F ý F 7 ý F8 ý G9 ý G: ý G=ý G; ý Gý G Çý G ý G < ý G= ý H> ý H? ý Hný H@ ý Hý H Çý H ý H A ý HB ý IC ý Ieý I;ý ID ý Iý I Çý I ý I E ý JF ý Jåý JÓý JG ý Jý J Çý J ý J ñ ý J H ý JI ý KJ ý Ký Kßý KK ý Ký K Çý K ý K L ý K M ý KN ý LO ý L¯ ý Lý LP ý Lý L Çý L ý L Q ý L R ý Lµý MS ý MT ý M¨ý MU ý Mý M Çý M ý M V ý MW ý NX ý Ný NY ý NZ ý Ný N Çý N ý N [ ý N\ ý O] ý O^ ý O_ ý O` ý Oý O Çý O ý O a ý Ob ý Pc ý Pûý Pd ý Pe ý Pý P Çý P ý P c ý P f ý Pg ý Qh ý Qšý QÖý Qi ý Qý Q Çý Q ý Q j ý Q k ý Ql ý Rm ý Rëý Rn ý Ro ý Rý R Çý R ý R p ý Sq ý Sqý SÈý Sr ý Sý S Çý S ý S s ý St ý Su ý Tv ý Tw ý Tx ý Ty ý Tý T Çý T ý T z ý T { ý U| ý U} ý U½ý U~ ý Uý U Çý U ý U  ý U € ý V ý V‚ ý Vƒ ý V„ ý Vý V Çý V ý V … ý V† ý V‡ ý Wˆ ý W—ý W§ý W‰ ý Wý W Çý W ý W Š ý W‹ ý XŒ ý X ý X—ý XŽ ý Xý X Çý X ý X  ý X  ý X‘ ý Y’ ý Y7ý Y—ý Y“ ý Yý Y Çý Y ý Y ” ý Y • ý Y– ý Z— ý Z0ý Z˜ ý Z™ ý Zý Z Çý Z ý Z   ý Z š ý [› ý [µý [œ ý [ ý [ý [ Çý [ ý [ ž ý [Ÿ ý [  ý \¡ ý \¢ ý \£ ý \¤ ý \ý \ Çý \ ý \ ¥ ý \ ¦ ý \§ ý ]¨ ý ]÷ý ]© ý ]ª ý ]ý ] Çý ] ý ] « ý ] ¬ ý ]­ ý ^® ý ^öý ^¯ ý ^° ý ^ý ^ Çý ^ ý ^ ± ý ^² ý _³ ý _·ý _´ ý _µ ý _ý _ Çý _ ý _ ¶ ý _· `ÿaÿbÿc ÿdÿeÿfÿgÿh ÿiÿjÿkÿl ÿmÿnÿoÿpÿqÿrÿsÿt ÿuÿvÿwÿxÿy ÿzÿ{ÿ|ÿ} ÿ~ÿÿý `¸ ý `ë ý `¹ ý `º ý `ý ` Çý ` ý ` Íý `» ý a¼ ý a½ ý a¾ ý a¿ ý aý a Çý a ý a À ý a Á ý b ý bà ý bÄ ý bÅ ý bý b Çý b ý b Æ ý bÇ ý cÈ ý cÉ ý cèý cÊ ý cý c Çý c ý c Ë ý dÌ ý d ý dÍ ý dÎ ý dý d Çý d ý d ‚ ý d Ï ý dÐ ý eÑ ý eÒ ý eÓ ý eÔ ý eý e Çý e ý e Õ ý eÖ ý e× ý fØ ý f°ý fÙ ý fÚ ý fý f Çý f ý f  ý fÛ ý gÜ ý gëý gÝ ý gÞ ý gý g Çý g ý g ß ý g à ý há ý hUý hâ ý hã ý hý h Çý h ý h ä ý iå ý iý išý iæ ý iý i Çý i ý i ç ý iè ý jé ý jê ý jÖý jë ý jý j Çý j ý j |ý j ì ý jí ý kî ý kï ý kð ý kñ ý ký k Çý k ý k ò ý k ó ý lô ý l¿ ý lïý lõ ý lý l Çý l ý l ö ý m÷ ý m ý mø ý mù ý mý m Çý m ý m ú ý m û ý nü ý ný ý nþ ý nÿ ý ný n Çý n ý n ý ný oý oùý oý oý oý o Çý o ý o ý o ý oý pý pUý pý p ý pý p Çý p ý p  ý p  ý p ý q ý qý qý qý qý q Çý q ý q lý q ý qý rý rý ršý rý rý r Çý r ý r õ ý rý sý sçý s#ý sý sý s Çý s ý s 2 ý sý tý tïý tý tý tý t Çý t ý t ý uý ušý uý uý uý u Çý u ý u  ý u!ý v"ý v#ý v$ý v%ý vý v Çý v ý v « ý v &ý w'ý wçý w(ý w)ý wý w Çý w ý w û ý w*ý w+ý x,ý x-ý x.ý x/ý xý x Çý x ý x 0ý x1ý y2ý y3ý y` ý y4ý yý y Çý y ý y 5ý z6ý zý z7ý z8ý zý z Çý z ý z 9ý z :ý z;ý {<ý { ý {ý {=ý {ý { Çý { ý { >ý {?ý |@ý |Aý |Bý |Cý |ý | Çý | ý |  ý | Dý |Eý }Fý }&ý }Jý }Gý }ý } Çý } ý } Hý } Iý ~Jý ~eý ~Þ ý ~Ký ~ý ~ Çý ~ ý ~ ‰ý ~ Lý ~Mý Ný  ý Oý Pý ý  Çý  ý  Qý R€ÿÿ‚ÿƒÿ„ÿ…ÿ† ÿ‡ ÿˆ ÿ‰ÿŠÿ‹ÿŒÿÿŽ ÿÿ ÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ ÿš ÿ›ÿœ ÿÿžÿŸÿý €Sý €ý €Fý €Tý €ý € Çý € ý € Uý €Vý €Wý Xý Yý Zý [ý ý  Çý  ý  \ý  ]ý ^ý ‚_ý ‚`ý ‚aý ‚bý ‚ý ‚ Çý ‚ ý ‚ cý ‚ dý ƒeý ƒBý ƒfý ƒgý ƒý ƒ Çý ƒ ý ƒ hý ƒ iý ƒjý „ký „äý „lý „mý „ý „ Çý „ ý „ ný „oý …pý …qý …rý …sý …ý … Çý … ý … tý …uý †vý †Sý †wý †xý †ý † Çý † ý † yý ‡zý ‡ý ‡zý ‡{ý ‡ý ‡ Çý ‡ ý ‡ |ý ‡ }ý ˆ~ý ˆo ý ˆý ˆ€ý ˆý ˆ Çý ˆ ý ˆ ý ‰‚ý ‰ƒý ‰Oý ‰„ý ‰ý ‰ Çý ‰ ý ‰ …ý ‰ †ý Їý еý Š”ý Šˆý Šý Š Çý Š ý Š ‰ý ŠŠý ‹‹ý ‹Ný ‹Œý ‹ý ‹ý ‹ Çý ‹ ý ‹ Žý ‹ ý Œý Œ‘ý Œ”ý Œ’ý Œý Œ Çý Œ ý Œ “ý Œ”ý Œ•ý –ý úý —ý ˜ý ý  Çý  ý  ™ý šý Ž›ý Žúý Žœý Žý Žý Ž Çý Ž ý Ž žý Ž Ÿý  ý ¡ý ¢ý £ý ý  Çý  ý  ¤ý  ¥ý ¦ý §ý  ý ` ý ¨ý ý  Çý  ý  ©ý  ªý ‘«ý ‘¬ý ‘­ý ‘®ý ‘ý ‘ Çý ‘ ý ‘  ý ‘ ¯ý ’°ý ’±ý ’$ý ’²ý ’ý ’ Çý ’ ý ’ ³ý ’´ý “µý “¶ý “€ý “·ý “ý “ Çý “ ý “   ý “¸ý ”¹ý ”„ý ”ºý ”»ý ”ý ” Çý ” ý ” ¼ý ”½ý ”¾ý •¿ý •çý •Àý •Áý •ý • Çý • ý • q ý •Âý –Ãý –= ý –—ý –Äý –ý – Çý – ý – Åý – Æý –¡ý —Çý —ïý —ý —Èý —ý — Çý — ý — Éý —Êý —Ëý ˜Ìý ˜Íý ˜²ý ˜Îý ˜ý ˜ Çý ˜ ý ˜ Ïý ˜ Ðý ˜Ñý ™Òý ™Óý ™Ôý ™Õý ™ý ™ Çý ™ ý ™ Öý š×ý š‘ý šØý šÙý šý š Çý š ý š Úý š Ûý ›Üý ›Ýý ›Þý ›ßý ›ý › Çý › ý › õ ý › àý ›áý œâý œQý œ–ý œãý œý œ Çý œ ý œ äý œ åý æý Ëý ý çý ý  Çý  ý  èý éý žêý žëý žìý žíý žý ž Çý ž ý ž îý žïý Ÿðý Ÿñý Ÿ: ý Ÿòý Ÿý Ÿ Çý Ÿ ý Ÿ 0ý Ÿ óý Ÿô ÿ¡ ÿ¢ÿ£ÿ¤ ÿ¥ÿ¦ÿ§ÿ¨ ÿ©ÿªÿ«ÿ¬ ÿ­ ÿ®ÿ¯ ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ· ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  õý  öý  ÷ý  øý  ý   Çý   ý   ùý  úý  ûý ¡üý ¡—ý ¡ýý ¡þý ¡ý ¡ Çý ¡ ý ¡  ý ¡ ÿý ¢ý ¢= ý ¢ý ¢ý ¢ý ¢ Çý ¢ ý ¢ ý ¢ ý £ý £°ý £°ý £ý £ý £ Çý £ ý £ ý £ ý £ ý ¤ ý ¤‘ ý ¤ ý ¤ ý ¤ý ¤ Çý ¤ ý ¤  ý ¥ý ¥ûý ¥šý ¥ý ¥ý ¥ Çý ¥ ý ¥ ý ¥ý ¦ý ¦5 ý ¦ý ¦ý ¦ý ¦ Çý ¦ ý ¦ ý ¦ý ¦ý §ý §šý § ý §ý §ý § Çý § ý § ý §ý ¨ý ¨ý ¨ý ¨ý ¨ý ¨ Çý ¨ ý ¨  ý ©!ý ©"ý ©ý ©#ý ©ý © Çý © ý © $ý © %ý ©&ý ª'ý ª(ý ª±ý ª)ý ªý ª Çý ª ý ª *ý ª+ý «,ý «µý «-ý «.ý «ý « Çý « ý « Ñ ý «/ý ¬0ý ¬1ý ¬¨ý ¬2ý ¬ý ¬ Çý ¬ ý ¬ 3ý ¬ 4ý ­5ý ­;ý ­6ý ­7ý ­ý ­ Çý ­ ý ­ 8ý ®9ý ®:ý ®;ý ®<ý ®ý ® Çý ® ý ® =ý ®>ý ®?ý ¯@ý ¯Aý ¯rý ¯Bý ¯ý ¯ Çý ¯ ý ¯ Cý °Dý °*ý °-ý °Eý °ý ° Çý ° ý ° Fý ° Gý °Hý ±Iý ±ý ±Jý ±Ký ±ý ± Çý ± ý ± Lý ±Mý ²Ný ²æ ý ²Oý ²Pý ²ý ² Çý ² ý ² ý ²Qý ³Rý ³Uý ³Sý ³Tý ³ý ³ Çý ³ ý ³ Uý ³Vý ´Wý ´Xý ´Ð ý ´Yý ´ý ´ Çý ´ ý ´ Zý ´[ý ´\ý µ]ý µuý µ^ý µ_ý µý µ Çý µ ý µ ¥ ý µ `ý µaý ¶bý ¶ü ý ¶ïý ¶cý ¶ý ¶ Çý ¶ ý ¶ dý ¶eý ¶fý ·gý ·šý ·Oý ·hý ·ý · Çý · ý · iý · jý ¸ký ¸šý ¸ý ¸lý ¸ý ¸ Çý ¸ ý ¸ mý ¸ný ¹oý ¹pý ¹qý ¹rý ¹ý ¹ Çý ¹ ý ¹ sý ¹tý ºuý ºúý ºvý ºwý ºý º Çý º ý º xý º yý ºzý »{ý »|ý »}ý »~ý »ý » Çý » ý » ý » €ý »ý ¼‚ý ¼ƒý ¼„ý ¼…ý ¼ý ¼ Çý ¼ ý ¼ †ý ¼ ‡ý ¼ˆý ½‰ý ½ûý ½Šý ½‹ý ½ý ½ Çý ½ ý ½ ý ½Œý ¾ý ¾sý ¾Žý ¾ý ¾ý ¾ Çý ¾ ý ¾ ý ¾ ‘ý ¾’ý ¿“ý ¿”ý ¿•ý ¿–ý ¿ý ¿ Çý ¿ ý ¿ ñ ý ¿ —ý ¿˜ÀÿÁÿÂÿÃÿÄÿÅ ÿÆÿÇ ÿÈ ÿÉÿÊ ÿËÿÌÿÍÿÎ ÿÏÿÐÿÑÿÒÿÓÿÔ ÿÕÿÖ ÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿý À™ý Àæ ý Àšý À›ý Àý À Çý À ý À iý À œý Áý Ážý ÁŸý Á ý Áý Á Çý Á ý Á ¡ý Á¢ý Á£ý ¤ý Â¥ý ¦ý §ý Âý  Çý  ý  ¨ý  ©ý ªý ëý à ý Ã5ý ìý Ãý à Çý à ý à ­ý à ®ý ïý İý Ä5ý Ä8ý ıý Äý Ä Çý Ä ý Ä ²ý ijý Å´ý ÅÉ ý ŵý Ŷý Åý Å Çý Å ý Å ·ý Ƹý ÆX ý ưý ƹý Æý Æ Çý Æ ý Æ  ý ƺý Ç»ý Ǽý Ç: ý ǽý Çý Ç Çý Ç ý Ç  ý Ⱦý È&ý È` ý È¿ý Èý È Çý È ý È Àý È Áý ÉÂý É‹ý ÉÃý ÉÄý Éý É Çý É ý É Åý É Æý ÊÇý Êý Ê0ý ÊÈý Êý Ê Çý Ê ý Ê Ñý ËÉý ËÊý ËËý ËÌý Ëý Ë Çý Ë ý Ë Íý ËÎý ÌÏý ÌÐý ÌÉý ÌÑý Ìý Ì Çý Ì ý Ì Òý ÌÓý ÍÔý ÍÕý ÍÖý Í×ý Íý Í Çý Í ý Í Øý Í Ùý ÍÚý ÎÛý Îý Î5ý ÎÜý Îý Î Çý Î ý Î Ýý ÏÞý Ïoý ÏÂý Ïßý Ïý Ï Çý Ï ý Ï àý Ïáý Ðâý Ðûý Ðãý Ðäý Ðý Ð Çý Ð ý Ð ¥ý Ðåý Ñæý Ñ:ý Ñçý Ñèý Ñý Ñ Çý Ñ ý Ñ éý Ñ êý Ñëý Òìý ÒËý Ò¶ý Òíý Òý Ò Çý Ò ý Ò îý Òïý Óðý Ó„ý Ó—ý Óñý Óý Ó Çý Ó ý Ó òý Ó óý Óôý Ôõý Ôöý Ô÷ý Ôøý Ôý Ô Çý Ô ý Ô ùý Õúý Õ ý Õûý Õüý Õý Õ Çý Õ ý Õ ýý Õþý Öÿý Ö ý Öý Öý Öý Ö Çý Ö ý Ö ý Ö ý ×ý ×ý ×ý ×ý ×ý × Çý × ý × ø ý ×ý Ø ý Ø—ý Ø ý Ø ý Øý Ø Çý Ø ý Ø  ý Ø  ý Øý Ùý Ùúý Ù£ ý Ùý Ùý Ù Çý Ù ý Ù ø ý Ù ý Ùý Úý Úý Úý Úý Úý Ú Çý Ú ý Ú ý Ú ý Úý Ûý Ûê ý ÛÜý Ûý Ûý Û Çý Û ý Û ý Û ý Üý ܺý Üý Ü ý Üý Ü Çý Ü ý Ü !ý Ü"ý Ý#ý ݆ý Ý$ý Ý%ý Ýý Ý Çý Ý ý Ý &ý Ý'ý Þ(ý Þ)ý Þ*ý Þ+ý Þý Þ Çý Þ ý Þ Gý Þ,ý Þ-ìPðH`ðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚%"&C&"Times New Roman,Normalus"&12&A,)&C&"Times New Roman,Normalus"&12Página &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } ” ßÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý .ý /ý 0ý ûý Åý 1ý ûý O ý ý Êý 1ý ý S ý  ý Ïý 1ý  ý X ý  ý Óý 1ý  ý ] ý ý Ùý 1ý ý c ý ý Þý 1ý ý h ý ý âý 1ý ý m ý ý èý 1ý ý q ý !ý ìý 1ý !ý v ý %ý ðý 1ý %ý | ý )ý ôý 1ý )ý  ý -ý ùý 1ý -ý ˆ ý 1ý ýý 1ý 1ý Œ ý 5ý ý 1ý 5ý ’ ý 9ý ý 1ý 9ý — ý =ý  ý 1 ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý =ý › ý !Aý !ý !1ý "Aý "¡ ý #Eý #ý #1ý $Eý $¨ ý %Iý %ý %1ý &Iý &® ý 'Mý ' ý '1ý (Mý (³ ý )Qý )%ý )1ý *Qý *¸ ý +Uý +*ý +1ý ,Uý ,¼ ý -Yý -/ý -1ý .Yý . ý /]ý /3ý /1ý 0]ý 0È ý 1`ý 17ý 11ý 2`ý 2Ì ý 3dý 3;ý 31ý 4dý 4Ñ ý 5hý 5@ý 51ý 6hý 6Ø ý 7lý 7Fý 71ý 8lý 8Ü ý 9pý 9Lý 91ý :pý :á ý ;tý ;Pý ;1ý <tý <å ý =xý =Sý =1ý >xý >é ý ?|ý ?Xý ?1@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @|ý @î ý A€ý A[ý A1ý B€ý Bô ý C„ý Caý C1ý D„ý D÷ ý Eˆý Efý E1ý Fˆý Fü ý G‹ý Gjý G1ý H‹ý Hý IŽý Iný I1ý JŽý Jý K‘ý Ksý K1ý L‘ý L ý M•ý Mwý M1ý N•ý Ný O˜ý O|ý O1ý P˜ý Pý Qœý Q€ý Q1ý Rœý Rý SŸý S…ý S1ý TŸý Tý U¢ý UŠý U1ý V¢ý V"ý W¦ý Wý W1ý X¦ý X'ý Yªý Y“ý Y1ý Zªý Z,ý [­ý [™ý [1ý \­ý \2ý ]±ý ]œý ]2ý ^µý ^¢ý ^2ý _¸ý _§ý _2`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `¼ý `­ý `2ý a¿ý a±ý a2ý bÃý b¶ý b2ý cÇý c½ý c2ý dËý dÃý d2ý eÎý eÉý e2ý fÒý fÏý f2ý gÖý gÔý g2ý hÙý hÚý h2ý iÛý iàý i2ý jßý jæý j2ý kãý kìý k2ý læý lðý l2ý méý môý m2ý níý núý n2ý oñý oþý o2ý pôý pý p2ý qøý q ý q2ý rüý rý r2ý sý sý s2ý tý tý t2ý uý u!ý u2ý v ý v(ý v2ý wý w-ý w2ý xý x2ý x2ý yý y6ý y2ý zý z=ý z2ý {ý {Cý {2ý |!ý |Hý |2ý }$ý }Mý }2ý ~(ý ~Sý ~2ý *ý Yý 2€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €.ý €_ý €2ý 2ý eý 2ý ‚6ý ‚iý ‚2ý ƒ:ý ƒný ƒ2ý „=ý „tý „2ý …Aý …zý …2ý †Dý †~ý †2ý ‡Hý ‡…ý ‡2ý ˆLý ˆŒý ˆ2ý ‰Oý ‰’ý ‰2ý ŠSý Š™ý Š2ý ‹Wý ‹ý ‹2ý ŒZý Œ£ý Œ3ý Zý 6ý Ž^ý ާý Ž3ý ^ý <ý bý ­ý 3ý ‘bý ‘@ý ’dý ’³ý ’3ý “dý “Fý ”gý ”¹ý ”3ý •gý •Jý –ký –¿ý –3ý —ký —Ný ˜ný ˜Åý ˜3ý ™ný ™Sý šqý šÊý š3ý ›qý ›Xý œuý œÎý œ3ý uý _ý žxý žÔý ž3ý Ÿxý Ÿe ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  |ý  Ùý  3ý ¡|ý ¡ký ¢ý ¢Þý ¢3ý £ý £pý ¤ƒý ¤äý ¤3ý ¥ƒý ¥vý ¦‡ý ¦ëý ¦3ý §‡ý §zý ¨‹ý ¨ïý ¨3ý ©‹ý ©~ý ªý ªôý ª3ý «ý «‚ý ¬’ý ¬ùý ¬3ý ­’ý ­‡ý ®–ý ®þý ®3ý ¯–ý ¯‹ý °™ý ° ý °3ý ±™ý ±ý ²œý ² ý ²3ý ³œý ³–ý ´ ý ´ ý ´3ý µ ý µ›ý ¶£ý ¶ ý ¶3ý ·£ý · ý ¸§ý ¸ ý ¸3ý ¹§ý ¹§ý º«ý º! ý º3ý »«ý »«ý ¼®ý ¼& ý ¼3ý ½®ý ½°ý ¾²ý ¾, ý ¾3ý ¿²ý ¿µÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý Àµý À2 ý À3ý Áµý Á¹ý ¹ý Â5 ý Â3ý ùý ÿý ļý Ä; ý Ä3ý żý ÅÃý Æ¿ý Æ@ ý Æ3ý Ç¿ý ÇÇý ÈÃý ÈF ý È3ý ÉÃý ÉÌý ÊÆý ÊK ý Ê3ý ËÆý ËÒý ÌÊý ÌQ ý Ì3ý ÍÊý Í×ý ÎÎý ÎT ý Î3ý ÏÎý ÏÜý ÐÒý ÐZ ý Ð3ý ÑÒý Ñâý ÒÕý Ò_ ý Ò3ý ÓÕý Óæý ÔØý Ôf ý Ô3ý ÕØý Õêý ÖÜý Öl ý Ö3ý ×Üý ×ðý Øàý Øq ý Ø3ý Ùàý Ùõý Úâý Úv ý Ú3ý Ûâý Ûüý Üæý Ü{ ý Ü3ý Ýæý Ýý Þéý Þ ý Þ3ý ßéý ßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý àíý à† ý à3ý áíý á ý âñý ⊠ý â3ý ãñý ãý äõý ä ý ä3ý åõý åý æùý æ– ý æ3ý çùý çý èüý è ý è3ý éüý éý êý ê£ ý ê3ý ëý ë!ý ìý ì¦ ý ì3ý íý í'ý îý î« ý î3ý ïý ï,ý ð ý ð± ý ð3ý ñ ý ñ0ý ò ý ò¶ ý ò3ý ó ý ó5ý ôý ô» ý ô4ý õý õÁ ý õ4ý öý öÈ ý ö4ý ÷ý ÷Î ý ÷4ý øý øÒ ý ø4ý ù"ý ù× ý ù4ý ú$ý úÜ ý ú4ý û(ý ûá ý û4ý ü*ý üæ ý ü4ý ý,ý ýê ý ý4ý þ/ý þï ý þ4ý ÿ3ý ÿó ý ÿ4ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý 7ý ö ý 4ý :ý ú ý 4ý <ý ÿ ý 4ý @ý  ý 4ý Dý  ý 4ý Fý  ý 4ý Iý  ý 4ý Mý  ý 4ý Qý # ý 4ý Tý ) ý 4ý Vý / ý 4ý Yý 4 ý 4ý [ý 9 ý 4ý _ý ? ý 4ý cý E ý 4ý fý J ý 4ý iý P ý 4ý mý W ý 4ý qý ^ ý 4ý uý d ý 4ý xý i ý 4ý {ý m ý 4ý ~ý s ý 4ý ý w ý 4ý …ý { ý 4ý ‰ý  ý 4ý Œý † ý 4ý ý Œ ý 4ý ‘ý ’ ý 4ý •ý • ý 4ý ™ý š ý 4ý œý ž ý 4 ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý  ý ¢ ý 4ý !¢ý !§ ý !4ý "¥ý "« ý "4ý #¨ý #± ý #4ý $¬ý $¸ ý $4ý %¯ý %¾ ý %4ý &²ý &Ä ý &4ý '¶ý 'É ý '4ý (ºý (Î ý (4ý )¾ý )Õ ý )4ý *Àý *Ú ý *4ý +Äý +à ý +4ý ,Èý ,å ý ,4ý -Êý -ë ý -4ý .Íý .ñ ý .4ý /Ðý /ö ý /4ý 0Ôý 0û ý 04ý 1Öý 1 ý 14ý 2Úý 2 ý 24ý 3Þý 3 ý 34ý 4áý 4 ý 44ý 5åý 5 ý 54ý 6èý 6 ý 64ý 7ëý 7 ý 74ý 8ïý 8$ ý 84ý 9òý 9) ý 94ý :õý :/ ý :4ý ;ùý ;3 ý ;4ý <ýý <9 ý <4ý =ý =? ý =4ý >ý >E ý >4ý ?ý ?I ý ?4@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @ ý @N ý @4ý A ý AR ý A4ý Bý BV ý B4ý Cý CZ ý C4ý Dý D_ ý D4ý Eý Ec ý E4ý Fý Fi ý F4ý Gý Gn ý G4ý H!ý Ht ý H4ý I%ý Iz ý I4ý J)ý J€ ý J4ý K+ý K… ý K4ý L.ý L‹ ý L4ý M0ý M ý M4ý N4ý N• ý N4ý O7ý O™ ý O4ý P9ý Pž ý P4ý Q<ý Q¢ ý Q4ý R>ý R§ ý R4ý SAý S® ý S5ý TDý T³ ý T5ý UFý U· ý U5ý VIý V¼ ý V5ý WLý W¿ ý W5ý XPý Xà ý X5ý YTý YÈ ý Y5ý ZWý ZÍ ý Z5ý [[ý [Ó ý [5ý \_ý \× ý \5ý ]bý ]Ü ý ]5ý ^fý ^à ý ^5ý _hý _ä ý _5`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `ký `é ý `5ý amý aî ý a5ý bpý bó ý b5ý csý cö ý c5ý duý dú ý d5ý exý eþ ý e5ý f{ý f ý f5ý g~ý g ý g5ý hý h ý h5ý i„ý i ý i5ý j†ý j ý j5ý kŠý k ý k5ý lŒý l ý l5ý mý m" ý m5ý n“ý n' ý n5ý o–ý o* ý o5ý p™ý p. ý p5ý qœý q3 ý q5ý r ý r8 ý r5ý s¢ý s< ý s5ý t¦ý tA ý t5ý u©ý uG ý u5ý v¬ý vL ý v5ý w¯ý wQ ý w5ý x±ý xV ý x5ý y´ý yZ ý y5ý z¸ý z` ý z5ý {ºý {e ý {5ý |½ý |j ý |5ý }¿ý }n ý }5ý ~Âý ~s ý ~5ý Æý y ý 5€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €Éý € ý €5ý Ìý „ ý 5ý ‚Îý ‚‰ ý ‚5ý ƒÑý ƒŒ ý ƒ5ý „Ôý „‘ ý „5ý …×ý …– ý …5ý †Ùý †š ý †5ý ‡Ûý ‡ž ý ‡5ý ˆÝý ˆ£ ý ˆ5ý ‰áý ‰§ ý ‰5ý Šäý Ь ý Š5ý ‹æý ‹² ý ‹5ý Œêý Œ· ý Œ5ý îý » ý 5ý Žòý ŽÀ ý Ž5ý ôý Å ý 5ý ÷ý È ý 5ý ‘ùý ‘Ì ý ‘5ý ’üý ’Ð ý ’5ý “ÿý “Ó ý “5ý ”ý ”Ö ý ”5ý •ý •Ù ý •5ý –ý –Ý ý –5ý —ý —â ý —5ý ˜ ý ˜ç ý ˜5ý ™ý ™ì ý ™5ý šý šð ý š5ý ›ý ›ô ý ›5ý œý œø ý œ5ý ý þ ý 5ý žý ž ý ž5ý Ÿ ý Ÿ ý Ÿ5 ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  "ý   ý  5ý ¡%ý ¡ ý ¡5ý ¢)ý ¢ ý ¢5ý £,ý £ ý £5ý ¤/ý ¤ ý ¤5ý ¥3ý ¥$ ý ¥5ý ¦5ý ¦* ý ¦5ý §7ý §/ ý §5ý ¨:ý ¨4 ý ¨5ý ©<ý ©9 ý ©5ý ª?ý ª> ý ª5ý «Bý «C ý «5ý ¬Eý ¬F ý ¬5ý ­Gý ­J ý ­5ý ®5ý ®9ý ¯7ý ¯@ý °9ý °Dý ±<ý ±Iý ²>ý ²Ný ³@ý ³Rý ´Bý ´Wý µFý µ]ý ¶Hý ¶bý ·Jý ·gý ¸Lý ¸ký ¹Pý ¹oý ºRý ºuý »Uý »{ý ¼Wý ¼‚ý ½Yý ½‰ý ¾\ý ¾ý ¿^ý ¿“ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿý Àaý À™ý Ádý Áý Âfý ¤ý Ãiý ëý Ämý İý Åpý Å´ý Æsý Ƹý Çvý Ç»ý Èyý Ⱦý É|ý ÉÂý Ê~ý ÊÇý Ë€ý ËÉý ̃ý ÌÏý Í…ý ÍÔý ·ý ÎÛý ωý ÏÞý Ћý Ðâý Ñý Ñæý Òý Òìý Ó“ý Óðý Ô–ý Ôõý Õšý Õúý Öœý Öÿý ןý ×ý Ø¡ý Ø ý Ù£ý Ùý Ú§ý Úý Ûªý Ûý ܬý Üý Ý®ý Ý#ý Þ°ý Þ(ìPðHpðð0ð( ð ð>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿý ý ý ý 6ý 7ý 8ý 9ý ý :ý ;ý ý <ý ý ý =ý >ý ý ?ý @ý ý Aý Bý ý Cý Dý ý :ý ;ý ý <ý ý ý =ý > ý ý ?ý @ ý ý Aý B ý ý Cý D ìPðH€ð ð0ð( ð ð >¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚%"&C&"Times New Roman,Normalus"&12&A*'&C&"Times New Roman,Normalus"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } Â"}  } ”   ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿý ý Eý Fý Gý Hý Iý ý 6ý Jý Ký ý :ý  ý Lý Mý ¹ ý ý :ý  ý Ný Mý ¹ ý ý <ý  ý Oý Pý º ý ý <ý  ý Qý Pý º ý ý =ý  ý Rý Sý ¶ ý ý =ý  ý Tý Sý ¶ ý ý ?ý  ý Uý Vý ´ ý ý ?ý  ý Wý Vý ´ ý ý Aý  ý Xý Yý ³ ý ý Aý  ý Zý Yý ³ ý ý Cý  ý [ý \ý · ý ý Cý  ý ]ý \ý · ý ý :ý  ý ^ý Mý ¹ ý ý :ý ý _ý Mý ¹ ý ý <ý  ý `ý Pý º ý ý <ý ý aý Pý º ý ý =ý  ý bý Sý ¶ ý ý =ý ý cý Sý ¶ ý ý ?ý  ý dý Vý ´ ý ý ?ý ý eý Vý ´ ý ý Aý  ý fý Yý ³ ý ý Aý ý gý Yý ³ ý ý Cý  ý hý \ý · ý ý Cý ý iý \ý · ìPðHð$ð0ð( ð ð$>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚%"&C&"Times New Roman,Normalus"&12&A*'&C&"Times New Roman,Normalus"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” õÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý Fý Gý ý  ý Lý jý ûý  ý Eý Mý ¢ý =ý ný ƒý Êý ñý ý $ý áý ý ý 4ý ~ý Bý Eý aý zý ›ý ¥ý ³ý Ëý åý 9ý Y ÿ!ÿ#ÿ$ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ;ÿ<ÿ>ÿ?ÿý sý !ý #ý #Fý #Gý $ý $ ý $Xý &jý 'ûý (%ý )‘ý *(ý +bý ,|ý -¿ý .Fý /Iý 0Ðý 1ý 2òý 3 ý 4Ný 5rý 6ƒý 79ý 8sý 9œý ;ý ;Fý ;Gý <ý < ý <[ý >jý ?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ\ÿ]ÿ_ÿý @ý AÇý Bæý Cý D^ý EÃý F ý G7ý HQý I_ý Jcý Kmý Lºý MÄý NÊý Oèý PFý Qpý Rý Sý Tiý U|ý V©ý Wâý Xñý Yý Zdý \ý \Fý \Gý ]ý ] ý ]Qý _j`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý ` ý a1ý bIý cMý dYý eµý fµý gÎý hÒý iÕý j<ý kŒý l¬ý m²ý n ý oæý pý q"ý r/ý s3ý tGý ueý v°ý wÄý xÕý yïý zý {ý |&ý }2ý ~>ý ®ÿ‚ÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿ›ÿœÿžÿŸÿý ý Fý Gý ‚ý ‚ ý ‚]ý „jý …ý †ªý ‡­ý ˆÙý ‰ý Š.ý ‹=ý ŒSý Wý Žý Ôý Aý ‘_ý ’¦ý “½ý ”äý •ý –!ý —Pý ˜fý ™£ý ›ý ›Fý ›Gý œý œ ý œRý žjý ŸQ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿºÿ»ÿ½ÿ¾ÿ¿ÿý  €ý ¡¸ý ¢Ùý £íý ¤øý ¥ý ¦Dý §®ý ¨ý ©ý ª‰ý «Äý ¬„ý ­Âý ®Ôý ¯êý °5ý ±[ý ²Òý ³íý ´óý µ÷ý ¶ýý ·)ý ¸mý ºý ºFý ºGý »ý » ý »Uý ½jý ¾`ý ¿‹ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý À¦ý Á±ý ÂÃý Ãéý Äøý Å!ý Æ$ý Çxý ȃý É«ý Ê®ý ˲ý Ìâý Í"ý Î_ý Ïý оý Ñòý Ò+ý Ófý Ôý ÕÝý Öáý ×÷ý Øý Ùý Ú%ý Ûgý Üý ݳý ÞËý ßúàÿáÿâÿãÿäÿåÿçÿèÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý àý áý âUý ãmý äyý åƒý çý çFý çGý èý è ý èTý êjý ëhý ìtý í˜ý îAý ïSý ð¿ý ñ(ý ò_ý óÈý ô ý õý ö4ý ÷9ý øuý ù„ý ú¢ý ûÝý üùý ýý þ"ý ÿ^ÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý pý Èý Jý pý ~ý ý Fý Gý ý  ý Wý jý tý xý Ÿý ßý  ý æý Þý èý ïý Iý fý hý mý ´ý ý /ý Bý mý zý ~ý ˜ý · ÿ!ÿ"ÿ#ÿ$ÿ&ÿ'ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ7ÿ8ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý ¹ý ! ý "Jý #|ý $œý &ý &Fý &Gý 'ý ' ý 'Zý )jý *Öý +Qý ,xý -¥ý .Tý /™ý 07ý 1Uý 2‹ý 3ý 42ý 5Fý 7ý 7Fý 7Gý 8ý 8 ý 8Ný :jý ;ñý <¼ý =üý > ý ?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿOÿPÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @@ý A™ý B¢ý Cý Dbý Esý F¿ý G%ý Hcý IÄý Jý K/ý LHý MWý Oý OFý OGý Pý P ý POý Rjý Sôý Tý U ý V:ý W‡ý X’ý YÊý Zý [‘ý \œý ]ý ^ý _!`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿoÿpÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `Šý a™ý b©ý c¬ý dý eQý fý gRý haý iiý j~ý k…ý l“ý mªý oý oFý oGý pý p ý pfý rjý sý t-ý u5ý vEý w•ý xÖý yWý zƒý {œý |£ý }*ý ~/ý M€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿÿÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €…ý •ý ‚ýý ƒ)ý „.ý …7ý †<ý ‡ºý ˆ¿ý ‰,ý ŠÏý ‹ý ŒLý ý ý Fý Gý ý ý eý ’jý “ý ”|ý •œý –Çý —.ý ˜6ý ™£ý š<ý ›Iý œVý ‰ý žõý Ÿ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ®ÿ¯ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  Tý ¡pý ¢{ý £¸ý ¤ý ¥mý ¦¼ý §¾ý ¨@ý ©mý ª–ý «§ý ¬¬ý ®ý ®Fý ®Gý ¯ý ¯ý ¯iý ±jý ²ý ³!ý ´ˆý µý ¶ký ·ñý ¸ý ¹,ý º[ý »fý ¼™ý ½ ý ¾>ý ¿AÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿÌÿÍÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý Àbý Áüý ÂEý ÃXý Äuý Åwý Æ…ý Ç ý È!ý É5ý ÊYý Ìý ÌFý ÌGý Íý Í ý Íbý Ïjý Ðý Ñ9ý Òý ÓLý Ôqý Õuý Ö ý ×§ý ØÜý Ùý Ú(ý ÛMý ÜÄý ÝÖý ÞLý ßWàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿõÿöÿøÿùÿúÿûÿüÿýÿþÿÿÿý àœý á±ý âºý ãÆý äÎý åý æý ç ý è¥ý é¬ý êÀý ëàý ì÷ý í$ý î7ý ï^ý ð~ý ñ…ý òœý ó¡ý õý õFý õGý öý öý öaý øjý ù!ý údý ûÒý üAý ýØý þéý ÿõÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý 3ý Dý Pý uý  ý ¯ý Ñý <ý ?ý –ý ÿý -ý \ý |ý ‡ý ý Fý Gý ý  ý dý jý %ý =ý Îý $ý ^ý {ý ùý ý Aý Iý Pý – ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ,ÿ-ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý ×ý !îý "ý #¡ý $Þý %ý &5ý 'sý (€ý )‰ý *‹ý ,ý ,Fý ,Gý -ý -ý -cý /jý 0)ý 1Ûý 2ôý 32ý 4dý 5‹ý 6àý 7íý 8ùý 9$ý :¯ý ;¶ý <Úý =ý >Tý ?[@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿMÿNÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @ý AÔý BEý C[ý Dˆý E“ý FÚý Gúý Hý IBý Jšý K°ý Mý MFý MGý Ný N ý Nhý Pjý Q1ý RIý Slý TŽý UAý VZý W–ý X§ý Yµý Z¹ý [ý \ý ]:ý ^mý _~`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿvÿwÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `¯ý aáý bFý cký dxý e“ý fÿý gý h"ý i?ý jJý kUý l…ý m‹ý n£ý o¹ý pØý qHý rPý sRý tvý vý vFý vGý wý w ý w^ý yjý z=ý {Aý |Uý }¼ý ~¿ý €ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ”ÿ•ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €ý (ý ‚Sý ƒ™ý „ý …$ý †Tý ‡%ý ˆÌý ‰ý Š:ý ‹Gý Œuý ý Žéý  ý ý ‘…ý ’Ÿý ”ý ”Fý ”Gý •ý •ý •_ý —jý ˜=ý ™Mý š]ý ›pý œ„ý ˜ý žý ŸH ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  Wý ¡’ý ¢íý £@ý ¤uý ¥~ý ¦ ý §¶ý ¨Àý ©åý ªëý «ý ¬ý ­†ý ®Œý ¯´ý °ºý ±Âý ²Æý ³Ùý ´ý µý ¶/ý ·?ý ¸Gý ¹ˆý º¡ý »Úý ¼Üý ½÷ý ¾úý ¿/ÀÿÁÿÂÿÃÿÅÿÆÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÚÿÛÿÝÿÞÿßÿý ÀUý ÁWý ‹ý êý Åý ÅFý ÅGý Æý Æý Ægý Èjý É]ý ÊÃý Ë*ý ÌOý Íý Î"ý ÏDý ÐYý ÑÍý Òý Ó ý ÔÛý ÕEý ÖÞý ×<ý ؃ý Úý ÚFý ÚGý Ûý Û ý Û`ý Ýjý ÞËý ßãàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿý àüý áý âgý ãý äÆý åý æ3ý çiý èqý é¨ý ê0ý ëŠý ìÉý íôý î)ý ï?ý ðžý ñý ò-ý ó–ý ô¬ìPðH ð(ð0ð( ð ð(>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚%"&C&"Times New Roman,Normalus"&12&A*'&C&"Times New Roman,Normalus"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” §ÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý Fý Gý ý  ý Oý ý  ý [ý ý  ý Qý ký ý lý mý ý ný "ý #ý +ý #ý ,ý #ý -ý #ý .ý #ý /ý #ý ý Fý Gý ý  ý Lý ý  ý Tý ký ý lý mý ý ný "ý $ý +ý $ý ,ý $ý -ý $ý .ý $ý /ý $ý ý Fý Gý ý  ý Wý ý  ý Z!ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ+ÿ,ÿ.ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ8ÿ9ÿ;ÿ=ÿ>ÿ?ÿý !ký !ý !lý !mý #ý #ný $"ý $%ý %+ý %%ý &,ý &%ý '-ý '%ý (.ý (%ý )/ý )%ý +ý +Fý +Gý ,ý , ý ,Ný .ký .ý .lý .mý 0ý 0ný 1"ý 1&ý 2+ý 2&ý 3,ý 3&ý 4-ý 4&ý 5.ý 5&ý 6/ý 6&ý 8ý 8Fý 8Gý 9ý 9 ý 9Uý ;ký ;ý ;lý ;mý =ý =ný >"ý >'ý ?+ý ?'@ÿAÿBÿCÿEÿFÿGÿHÿJÿLÿMÿNÿOÿPÿQÿRÿTÿUÿVÿWÿXÿZÿ\ÿ]ÿ^ÿ_ÿý @,ý @'ý A-ý A'ý B.ý B'ý C/ý C'ý Eý EFý EGý Fý F ý FRý Gý G ý GXý Hý H ý H]ý Jký Jý Jlý Jmý Lý Lný M"ý M(ý N+ý N(ý O,ý O(ý P-ý P(ý Q.ý Q(ý R/ý R(ý Tý TFý TGý Uý U ý Udý Vý V ý Vhý Wý Wý Waý Xý Xý Xeý Zký Zý Zlý Zmý \ý \ný ]"ý ]#ý ^+ý ^#ý _,ý _#`ÿaÿbÿdÿeÿgÿiÿjÿkÿlÿmÿnÿoÿqÿrÿtÿvÿwÿxÿyÿzÿ{ÿ|ÿ~ÿÿý `-ý `#ý a.ý a#ý b/ý b#ý dý dFý dGý eý eý e_ý gký gý glý gmý iý iný j"ý j$ý k+ý k$ý l,ý l$ý m-ý m$ý n.ý n$ý o/ý o$ý qý qFý qGý rý rý rcý tký tý tlý tmý vý vný w"ý w%ý x+ý x%ý y,ý y%ý z-ý z%ý {.ý {%ý |/ý |%ý ~ý ~Fý ~Gý ý  ý b€ÿ‚ÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿŒÿÿŽÿÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿšÿ›ÿœÿžÿý €ý €ý €iý ‚ký ‚ý ‚lý ‚mý „ý „ný …"ý …&ý †+ý †&ý ‡,ý ‡&ý ˆ-ý ˆ&ý ‰.ý ‰&ý Š/ý Š&ý Œý ŒFý ŒGý ý  ý ^ý Žý Ž ý Ž`ý ký ý lý mý ’ý ’ný “"ý “'ý ”+ý ”'ý •,ý •'ý –-ý –'ý —.ý —'ý ˜/ý ˜'ý šý šFý šGý ›ý › ý ›fý œý œý œgý žký žý žlý žm ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿý  ý  ný ¡"ý ¡(ý ¢+ý ¢(ý £,ý £(ý ¤-ý ¤(ý ¥.ý ¥(ý ¦/ý ¦(ìPðH°ð,ð0ð( ð ð,>¶@n  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } Š } ” _ÿÿÿÿÿÿÿ     ÿÿÿÿÿÿÿÿÿÿÿÿÿÿý oý pý ý qý ý ý 6ý rý oý sý ý tý ý ý 6ý uý v ý ø ý oý wý ý xý ý ý 6ý vý (ý ¢ý Gý  ý Hý oý yý ý zý ý ý 6ý vý „ ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ(ÿ)ÿ*ÿ+ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ8ÿ9ÿ:ÿ;ÿ=ÿ>ÿ?ÿý í ý !I!ý "º"ý #É#ý $$ý %Ø%ý &&ý (oý ({ý )ý )|ý *ý *ý +6+ý -v-ý .Ç.ý //ý 0.0ý 171ý 292ý 3Î3ý 4J4ý 5|5ý 6Ò6ý 8oý 8}ý 9ý 9~ý :ý :ý ;6;ý =v=ý >p>ý ?:?@ÿAÿBÿCÿEÿFÿGÿHÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿYÿZÿ[ÿ\ÿ^ÿ_ÿý @L@ý AàAý BôBý CCý Eoý Eý Fý F€ý Gý Gý H6Hý JvJ¾ Ký L6Lý MæMý NñNý OOý P(Pý Q¾Qý RýRý S Sý T<Tý UQUý V Vý WPWý Yoý Yý Zý Z‚ý [ý [ý \6\ý ^v^ý _1_`ÿaÿbÿcÿdÿeÿfÿhÿiÿjÿkÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿxÿyÿzÿ{ÿ}ÿ~ÿÿý `¸`ý aßaý bubý c3cý dQdý e¡eý f@fý hoý hƒý iý i„ý jý jý k6ký mvmý nIný oWoý pbpý qŠqý r½rý s°sý tÈtý uúuý v€vý xoý x…ý yý y†ý zý zý {6{ý }v}ý ~]~ý ‘€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿÿŽÿÿÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿžÿŸÿý €H€ý éý ‚:‚ý ƒVƒý „²„ý …è…ý ††ý ‡>‡ý ˆ5ˆý ‰7‰ý ŠÞŠý ‹ª‹ý oý ‡ý Žý Žˆý ý ý 6ý ’v’ý “û“ý ””ý •A•ý –h–ý —*—ý ˜_˜ý ™±™ý šašý ›¼›ý œÏœý žoý ž‰ý Ÿý ŸŠ ÿ¡ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ®ÿ¯ÿ°ÿ±ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ½ÿ¾ÿ¿ÿý  ý  ý ¡6¡ý £v£ý ¤ ¤ý ¥T¥ý ¦~¦ý §–§ý ¨N¨ý ©r©ý ªšªý «œ«ý ¬Ÿ¬ý ®oý ®‹ý ¯ý ¯Œý °ý °ý ±6±ý ³v³ý ´´ý µñµý ¶q¶ý ··ý ¸m¸ý ¹E¹ý ººý »\»ý ½oý ½ý ¾ý ¾Žý ¿ý ¿ÀÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÊÿËÿÌÿÍÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÜÿÝÿÞÿßÿý À6Àý ÂvÂý âÃý Ä­Äý Å™Åý ÆÆý ÇÇý È*Èý Êoý Êý Ëý Ëý Ìý Ìý Í6Íý ÏvÏý ÐEÐý ÑÎÑý ÒÒý Ó/Óý ÔiÔý Õ Õý Ö¯Öý ×ò×ý ØØý ÙÿÙý Ú…Úý Üoý Ü‘ý Ýý Ý’ý Þý Þý ß6ßáÿâÿãÿäÿåÿæÿèÿéÿêÿëÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿøÿùÿúÿûÿýÿþÿÿÿý áváý â)âý ãããý äƒäý ååý ææý èoý è“ý éý é”ý êý êý ë6ëý ívíý îIîý ï•ïý ð¦ðý ñÃñý òSòý óqóý ôôý õzõý ö¬öý øoý ø•ý ùý ù–ý úý úý û6ûý ývýý þ!þý ÿ2ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý œý <ý xý Êý %ý “ý oý —ý ý ˜ý ý ý 6 ý v ý - ý tý µý ý ¥ý ¶ý Íý )ý ¬ý Uý £ý ý oý ™ý ý šý ý ý 6ý v ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ(ÿ)ÿ*ÿ+ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ6ÿ7ÿ8ÿ9ÿ;ÿ<ÿ=ÿ>ÿ?ÿý µ ý !M!ý "Y"ý #Ý#ý $i$ý %–%ý &â&ý (oý (›ý )ý )œý *ý *ý +6+ý -v-ý .œ.ý /d/ý 0¼0ý 1õ1ý 2 2ý 3Ì3ý 4~4ý 6oý 6ý 7ý 7žý 8ý 8ý 969ý ;v;ý <Ä<ý =Œ=ý > >ý ?Ä?@ÿAÿBÿDÿEÿFÿGÿIÿJÿLÿMÿNÿOÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @f@ý AƒAý B–Bý Doý DŸý Eý Eøý Fý Fý G6ý G ý IvIý JøJý Loý Ljý Mý M¡ý Ný Ný O6ý O¢ý QvQý RûRý SSý T Tý U Uý VVý WWý XXý YYý Z!Zý [%[ý \)\ý ]-]ý ^1^ý _5_`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `9`ý a=aý bAbý cEcý dIdý eMeý fQfý gUgý hYhý i]iý j`jý kdký lhlý mlmý npný otoý pxpý q|qý r€rý s„sý tˆtý u‹uý vŽvý w‘wý x•xý y˜yý zœzý {Ÿ{ý |¢|ý }¦}ý ~ª~ý ­€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €±€ý µý ‚¸‚ý ƒ¼ƒý „¿„ý …Ã…ý †Ç†ý ‡Ë‡ý ˆÎˆý ‰Ò‰ý ŠÖŠý ‹Ù‹ý ŒÛŒý ßý ŽãŽý æý éý ‘í‘ý ’ñ’ý “ô“ý ”ø”ý •ü•ý ––ý ——ý ˜˜ý ™ ™ý ššý ››ý œœý ý žžý Ÿ!Ÿ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  $ ý ¡(¡ý ¢*¢ý £.£ý ¤2¤ý ¥6¥ý ¦:¦ý §=§ý ¨A¨ý ©D©ý ªHªý «L«ý ¬O¬ý ­S­ý ®W®ý ¯Z¯ý °^°ý ±b±ý ²d²ý ³g³ý ´k´ý µnµý ¶q¶ý ·u·ý ¸x¸ý ¹|¹ý ººý »ƒ»ý ¼‡¼ý ½‹½ý ¾¾ý ¿’¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý À–Àý Á™Áý œÂý àÃý Ä£Äý ŧÅý Æ«Æý Ç®Çý ȲÈý ɵÉý ʹÊý ˼Ëý Ì¿Ìý ÍÃÍý ÎÆÎý ÏÊÏý ÐÎÐý ÑÒÑý ÒÕÒý ÓØÓý ÔÜÔý ÕàÕý ÖâÖý ׿×ý ØéØý ÙíÙý ÚñÚý ÛõÛý ÜùÜý ÝüÝý ÞÞý ßßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý ààý á áý â âý ããý ääý ååý ææý ççý è"èý é$éý ê(êý ë*ëý ì,ìý í/íý î3îý ï7ïý ð:ðý ñ<ñý ò@òý óDóý ôFôý õIõý öMöý ÷Q÷ý øTøý ùVùý úYúý û[ûý ü_üý ýcýý þfþý ÿiÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý mý qý uý xý {ý ~ý ý …ý ‰ý Œ ý  ý ‘ ý • ý ™ ý œý  ý ¢ý ¥ý ¨ý ¬ý ¯ý ²ý ¶ý ºý ¾ý Àý Äý Èý Êý Íý Ðý Ô ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý Ö ý !Ú!ý "Þ"ý #á#ý $å$ý %è%ý &ë&ý 'ï'ý (ò(ý )õ)ý *ù*ý +ý+ý ,,ý --ý ..ý / /ý 0 0ý 11ý 22ý 33ý 44ý 55ý 66ý 7!7ý 8%8ý 9)9ý :+:ý ;.;ý <0<ý =4=ý >7>ý ?9?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @<@ý A>Aý BABý CDCý DFDý EIEý FLFý GPGý HTHý IWIý J[Jý K_Ký LbLý MfMý NhNý OkOý PmPý QpQý RsRý SuSý TxTý U{Uý V~Vý WWý X„Xý Y†Yý ZŠZý [Œ[ý \\ý ]“]ý ^–^ý _™_`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `œ`ý a aý b¢bý c¦cý d©dý e¬eý f¯fý g±gý h´hý i¸iý jºjý k½ký l¿lý mÂmý nÆný oÉoý pÌpý qÎqý rÑrý sÔsý t×tý uÙuý vÛvý wÝwý xáxý yäyý zæzý {ê{ý |î|ý }ò}ý ~ô~ý ÷€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €ù€ý üý ‚ÿ‚ý ƒƒý „„ý ……ý ††ý ‡ ‡ý ˆˆý ‰‰ý ŠŠý ‹‹ý ŒŒý ý Ž Žý "ý %ý ‘)‘ý ’,’ý “/“ý ”3”ý •5•ý –7–ý —:—ý ˜<˜ý ™?™ý šBšý ›E›ý œGœý Jý žNžý ŸQŸ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  U ý ¡X¡ý ¢[¢ý £^£ý ¤a¤ý ¥c¥ý ¦e¦ý §g§ý ¨i¨ý ©m©ý ªpªý «r«ý ¬u¬ý ­w­ý ®z®ý ¯|¯ý °~°ý ±±ý ²ƒ²ý ³…³ý ´ˆ´ý µ‹µý ¶¶ý ··ý ¸“¸ý ¹–¹ý º˜ºý »›»ý ¼ž¼ý ½¡½ý ¾£¾ý ¿¥¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý À©Àý Á¬Áý °Âý óÃý Ä·Äý ŹÅý ƼÆý ǾÇý ÈÀÈý ÉÄÉý ÊÈÊý ËËËý ÌÏÌý ÍÒÍý ÎÕÎý ÏØÏý ÐÚÐý ÑÜÑý ÒÞÒý ÓàÓý ÔâÔý ÕåÕý ÖéÖý ×í×ý ØïØý ÙñÙý ÚóÚý Û÷Ûý ÜúÜý ÝýÝý ÞÿÞý ßßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý ààý ááý ââý ã ãý ä äý ååý ææý ççý èèý ééý êêý ëëý ì!ìý í$íý î&îý ï)ïý ð-ðý ñ/ñý ò2òý ó5óý ô7ôý õ9õý ö<öý ÷>÷ý ø@øý ùBùý úFúý ûHûý üJüý ýLýý þPþý ÿRÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý Uý Wý Yý \ý ^ý aý dý fý iý m ý p ý s ý v ý y ý |ý ~ý €ý ƒý …ý ‡ý ‰ý ‹ý ý ý “ý –ý šý œý Ÿý ¡ý £ý § ÿ!ÿ"ÿ#ÿ%ÿ&ÿ'ÿ(ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ2ÿ3ÿ4ÿ5ÿ7ÿ8ÿ9ÿ:ÿ<ÿ=ÿ>ÿ?ÿý ª ý !¬!ý "®"ý #°#ý %oý %£ý &ý &¤ý 'ý 'ý (6ý (¥ý *v*ý +³+ý ,´,ý -¶-ý .·.ý /¹/ý 0º0ý 2oý 2pý 3ý 3qý 4ý 4ý 56ý 5¦ý 7oý 7sý 8ý 8tý 9ý 9ý :6ý :§ý <oý <wý =ý =xý >ý >ý ?6?AÿBÿCÿDÿEÿFÿHÿIÿJÿKÿMÿNÿOÿPÿQÿRÿSÿTÿUÿWÿXÿYÿZÿ\ÿ]ÿ^ÿ_ÿý AvAý B(Bý C¢Cý DGDý E Eý FHFý Hoý Hyý Iý Izý Jý Jý K6Ký MvMý N„Ný OíOý PIPý QºQý RÉRý SSý TØTý UUý Woý W{ý Xý X|ý Yý Yý Z6Zý \v\ý ]Ç]ý ^^ý _._`ÿaÿbÿcÿdÿeÿgÿhÿiÿjÿlÿmÿnÿoÿpÿqÿrÿtÿuÿvÿwÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý `7`ý a9aý bÎbý cJcý d|dý eÒeý goý g}ý hý h~ý iý iý j6jý lvlý mpmý n:ný oLoý pàpý qôqý rrý toý tý uý u€ý vý vý w6wý yvyý z6zý {æ{ý |ñ|ý }}ý ~(~ý ¾€ÿÿ‚ÿƒÿ„ÿ…ÿ‡ÿˆÿ‰ÿŠÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ–ÿ—ÿ˜ÿ™ÿ›ÿœÿÿžÿŸÿý €ý€ý  ý ‚<‚ý ƒQƒý „ „ý …P…ý ‡oý ‡ý ˆý ˆ‚ý ‰ý ‰ý Š6Šý ŒvŒý 1ý ޏŽý ßý uý ‘3‘ý ’Q’ý “¡“ý ”@”ý –oý –ƒý —ý —„ý ˜ý ˜ý ™6™ý ›v›ý œIœý Wý žbžý ŸŠŸ ÿ¡ÿ¢ÿ£ÿ¤ÿ¦ÿ§ÿ¨ÿ©ÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿ»ÿ¼ÿ½ÿ¾ÿý  ½ ý ¡°¡ý ¢È¢ý £ú£ý ¤€¤ý ¦oý ¦…ý §ý §†ý ¨ý ¨ý ©6©ý «v«ý ¬]¬ý ­‘­ý ®H®ý ¯é¯ý °:°ý ±V±ý ²²²ý ³è³ý ´´ý µ>µý ¶5¶ý ·7·ý ¸Þ¸ý ¹ª¹ý »oý »‡ý ¼ý ¼ˆý ½ý ½ý ¾6¾ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿÌÿÍÿÎÿÏÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÜÿÝÿÞÿßÿý ÀvÀý ÁûÁý ÂÂý ÃAÃý ÄhÄý Å*Åý Æ_Æý DZÇý ÈaÈý ɼÉý ÊÏÊý Ìoý ̉ý Íý ÍŠý Îý Îý Ï6Ïý ÑvÑý Ò Òý ÓTÓý Ô~Ôý Õ–Õý ÖNÖý ×r×ý ØšØý ÙœÙý ÚŸÚý Üoý Ü‹ý Ýý ÝŒý Þý Þý ß6ßáÿâÿãÿäÿåÿæÿçÿèÿéÿëÿìÿíÿîÿðÿñÿòÿóÿôÿõÿöÿøÿùÿúÿûÿýÿþÿÿÿý áváý ââý ãñãý äqäý ååý æmæý çEçý èèý é\éý ëoý ëý ìý ìŽý íý íý î6îý ðvðý ñ¢ñý ò­òý ó™óý ôôý õõý ö*öý øoý øý ùý ùý úý úý û6ûý ývýý þEþý ÿÎÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý /ý iý  ý ¯ý òý ý ÿý …ý oý ‘ý ý ’ý ý ý 6 ý vý )ý ãý ƒý ý ý oý “ý ý ”ý ý ý 6ý vý Iý •ý ¦ý à ÿ!ÿ"ÿ#ÿ$ÿ&ÿ'ÿ(ÿ)ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ5ÿ6ÿ7ÿ8ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý S ý !q!ý ""ý #z#ý $¬$ý &oý &•ý 'ý '–ý (ý (ý )6)ý +v+ý ,!,ý -2-ý .œ.ý /</ý 0x0ý 1Ê1ý 2%2ý 3“3ý 5oý 5—ý 6ý 6˜ý 7ý 7ý 868ý :v:ý ;-;ý <t<ý =µ=ý >>ý ?¥?@ÿAÿBÿCÿDÿEÿFÿHÿIÿJÿKÿMÿNÿOÿPÿQÿRÿSÿTÿVÿWÿXÿYÿ[ÿ\ÿ]ÿ^ÿ_ÿý @¶@ý AÍAý B)Bý C¬Cý DUDý E£Eý FFý Hoý H™ý Iý Išý Jý Jý K6Ký MvMý NµNý OMOý PYPý QÝQý RiRý S–Sý TâTý Voý V›ý Wý Wœý Xý Xý Y6Yý [v[ý \œ\ý ]d]ý ^¼^ý _õ_`ÿaÿbÿdÿeÿfÿgÿiÿjÿkÿlÿmÿnÿoÿpÿrÿsÿtÿuÿwÿxÿzÿ{ÿ|ÿ}ÿÿý ` `ý aÌaý b~bý doý dý eý ežý fý fý g6gý iviý jÄjý kŒký l lý mÄmý nfný oƒoý p–pý roý rŸý sý søý tý tý u6ý u¨ý wvwý xøxý zoý zjý {ý {¡ý |ý |ý }6ý }¢ý v€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €û€ý ý ‚ ‚ý ƒ ƒý „„ý ……ý ††ý ‡‡ý ˆ!ˆý ‰%‰ý Š)Šý ‹-‹ý Œ1Œý 5ý Ž9Žý =ý Aý ‘E‘ý ’I’ý “M“ý ”Q”ý •U•ý –Y–ý —]—ý ˜`˜ý ™d™ý šhšý ›l›ý œpœý tý žxžý Ÿ|Ÿ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  € ý ¡„¡ý ¢ˆ¢ý £‹£ý ¤Ž¤ý ¥‘¥ý ¦•¦ý §˜§ý ¨œ¨ý ©Ÿ©ý ª¢ªý «¦«ý ¬ª¬ý ­­­ý ®±®ý ¯µ¯ý °¸°ý ±¼±ý ²¿²ý ³Ã³ý ´Ç´ý µËµý ¶Î¶ý ·Ò·ý ¸Ö¸ý ¹Ù¹ý ºÛºý »ß»ý ¼ã¼ý ½æ½ý ¾é¾ý ¿í¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý ÀñÀý ÁôÁý ÂøÂý ÃüÃý ÄÄý ÅÅý ÆÆý Ç Çý ÈÈý ÉÉý ÊÊý ËËý ÌÌý Í!Íý Î$Îý Ï(Ïý Ð*Ðý Ñ.Ñý Ò2Òý Ó6Óý Ô:Ôý Õ=Õý ÖAÖý ×D×ý ØHØý ÙLÙý ÚOÚý ÛSÛý ÜWÜý ÝZÝý Þ^Þý ßbßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý àdàý ágáý âkâý ãnãý äqäý åuåý æxæý ç|çý èèý éƒéý ê‡êý ë‹ëý ììý í’íý î–îý ï™ïý ðœðý ñ ñý ò£òý ó§óý ô«ôý õ®õý ö²öý ÷µ÷ý ø¹øý ù¼ùý ú¿úý ûÃûý üÆüý ýÊýý þÎþý ÿÒÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý Õý Øý Üý àý âý æý éý íý ñý õ ý ù ý ü ý  ý  ý ý  ý  ý ý ý ý ý ý "ý $ý (ý *ý ,ý /ý 3ý 7ý :ý < ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý @ ý !D!ý "F"ý #I#ý $M$ý %Q%ý &T&ý 'V'ý (Y(ý )[)ý *_*ý +c+ý ,f,ý -i-ý .m.ý /q/ý 0u0ý 1x1ý 2{2ý 3~3ý 44ý 5…5ý 6‰6ý 7Œ7ý 88ý 9‘9ý :•:ý ;™;ý <œ<ý = =ý >¢>ý ?¥?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿý @¨@ý A¬Aý B¯Bý C²Cý D¶Dý EºEý F¾Fý GÀGý HÄHý IÈIý JÊJý KÍKý LÐLý MÔMý NÖNý OÚOý PÞPý QáQý RåRý SèSý TëTý UïUý VòVý WõWý XùXý YýYý ZZý [[ý \\ý ] ]ý ^ ^ý __`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿý ``ý aaý bbý ccý ddý e!eý f%fý g)gý h+hý i.iý j0jý k4ký l7lý m9mý n<ný o>oý pApý qDqý rFrý sIsý tLtý uPuý vTvý wWwý x[xý y_yý zbzý {f{ý |h|ý }k}ý ~m~ý p€ÿÿ‚ÿƒÿ„ÿ…ÿ†ÿ‡ÿˆÿ‰ÿŠÿ‹ÿŒÿÿŽÿÿÿ‘ÿ’ÿ“ÿ”ÿ•ÿ–ÿ—ÿ˜ÿ™ÿšÿ›ÿœÿÿžÿŸÿý €s€ý uý ‚x‚ý ƒ{ƒý „~„ý ……ý †„†ý ‡†‡ý ˆŠˆý ‰Œ‰ý ŠŠý ‹“‹ý Œ–Œý ™ý ŽœŽý  ý ¢ý ‘¦‘ý ’©’ý “¬“ý ”¯”ý •±•ý –´–ý —¸—ý ˜º˜ý ™½™ý š¿šý ›Â›ý œÆœý Éý žÌžý ŸÎŸ ÿ¡ÿ¢ÿ£ÿ¤ÿ¥ÿ¦ÿ§ÿ¨ÿ©ÿªÿ«ÿ¬ÿ­ÿ®ÿ¯ÿ°ÿ±ÿ²ÿ³ÿ´ÿµÿ¶ÿ·ÿ¸ÿ¹ÿºÿ»ÿ¼ÿ½ÿ¾ÿ¿ÿý  Ñ ý ¡Ô¡ý ¢×¢ý £Ù£ý ¤Û¤ý ¥Ý¥ý ¦á¦ý §ä§ý ¨æ¨ý ©ê©ý ªîªý «ò«ý ¬ô¬ý ­÷­ý ®ù®ý ¯ü¯ý °ÿ°ý ±±ý ²²ý ³³ý ´´ý µ µý ¶¶ý ··ý ¸¸ý ¹¹ý ººý »»ý ¼ ¼ý ½"½ý ¾%¾ý ¿)¿ÀÿÁÿÂÿÃÿÄÿÅÿÆÿÇÿÈÿÉÿÊÿËÿÌÿÍÿÎÿÏÿÐÿÑÿÒÿÓÿÔÿÕÿÖÿ×ÿØÿÙÿÚÿÛÿÜÿÝÿÞÿßÿý À,Àý Á/Áý Â3Âý Ã5Ãý Ä7Äý Å:Åý Æ<Æý Ç?Çý ÈBÈý ÉEÉý ÊGÊý ËJËý ÌNÌý ÍQÍý ÎUÎý ÏXÏý Ð[Ðý Ñ^Ñý ÒaÒý ÓcÓý ÔeÔý ÕgÕý ÖiÖý ×m×ý ØpØý ÙrÙý ÚuÚý ÛwÛý ÜzÜý Ý|Ýý Þ~Þý ßßàÿáÿâÿãÿäÿåÿæÿçÿèÿéÿêÿëÿìÿíÿîÿïÿðÿñÿòÿóÿôÿõÿöÿ÷ÿøÿùÿúÿûÿüÿýÿþÿÿÿý àƒàý á…áý âˆâý ã‹ãý ääý ååý æ“æý ç–çý è˜èý é›éý êžêý ë¡ëý ì£ìý í¥íý î©îý ï¬ïý ð°ðý ñ³ñý ò·òý ó¹óý ô¼ôý õ¾õý öÀöý ÷Ä÷ý øÈøý ùËùý úÏúý ûÒûý üÕüý ýØýý þÚþý ÿÜÿÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý Þý àý âý åý éý íý ïý ñý óý ÷ ý ú ý ý ý ÿ ý  ý ý ý ý  ý  ý ý ý ý ý ý ý ý !ý $ý &ý )ý -ý / ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿý 2 ý !5!ý "7"ý #9#ý $<$ý %>%ý &@&ý 'B'ý (F(ý )H)ý *J*ý +L+ý ,P,ý -R-ý .U.ý /W/ý 0Y0ý 1\1ý 2^2ý 3a3ý 4d4ý 5f5ý 6i6ý 7m7ý 8p8ý 9s9ý :v:ý ;y;ý <|<ý =~=ý >€>ý ?ƒ?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿSÿTÿUÿVÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿý @…@ý A‡Aý B‰Bý C‹Cý DDý EEý F“Fý G–Gý HšHý IœIý JŸJý K¡Ký L£Lý M§Mý NªNý O¬Oý P®Pý Q°Qý Soý S£ý Tý T¤ý Uý Uý V6ý V¥ý XvXý Y³Yý Z´Zý [¶[ý \·\ý ]¹]ý ^º^åz/ --==JJ^^mm}}’’££³³ÂÂÏÏááííýý  --;;IIQQ**AAMM\\llyyŒŒ››««ÀÀÑÑááððýý++::MM[[iiwwXXìPðHÀð0ð0ð( ð ð0>¶Â@n  ÆÆÆggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0¤@H h t € Œ ˜éýGediminas Paulauskas63@€ ô@@@‰äÉl&ÅÎþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF»@WorkbookÿÿÿÿÕdCompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÔDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/importer.py0000644000175000017500000024066512274411107023563 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2008 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ SchoolTool simple import views. """ import xlrd import datetime import urllib import transaction from decimal import Decimal, InvalidOperation import zope.file.upload import zope.file.file import zope.lifecycleevent from zope.interface import implements from zope.cachedescriptors.property import Lazy from zope.container.contained import containedEvent from zope.container.interfaces import INameChooser from zope.event import notify from zope.i18n import translate from zope.security.proxy import removeSecurityProxy from zope.publisher.browser import BrowserView from zope.traversing.browser.absoluteurl import absoluteURL from schooltool.basicperson.interfaces import IDemographicsFields from schooltool.basicperson.interfaces import IDemographics from schooltool.basicperson.demographics import DateFieldDescription from schooltool.basicperson.demographics import BoolFieldDescription from schooltool.basicperson.demographics import IntFieldDescription from schooltool.basicperson.person import BasicPerson from schooltool.contact.contact import Contact, ContactPersonInfo from schooltool.contact.interfaces import IContact, IContactContainer from schooltool.contact.interfaces import IContactPersonInfo, IContactable from schooltool.export.interfaces import IImporterTask from schooltool.resource.resource import Resource from schooltool.resource.resource import Location from schooltool.resource.resource import Equipment from schooltool.group.group import Group from schooltool.group.interfaces import IGroupContainer from schooltool.term.interfaces import ITerm from schooltool.term.term import Term, getNextTerm, getPreviousTerm from schooltool.app.interfaces import ISchoolToolApplication from schooltool.app.interfaces import IApplicationPreferences from schooltool.app.app import SimpleNameChooser from schooltool.schoolyear.schoolyear import SchoolYear from schooltool.schoolyear.interfaces import ISchoolYear from schooltool.schoolyear.interfaces import ISchoolYearContainer from schooltool.skin import flourish from schooltool.course.section import Section from schooltool.course.interfaces import ISectionContainer from schooltool.course.interfaces import ICourseContainer from schooltool.course.course import Course from schooltool.common import DateRange from schooltool.common import parse_time_range from schooltool.task.progress import Timer from schooltool.task.tasks import RemoteTask from schooltool.task.state import TaskWriteState, TaskReadState from schooltool.timetable.daytemplates import CalendarDayTemplates from schooltool.timetable.daytemplates import WeekDayTemplates from schooltool.timetable.daytemplates import SchoolDayTemplates from schooltool.timetable.daytemplates import DayTemplate from schooltool.timetable.daytemplates import TimeSlot from schooltool.timetable.interfaces import ITimetableContainer from schooltool.timetable.interfaces import IScheduleContainer from schooltool.timetable.schedule import Period from schooltool.timetable.timetable import Timetable from schooltool.timetable.timetable import SelectedPeriodsSchedule from schooltool.common import format_message from schooltool.common import SchoolToolMessage as _ ERROR_NOT_XLS = _('SchoolTool cannot read this file. Is it a .xls formatted spreadsheet?') ERROR_NOT_INT = _('is not a valid integer') ERROR_NOT_UNICODE_OR_ASCII = _('not unicode or ascii string') ERROR_MISSING_REQUIRED_TEXT = _('missing required text') ERROR_NO_DATE = _('has no date in it') ERROR_END_BEFORE_START = _('end date cannot be before start date') ERROR_START_OVERLAP = _('start date overlaps another year') ERROR_END_OVERLAP = _('end date overlaps another year') ERROR_INVALID_SCHOOL_YEAR = _('invalid school year') ERROR_START_BEFORE_YEAR_START = _('start date before start of school year') ERROR_END_AFTER_YEAR_END = _('end date after end of school year') ERROR_START_OVERLAP_TERM = _('start date overlaps another term') ERROR_END_OVERLAP_TERM = _('end date overlaps another term') ERROR_HAS_NO_DAYS = _("has no days") ERROR_HAS_NO_DAY_TEMPLATES = _("has no day templates") ERROR_TIME_RANGE = _("is not a valid time range") ERROR_TIMETABLE_MODEL = _("is not a valid timetable model") ERROR_DUPLICATE_DAY_ID = _("is the same day id as another in this timetable") ERROR_UNKNOWN_DAY_ID = _("is not defined in the 'Day Templates' section") ERROR_DUPLICATE_PERIOD = _("is the same period id as another in this day") ERROR_DUPLICATE_HOMEROOM_PERIOD = _("is the same homeroom period id as another in this day") ERROR_RESOURCE_TYPE = _("must be either 'Location', 'Equipment' or 'Resource'") ERROR_INVALID_TERM_ID = _('is not a valid term in the given school year') ERROR_INVALID_COURSE_ID = _('is not a valid course in the given school year') ERROR_HAS_NO_COURSES = _('has no courses') ERROR_INVALID_PERSON_ID = _('is not a valid username') ERROR_INVALID_SCHEMA_ID = _('is not a valid timetable in the given school year') ERROR_INVALID_DAY_ID = _('is not a valid day id for the given timetable') ERROR_INVALID_PERIOD_ID = _('is not a valid period id for the given day') ERROR_INVALID_CONTACT_ID = _('is not a valid username or contact id') ERROR_UNWANTED_CONTACT_DATA = _('must be empty when ID is a user id') ERROR_INVALID_RESOURCE_ID = _('is not a valid resource id') ERROR_UNICODE_CONVERSION = _("Username cannot contain non-ascii characters") ERROR_CONTACT_RELATIONSHIP = _("is not a valid contact relationship") ERROR_NOT_BOOLEAN = _("must be either TRUE, FALSE, YES or NO (upper, lower and mixed case are all valid)") ERROR_MISSING_YEAR_ID = _("must have a school year") ERROR_MISSING_COURSES = _("must have a course") ERROR_MISSING_TERM_ID = _("must have a term") ERROR_CURRENT_SECTION_FIRST_TERM = _("the current section is in the first term of the school year") ERROR_CURRENT_SECTION_LAST_TERM = _("the current section is in the last term of the school year") ERROR_INVALID_PREV_TERM_SECTION = _("is not a valid section id in the previous term") ERROR_INVALID_NEXT_TERM_SECTION = _("is not a valid section id in the next term") ERROR_NO_TIMETABLE_DEFINED = _("no timetable is defined for this section") ERROR_NO_DAY_DEFINED = _("no day is defined in this row") ERROR_MISSING_PERIOD_ID = _('must have a valid period id') ERROR_INVALID_COURSE_CREDITS = _("course credits need to be a valid number") ERROR_INVALID_GENDER = _("gender must be male or female") ERROR_INVALID_PERSON_ID_LIST = _("has an invalid username") ERROR_INVALID_RESOURCE_ID_LIST = _("has an invalid resource id") ERROR_INVALID_COURSE_ID_LIST = _("has an invalid course id for the given school year") ERROR_END_TERM_BEFORE_START = _('end term cannot be before start term') ERROR_TERM_SECTION_ID = _('is not a valid section id in the specified term') ERROR_INCONSISTENT_SCHOOL_YEAR = _('school years must be consistent within this table') no_date = object() no_data = object() def normalized_progress(*args): pmin = 0.0 pmax = 1.0 n = len(args) while n > 0: pmin = pmin + pmax * args[n-2] pmax = pmax * args[n-1] n -= 2 return min(float(pmin) / float(pmax), 1.0) class ImporterBase(object): title = _("Import") def __init__(self, context, request, progress_callback=None): self.context, self.request = context, request self.errors = [] self.progress_callback = progress_callback def progress(self, *args): progress = normalized_progress(*args) if self.progress_callback is not None: self.progress_callback(progress) def isEmptyRow(self, sheet, row, num_cols=30): # We'll pick 30 as an arbitrary number of columns to test so that we # don't need the caller to specify the number. When a new column is # added to a sheet, the needed change in calling this method would # likely be overlooked. It's not that expensive anyway to test all 30. for col in range(num_cols): try: if sheet.cell_value(rowx=row, colx=col): return False except IndexError: break return True def getCellValue(self, sheet, row, col, default=no_data): try: return sheet.cell_value(rowx=row, colx=col) except IndexError: if default != no_data: return default raise def error(self, row, col, message): full_message = (self.sheet_name, row, col, message) self.errors.append(full_message) def getCellAndFound(self, sheet, row, col, default=u''): try: return sheet.cell_value(rowx=row, colx=col), True except: return default, False def getIntFoundValid(self, sheet, row, col, default=0): value, found = self.getCellAndFound(sheet, row, col, default) valid = True if (isinstance(value, (str, unicode)) and not value.strip()): found = False value = default if found: try: value = int(value) except (TypeError, ValueError): try: value = float(value) except (TypeError, ValueError): pass if isinstance(value, float): if int(value) != value: self.error(row, col, ERROR_NOT_INT) valid = False else: value = int(value) elif not isinstance(value, int): self.error(row, col, ERROR_NOT_INT) valid = False return value, found, valid def getIntFromCell(self, sheet, row, col, default=0): value, found, valid = self.getIntFoundValid(sheet, row, col, default) return value def getRequiredIntFromCell(self, sheet, row, col): value, found, valid = self.getIntFoundValid(sheet, row, col) if not found: self.error(row, col, ERROR_NOT_INT) return value def getTextFoundValid(self, sheet, row, col, default=u''): value, found = self.getCellAndFound(sheet, row, col, default) valid = True if found: if isinstance(value, float): if int(value) == value: value = int(value) try: value = unicode(value) except UnicodeError: self.error(row, col, ERROR_NOT_UNICODE_OR_ASCII) valid = False value = default return value, found, valid def getTextFromCell(self, sheet, row, col, default=u''): value, found, valid = self.getTextFoundValid(sheet, row, col, default) return value def getRequiredTextFromCell(self, sheet, row, col): value, found, valid = self.getTextFoundValid(sheet, row, col) if valid and not value: self.error(row, col, ERROR_MISSING_REQUIRED_TEXT) return value def getDateFromCell(self, sheet, row, col, default=no_date): value, found = self.getCellAndFound(sheet, row, col) if not found or value == '': if default is no_date: self.error(row, col, ERROR_NO_DATE) return None else: return default try: dt = xlrd.xldate_as_tuple(value, self.wb.datemode) except: self.error(row, col, ERROR_NO_DATE) return None return datetime.datetime(*dt).date() def getBoolFromCell(self, sheet, row, col): value, found = self.getCellAndFound(sheet, row, col) if not found: return None if type(value) == type(True): return value if type(value) == type(0): return bool(value) value, found, valid = self.getTextFoundValid(sheet, row, col) if not valid or not value: return None if value.upper() in ['TRUE', 'YES']: return True elif value.upper() in ['FALSE', 'NO']: return False else: self.error(row, col, ERROR_NOT_BOOLEAN) return None def getRequiredBoolFromCell(self, sheet, row, col): value, found = self.getCellAndFound(sheet, row, col) if not value: self.error(row, col, ERROR_MISSING_REQUIRED_TEXT) return None return self.getBoolFromCell(sheet, row, col) def getIdFromCell(self, sheet, row, col, default=u''): value, found, valid = self.getTextFoundValid(sheet, row, col, default) return value.strip() def getRequiredIdFromCell(self, sheet, row, col): value, found, valid = self.getTextFoundValid(sheet, row, col) if valid and not value: self.error(row, col, ERROR_MISSING_REQUIRED_TEXT) return value.strip() def getIdsFromCell(self, sheet, row, col): value, found, valid = self.getTextFoundValid(sheet, row, col) if not value: return [] return [p.strip() for p in value.split(',') if p.strip()] def getRequiredIdsFromCell(self, sheet, row, col): value, found = self.getCellAndFound(sheet, row, col) if not value: self.error(row, col, ERROR_MISSING_REQUIRED_TEXT) return [] return self.getIdsFromCell(sheet, row, col) def validateUnicode(self, value, row, col): # XXX: this has to be fixed # XXX: SchoolTool should handle UTF-8 try: value.encode('ascii') except UnicodeEncodeError: self.error(row, col, ERROR_UNICODE_CONVERSION) @property def sheet(self): if self.sheet_name not in self.wb.sheet_names(): return return self.wb.sheet_by_name(self.sheet_name) def import_data(self, wb): self.wb = wb if self.sheet: return self.process() def ensure_students_group(self, year): gc = IGroupContainer(year) if 'students' in gc: return gc['students'] else: students = Group(_('Students')) students.__name__ = 'students' gc['students'] = students return students def ensure_teachers_group(self, year): gc = IGroupContainer(year) if 'teachers' in gc: return gc['teachers'] else: teachers = Group(_('Teachers')) teachers.__name__ = 'teachers' gc['teachers'] = teachers return teachers def createSection(self, data, term, courses): sc = ISectionContainer(term) if data['__name__'] in sc: section = sc[data['__name__']] section.title = data['title'] section.description = data['description'] for course in section.courses: section.courses.remove(course) for resource in section.resources: section.resources.remove(resource) for student in section.members: section.members.remove(student) for teacher in section.instructors: section.instructors.remove(teacher) else: section = Section(data['title'], data['description']) section.__name__ = data['__name__'] sc[section.__name__] = section for course in courses: section.courses.add(removeSecurityProxy(course)) return section class SchoolYearImporter(ImporterBase): title = _("School Years") sheet_name = 'School Years' def createSchoolYear(self, data): syc = ISchoolYearContainer(self.context) name = data['__name__'] if name in syc: sy = syc[name] sy.first = data['first'] sy.last = data['last'] else: sy = SchoolYear(data['title'], data['first'], data['last']) sy.__name__ = name return sy def addSchoolYear(self, sy, data): syc = ISchoolYearContainer(self.context) if sy.__name__ in syc: return if sy.__name__ is None: sy.__name__ = SimpleNameChooser(syc).chooseName('', sy) syc[sy.__name__] = sy def testOverlap(self, name, date): for sy in ISchoolYearContainer(self.context).values(): if name == sy.__name__: continue if date >= sy.first and date <= sy.last: return True return False def process(self): sh = self.sheet nrows = sh.nrows for row in range(1, nrows): num_errors = len(self.errors) data = {} data['__name__'] = self.getRequiredIdFromCell(sh, row, 0) data['title'] = self.getRequiredTextFromCell(sh, row, 1) data['first'] = self.getDateFromCell(sh, row, 2) data['last'] = self.getDateFromCell(sh, row, 3) if data['last'] < data['first']: self.error(row, 3, ERROR_END_BEFORE_START) elif self.testOverlap(data['__name__'], data['first']): self.error(row, 2, ERROR_START_OVERLAP) elif self.testOverlap(data['__name__'], data['last']): self.error(row, 3, ERROR_END_OVERLAP) if num_errors == len(self.errors): sy = self.createSchoolYear(data) self.addSchoolYear(sy, data) self.progress(row, nrows) class TermImporter(ImporterBase): title = _("Terms") sheet_name = 'Terms' def createTerm(self, data): syc = ISchoolYearContainer(self.context) sy = syc[data['school_year']] name = data['__name__'] if name in sy: term = sy[name] term.first = data['first'] term.last = data['last'] else: term = Term(data['title'], data['first'], data['last']) term.__name__ = data['__name__'] term.addWeekdays(*range(7)) return term def addTerm(self, term, data): syc = ISchoolYearContainer(self.context) sy = syc[data['school_year']] if term.__name__ in sy: return if term.__name__ is None: term.__name__ = SimpleNameChooser(sy).chooseName('', term) sy[term.__name__] = term def testBeforeYearStart(self, sy, date): return date < ISchoolYearContainer(self.context)[sy].first def testAfterYearEnd(self, sy, date): return date > ISchoolYearContainer(self.context)[sy].last def testOverlap(self, sy, name, date): for trm in ISchoolYearContainer(self.context)[sy].values(): if trm.__name__ == name: continue if date >= trm.first and date <= trm.last: return True return False def process(self): sh = self.sheet nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) data = {} data['school_year'] = self.getRequiredIdFromCell(sh, row, 0) data['__name__'] = self.getRequiredIdFromCell(sh, row, 1) data['title'] = self.getRequiredTextFromCell(sh, row, 2) data['first'] = self.getDateFromCell(sh, row, 3) data['last'] = self.getDateFromCell(sh, row, 4) if num_errors < len(self.errors): continue if data['school_year'] not in ISchoolYearContainer(self.context): self.error(row, 0, ERROR_INVALID_SCHOOL_YEAR) continue if data['last'] < data['first']: self.error(row, 4, ERROR_END_BEFORE_START) elif self.testBeforeYearStart(data['school_year'], data['first']): self.error(row, 3, ERROR_START_BEFORE_YEAR_START) elif self.testAfterYearEnd(data['school_year'], data['last']): self.error(row, 4, ERROR_END_AFTER_YEAR_END) elif self.testOverlap(data['school_year'], data['__name__'], data['first']): self.error(row, 3, ERROR_START_OVERLAP_TERM) elif self.testOverlap(data['school_year'], data['__name__'], data['last']): self.error(row, 4, ERROR_END_OVERLAP_TERM) if num_errors == len(self.errors): term = self.createTerm(data) self.addTerm(term, data) self.progress(row, nrows) row += 1 if self.getCellValue(sh, row, 0, '') == 'Holidays': for row in range(row + 1, nrows): if self.isEmptyRow(sh, row): break start = self.getDateFromCell(sh, row, 0) end = self.getDateFromCell(sh, row, 1) if not start or not end: continue elif end < start: self.error(row, 4, ERROR_END_BEFORE_START) continue holiday_region = DateRange(start, end) for day in holiday_region: for sy in ISchoolYearContainer(self.context).values(): for term in sy.values(): if day in term: term.remove(day) self.progress(row, nrows) row += 1 if self.getCellValue(sh, row, 0, '') == 'Weekends': row += 2 for col in range(7): try: sh.cell_value(rowx=row, colx=col) except IndexError: continue if sh.cell_value(rowx=row, colx=col) != '': for sy in ISchoolYearContainer(self.context).values(): for term in sy.values(): term.removeWeekdays(col) self.progress(row, nrows) class SchoolTimetableImporter(ImporterBase): title = _("School Timetables") sheet_name = 'School Timetables' day_templates = ( ('calendar_days', CalendarDayTemplates), ('week_days', WeekDayTemplates), ('school_days', SchoolDayTemplates), ) def createSchoolTimetable(self, data): syc = ISchoolYearContainer(self.context) schoolyear = syc[data['school_year']] app = ISchoolToolApplication(None) tzname = IApplicationPreferences(app).timezone timetable = Timetable(schoolyear.first, schoolyear.last, title=data['title'], timezone=tzname) factories = dict(self.day_templates) container = ITimetableContainer(schoolyear) if data['__name__'] in container: del container[data['__name__']] timetable.__name__ = data['__name__'] container[timetable.__name__] = timetable timetable.periods, event = containedEvent( factories[data['period_templates']](), timetable, 'periods') notify(event) timetable.periods.initTemplates() timetable.time_slots, event = containedEvent( factories[data['time_templates']](), timetable, 'time_slots') notify(event) timetable.time_slots.initTemplates() for n, entry in enumerate(data['periods']): day_title = entry['id'] day = DayTemplate(day_title) key = unicode(n) timetable.periods.templates[key] = day p_chooser = INameChooser(day) for period_entry in entry['periods']: period = Period(title=period_entry['title'], activity_type=period_entry['activity'] or None) p_name = p_chooser.chooseName('', period) day[p_name] = period for n, entry in enumerate(data['time_slots']): day_title = entry['id'] day = DayTemplate(day_title) key = unicode(n) timetable.time_slots.templates[key] = day ts_chooser = INameChooser(day) for ts_entry in entry['time_slots']: time_slot = TimeSlot( ts_entry['starts'], ts_entry['duration'], activity_type=ts_entry['activity'] or None) ts_name = ts_chooser.chooseName('', time_slot) day[ts_name] = time_slot def import_school_timetable(self, sh, row): num_errors = len(self.errors) data = {} data['title'] = self.getRequiredTextFromCell(sh, row, 1) data['__name__'] = self.getRequiredIdFromCell(sh, row+1, 1) data['school_year'] = self.getRequiredIdFromCell(sh, row+2, 1) data['period_templates'] = self.getRequiredIdFromCell(sh, row+3, 1) data['time_templates'] = self.getRequiredIdFromCell(sh, row+4, 1) if num_errors < len(self.errors): return num_errors = len(self.errors) if data['school_year'] not in ISchoolYearContainer(self.context): self.error(row + 2, 1, ERROR_INVALID_SCHOOL_YEAR) factories = dict(self.day_templates) if data['period_templates'] not in factories: self.error(row + 3, 1, ERROR_TIMETABLE_MODEL) if data['time_templates'] not in factories: self.error(row + 4, 1, ERROR_TIMETABLE_MODEL) if num_errors < len(self.errors): return num_errors = len(self.errors) row += 5 row += 1 if self.getCellValue(sh, row, 0, '').lower() == 'days': data['periods'] = [] row += 1 while row < sh.nrows: if self.isEmptyRow(sh, row): break day_id = self.getRequiredIdFromCell(sh, row, 0) if day_id in [day['id'] for day in data['periods']]: self.error(row, 0, ERROR_DUPLICATE_DAY_ID) periods = [] col = 1 while True: cell = self.getCellValue(sh, row, col, default='') if cell == '': break activity = sh.cell_value(rowx=row+1, colx=col) if cell in periods: self.error(row, col, ERROR_DUPLICATE_PERIOD) else: periods.append({'title': cell, 'activity': activity}) col += 1 row += 2 data['periods'].append({ 'id': day_id, 'periods': periods, }) else: self.error(row, 0, ERROR_HAS_NO_DAYS) row += 1 if self.getCellValue(sh, row, 0, '').lower() == 'time schedule': data['time_slots'] = [] row += 1 while row < sh.nrows: if self.isEmptyRow(sh, row): break day_id = self.getRequiredIdFromCell(sh, row, 0) if day_id in [day['id'] for day in data['time_slots']]: self.error(row, 0, ERROR_DUPLICATE_DAY_ID) time_slots = [] col = 1 while True: cell = self.getCellValue(sh, row, col, default='') if cell == '': break try: starts, duration = parse_time_range(cell) except: self.error(row, col, ERROR_TIME_RANGE) continue activity = self.getCellValue(sh, row+1, col, default='') time_slots.append({ 'starts': starts, 'duration': duration, 'activity': activity, }) col += 1 data['time_slots'].append({ 'id': day_id, 'time_slots': time_slots }) row += 2 else: self.error(row, 0, ERROR_HAS_NO_DAY_TEMPLATES) if num_errors < len(self.errors): return if not self.errors: self.createSchoolTimetable(data) def process(self): sh = self.sheet for row in range(0, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'School Timetable': self.import_school_timetable(sh, row) class ResourceImporter(ImporterBase): title = _("Resources") sheet_name = 'Resources' def createResource(self, data): res_types = { 'Location': Location, 'Equipment': Equipment, 'Resource': Resource, } res_factory = res_types[data['type']] resource = res_factory(data['title']) resource.__name__ = data['__name__'] resource.description = data['description'] return resource def addResource(self, resource, data): rc = self.context['resources'] if resource.__name__ in rc: resource = rc[resource.__name__] resource.title = data['title'] resource.description = data['description'] else: if not resource.__name__: resource.__name__ = INameChooser(rc).chooseName('', resource) rc[resource.__name__] = resource def process(self): sh = self.sheet for row in range(1, sh.nrows): if self.isEmptyRow(sh, row): continue num_errors = len(self.errors) data = {} data['__name__'] = self.getRequiredIdFromCell(sh, row, 0) data['type'] = self.getRequiredTextFromCell(sh, row, 1) data['title'] = self.getRequiredTextFromCell(sh, row, 2) data['description'] = self.getTextFromCell(sh, row, 3) if num_errors < len(self.errors): continue if data['type'] not in ['Location', 'Equipment', 'Resource']: self.error(row, 1, ERROR_RESOURCE_TYPE) continue resource = self.createResource(data) self.addResource(resource, data) class PersonImporter(ImporterBase): title = _("Persons") sheet_name = 'Persons' group_name = None def applyData(self, person, data): person.prefix = data['prefix'] person.first_name = data['first_name'] person.middle_name = data['middle_name'] person.last_name = data['last_name'] person.suffix = data['suffix'] person.preferred_name = data['preferred_name'] person.birth_date = data['birth_date'] person.gender = data['gender'] if data['password']: person.setPassword(data['password']) def createPerson(self, data): person = BasicPerson(data['__name__'], data['first_name'], data['last_name']) self.applyData(person, data) return person def addPerson(self, person, data): pc = self.context['persons'] if person.username in pc: person = pc[person.username] self.applyData(person, data) else: pc[person.username] = person return person def process(self): sh = self.sheet nrows = sh.nrows fields = IDemographicsFields(ISchoolToolApplication(None)) if self.group_name: num_errors = len(self.errors) year_id = self.getRequiredIdFromCell(sh, 0, 1) if num_errors != len(self.errors): return syc = ISchoolYearContainer(self.context) if year_id not in syc: self.error(0, 1, ERROR_INVALID_SCHOOL_YEAR) return year = syc[year_id] if self.group_name == 'students': group = self.ensure_students_group(year) elif self.group_name == 'teachers': group = self.ensure_teachers_group(year) first_row = 3 fields = fields.filter_key(self.group_name) else: group = None first_row = 1 fields = list(fields.values()) for row in range(first_row, nrows): if self.isEmptyRow(sh, row): continue num_errors = len(self.errors) data = {} data['__name__'] = self.getRequiredIdFromCell(sh, row, 0) data['prefix'] = self.getTextFromCell(sh, row, 1) data['first_name'] = self.getRequiredTextFromCell(sh, row, 2) data['middle_name'] = self.getTextFromCell(sh, row, 3) data['last_name'] = self.getRequiredTextFromCell(sh, row, 4) data['suffix'] = self.getTextFromCell(sh, row, 5) data['preferred_name'] = self.getTextFromCell(sh, row, 6) data['birth_date'] = self.getDateFromCell(sh, row, 7, default=None) data['gender'] = self.getTextFromCell(sh, row, 8) if data['gender'] == '': data['gender'] = None elif data['gender'] not in ['male', 'female']: self.error(row, 8, ERROR_INVALID_GENDER) data['password'] = self.getTextFromCell(sh, row, 9) # XXX: this has to be fixed # XXX: SchoolTool should handle UTF-8 try: str(data['__name__']) except UnicodeEncodeError: self.error(row, 0, ERROR_UNICODE_CONVERSION) if num_errors == len(self.errors): person = self.createPerson(data) else: person = BasicPerson('name', 'first_name', 'last_name') demographics = IDemographics(person) for n, field in enumerate(fields): # /me wraps head in tinfoil for protection: if field.required: if isinstance(field, DateFieldDescription): value = self.getDateFromCell(sh, row, n + 10) elif isinstance(field, BoolFieldDescription): value = self.getRequiredBoolFromCell(sh, row, n + 10) elif isinstance(field, IntFieldDescription): value = self.getRequiredIntFromCell(sh, row, n + 10) else: value = self.getRequiredTextFromCell(sh, row, n + 10) else: if isinstance(field, DateFieldDescription): value = self.getDateFromCell(sh, row, n + 10, default=None) elif isinstance(field, BoolFieldDescription): value = self.getBoolFromCell(sh, row, n + 10) elif isinstance(field, IntFieldDescription): value = self.getIntFromCell(sh, row, n + 10) else: value = self.getTextFromCell(sh, row, n + 10) if value == '': value = None demographics[field.name] = value if num_errors == len(self.errors): person = self.addPerson(person, data) if group and person not in group.members: group.members.add(removeSecurityProxy(person)) self.progress(row, nrows) class TeacherImporter(PersonImporter): title = _("Teachers") sheet_name = 'Teachers' group_name = 'teachers' class StudentImporter(PersonImporter): title = _("Students") sheet_name = 'Students' group_name = 'students' class ContactPersonImporter(ImporterBase): title = _("Contact Persons") sheet_name = 'Contact Persons' def applyData(self, contact, data): if data['__name__'] not in ISchoolToolApplication(None)['persons']: contact.prefix = data['prefix'] contact.first_name = data['first_name'] contact.middle_name = data['middle_name'] contact.last_name = data['last_name'] contact.suffix = data['suffix'] contact.address_line_1 = data['address_line_1'] contact.address_line_2 = data['address_line_2'] contact.city = data['city'] contact.state = data['state'] contact.country = data['country'] contact.postal_code = data['postal_code'] contact.home_phone = data['home_phone'] contact.work_phone = data['work_phone'] contact.mobile_phone = data['mobile_phone'] contact.email = data['email'] contact.language = data['language'] def establishContact(self, data): app = ISchoolToolApplication(None) persons = app['persons'] contacts = IContactContainer(app) name = data['__name__'] if name in persons: person = persons[name] contact = IContact(person) self.applyData(contact, data) elif name in contacts: contact = contacts[name] self.applyData(contact, data) else: contact = Contact() self.applyData(contact, data) contacts[name] = contact def process(self): sh = self.sheet persons = ISchoolToolApplication(None)['persons'] nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): continue num_errors = len(self.errors) data = {} data['__name__'] = self.getRequiredIdFromCell(sh, row, 0) if data['__name__'] is not None: self.validateUnicode(data['__name__'], row, 0) if num_errors == len(self.errors): if data['__name__'] not in persons: data['prefix'] = self.getTextFromCell(sh, row, 1) data['first_name'] = self.getRequiredTextFromCell(sh, row, 2) data['middle_name'] = self.getTextFromCell(sh, row, 3) data['last_name'] = self.getRequiredTextFromCell(sh, row, 4) data['suffix'] = self.getTextFromCell(sh, row, 5) else: for index in range(5): value, found = self.getCellAndFound(sh, row, index + 1) if value: self.error(row, index + 1, ERROR_UNWANTED_CONTACT_DATA) data['address_line_1'] = self.getTextFromCell(sh, row, 6) data['address_line_2'] = self.getTextFromCell(sh, row, 7) data['city'] = self.getTextFromCell(sh, row, 8) data['state'] = self.getTextFromCell(sh, row, 9) data['country'] = self.getTextFromCell(sh, row, 10) data['postal_code'] = self.getTextFromCell(sh, row, 11) data['home_phone'] = self.getTextFromCell(sh, row, 12) data['work_phone'] = self.getTextFromCell(sh, row, 13) data['mobile_phone'] = self.getTextFromCell(sh, row, 14) data['email'] = self.getTextFromCell(sh, row, 15) data['language'] = self.getTextFromCell(sh, row, 16) if num_errors == len(self.errors): self.establishContact(data) self.progress(row, nrows) CONTACT_REL_CODES = { 'a': None, 'p': 'parent', 'sp': 'step_parent', 'fp': 'foster_parent', 'g': 'guardian', 's': 'sibling' } class ContactRelationshipImporter(ImporterBase): title = _("Contact Relationships") sheet_name = 'Contact Relationships' def process(self): sh = self.sheet app = ISchoolToolApplication(None) persons = app['persons'] contacts = IContactContainer(app) vocab = IContactPersonInfo['relationship'].vocabulary nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): continue num_errors = len(self.errors) data = {} data['__name__'] = self.getRequiredIdFromCell(sh, row, 0) self.validateUnicode(data['__name__'], row, 0) if num_errors == len(self.errors): if data['__name__'] not in persons: self.error(row, 0, ERROR_INVALID_PERSON_ID) else: person = persons[data['__name__']] current_errors = len(self.errors) data['contact_name'] = self.getRequiredTextFromCell(sh, row, 1) name = data['contact_name'] if current_errors == len(self.errors): self.validateUnicode(name, row, 1) if current_errors == len(self.errors): if name in persons: contact = IContact(persons[name]) elif name in contacts: contact = contacts[name] else: self.error(row, 1, ERROR_INVALID_CONTACT_ID) data['relationship'] = self.getTextFromCell(sh, row, 2) relationship = data['relationship'] if relationship and relationship not in vocab: # Forward-compat with temporal relationships rel_code = self.getTextFromCell(sh, row, 3) if rel_code == 'i': continue relationship = CONTACT_REL_CODES.get(rel_code, relationship) if relationship and relationship not in vocab: self.error(row, 2, ERROR_CONTACT_RELATIONSHIP) if num_errors == len(self.errors): info = ContactPersonInfo() info.__parent__ = person if relationship: info.relationship = relationship if contact not in IContactable(person).contacts: IContactable(person).contacts.add(contact, info) self.progress(row, nrows) class CourseImporter(ImporterBase): title = _("Courses") sheet_name = 'Courses' def createCourse(self, data): syc = ISchoolYearContainer(self.context) cc = ICourseContainer(syc[data['school_year']]) name = data['__name__'] if name in cc: course = cc[name] course.title = data['title'] course.description = data['description'] else: course = Course(data['title'], data['description']) course.__name__ = data['__name__'] course.course_id = data['course_id'] or None course.government_id = data['government_id'] or None course.credits = data['credits'] or None return course def addCourse(self, course, data): syc = ISchoolYearContainer(self.context) cc = ICourseContainer(syc[data['school_year']]) if course.__name__ in cc: return if course.__name__ is None: course.__name__ = SimpleNameChooser(cc).chooseName('', course) cc[course.__name__] = course def process(self): sh = self.sheet nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): continue num_errors = len(self.errors) data = {} data['school_year'] = self.getRequiredIdFromCell(sh, row, 0) data['__name__'] = self.getRequiredIdFromCell(sh, row, 1) data['title'] = self.getRequiredTextFromCell(sh, row, 2) data['description'] = self.getTextFromCell(sh, row, 3) data['course_id'] = self.getIdFromCell(sh, row, 4) data['government_id'] = self.getIdFromCell(sh, row, 5) data['credits'] = self.getTextFromCell(sh, row, 6) try: if data['credits']: data['credits'] = Decimal(data['credits']) except InvalidOperation: self.error(row, 6, ERROR_INVALID_COURSE_CREDITS) if num_errors < len(self.errors): continue if data['school_year'] not in ISchoolYearContainer(self.context): self.error(row, 0, ERROR_INVALID_SCHOOL_YEAR) continue course = self.createCourse(data) self.addCourse(course, data) self.progress(row, nrows) class SectionImporter(ImporterBase): title = _("Sections") def createSection(self, data, year, term): sc = ISectionContainer(term) if data['__name__'] in sc: section = sc[data['__name__']] section.title = data['title'] section.description = data['description'] else: section = Section(data['title'], data['description']) section.__name__ = data['__name__'] return section def addSection(self, section, data, year, term): sc = ISectionContainer(term) if section.__name__ is None: section.__name__ = SimpleNameChooser(sc).chooseName('', section) if section.__name__ not in sc: sc[section.__name__] = section if data['link']: previous_term = getPreviousTerm(term) if previous_term is not None: previous_sections = ISectionContainer(previous_term) if section.__name__ in previous_sections: previous_sections[section.__name__].next = section next_term = getNextTerm(term) if next_term is not None: next_sections = ISectionContainer(next_term) if section.__name__ in next_sections: next_sections[section.__name__].previous = section def import_timetable(self, sh, row, section): timetables = ITimetableContainer(ISchoolYear(section)) timetable_id = self.getRequiredIdFromCell(sh, row, 1) if timetable_id not in timetables: self.error(row, 0, ERROR_INVALID_SCHEMA_ID) return row timetable = timetables[timetable_id] schedules = IScheduleContainer(section) term = ITerm(section) schedule = SelectedPeriodsSchedule( timetable, term.first, term.last, title=timetable.title, timezone=timetable.timezone) row += 1 collapse_periods = self.getTextFromCell(sh, row, 1, 'no') schedule.consecutive_periods_as_one = bool( collapse_periods.lower() == 'yes') row += 2 for row in range(row, sh.nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) day_title = self.getRequiredIdFromCell(sh, row, 0) period_title = self.getRequiredIdFromCell(sh, row, 1) if num_errors < len(self.errors): continue day = None for tt_day in timetable.periods.templates.values(): if tt_day.title == day_title: day = tt_day break if day is None: self.error(row, 0, ERROR_INVALID_DAY_ID) continue period = None for tt_period in day.values(): if tt_period.title == period_title: period = tt_period if period is None: self.error(row, 1, ERROR_INVALID_PERIOD_ID) continue schedule.addPeriod(period) if num_errors < len(self.errors): continue s_chooser = INameChooser(schedules) name = s_chooser.chooseName('', schedule) schedules[name] = schedule return row def import_timetables(self, sh, row, section): for row in range(row, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'School Timetable': self.import_timetable(sh, row, section) elif self.isEmptyRow(sh, row): break return row def import_section(self, sh, row, year, term): data = {} data['title'] = self.getRequiredTextFromCell(sh, row, 1) data['__name__'] = self.getRequiredIdFromCell(sh, row+1, 1) link = self.getTextFromCell(sh, row+1, 3) data['link'] = link.lower() in ['y', 'yes'] data['description'] = self.getTextFromCell(sh, row+2, 1) section = self.createSection(data, year, term) self.addSection(section, data, year, term) courses = ICourseContainer(section) students = self.ensure_students_group(year) teachers = self.ensure_teachers_group(year) row += 4 if self.getCellValue(sh, row, 0, '') == 'Courses': row += 1 for row in range(row, sh.nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) course_id = self.getRequiredIdFromCell(sh, row, 0) if num_errors < len(self.errors): continue if course_id not in courses: self.error(row, 0, ERROR_INVALID_COURSE_ID) continue course = courses[course_id] if course not in section.courses: section.courses.add(removeSecurityProxy(course)) row += 1 if not list(section.courses): self.error(row, 0, ERROR_HAS_NO_COURSES) return persons = self.context['persons'] if self.getCellValue(sh, row, 0, '') == 'Students': row += 1 for row in range(row, sh.nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) username = self.getRequiredIdFromCell(sh, row, 0) if num_errors < len(self.errors): continue if username not in persons: self.error(row, 0, ERROR_INVALID_PERSON_ID) continue member = persons[username] if member not in section.members: section.members.add(removeSecurityProxy(member)) if member not in students.members: students.members.add(removeSecurityProxy(member)) row += 1 if self.getCellValue(sh, row, 0, '') == 'Instructors': row += 1 for row in range(row, sh.nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) username = self.getRequiredIdFromCell(sh, row, 0) if num_errors < len(self.errors): continue if username not in persons: self.error(row, 0, ERROR_INVALID_PERSON_ID) continue instructor = persons[username] if instructor not in section.instructors: section.instructors.add(removeSecurityProxy(instructor)) if instructor not in teachers.members: teachers.members.add(removeSecurityProxy(instructor)) row += 1 if self.getCellValue(sh, row, 0, '') == 'School Timetable': self.import_timetables(sh, row, section) def process(self): app = ISchoolToolApplication(None) schoolyears = ISchoolYearContainer(app) sheet_names = self.sheet_names nsheets = len(sheet_names) for (n, self.sheet_name) in enumerate(sheet_names): sheet = self.wb.sheet_by_name(self.sheet_name) num_errors = len(self.errors) year_id = self.getRequiredIdFromCell(sheet, 0, 1) term_id = self.getRequiredIdFromCell(sheet, 0, 3) if num_errors < len(self.errors): continue if year_id not in schoolyears: self.error(0, 1, ERROR_INVALID_SCHOOL_YEAR) continue year = schoolyears[year_id] if term_id not in year: self.error(0, 3, ERROR_INVALID_TERM_ID) continue term = year[term_id] nrows = sheet.nrows for row in range(2, nrows): if sheet.cell_value(rowx=row, colx=0) == 'Section Title': self.import_section(sheet, row, year, term) self.progress(n, nsheets, row, nrows) def import_data(self, wb): self.wb = wb self.sheet_names = [] for sheet_name in self.wb.sheet_names(): if (sheet_name.startswith('Section') and sheet_name not in ['Sections', 'SectionTimetables', 'SectionEnrollment']): self.sheet_names.append(sheet_name) if self.sheet_names: self.process() class SectionsImporter(ImporterBase): title = _("Sections") sheet_name = 'Sections' def import_section_links(self, prev_links, next_links): for row, (section, link_id) in sorted(prev_links.items()): term = ITerm(section) previous_term = getPreviousTerm(term) if previous_term is None: self.error(row, 4, ERROR_CURRENT_SECTION_FIRST_TERM) else: previous_sections = ISectionContainer(previous_term) if link_id in previous_sections: previous_sections[link_id].next = section else: self.error(row, 4, ERROR_INVALID_PREV_TERM_SECTION) for row, (section, link_id) in sorted(next_links.items()): term = ITerm(section) next_term = getNextTerm(term) if next_term is None: self.error(row, 5, ERROR_CURRENT_SECTION_LAST_TERM) else: next_sections = ISectionContainer(next_term) if link_id in next_sections: next_sections[link_id].previous = section else: self.error(row, 5, ERROR_INVALID_NEXT_TERM_SECTION) def process(self): sh = self.sheet schoolyears = ISchoolYearContainer(self.context) persons = self.context['persons'] resources = self.context['resources'] prev_links, next_links = {}, {} nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): continue data = {} num_errors = len(self.errors) data['year'] = self.getRequiredIdFromCell(sh, row, 0) data['courses'] = self.getRequiredIdsFromCell(sh, row, 1) data['term'] = self.getRequiredIdFromCell(sh, row, 2) data['__name__'] = self.getRequiredIdFromCell(sh, row, 3) data['link_prev'] = self.getIdFromCell(sh, row, 4) data['link_next'] = self.getIdFromCell(sh, row, 5) data['title'] = self.getRequiredTextFromCell(sh, row, 6) data['description'] = self.getTextFromCell(sh, row, 7) data['instructors'] = self.getIdsFromCell(sh, row, 8) data['resources'] = self.getIdsFromCell(sh, row, 9) if num_errors < len(self.errors): continue for person_id in data['instructors']: if person_id not in persons: self.error(row, 8, ERROR_INVALID_PERSON_ID_LIST) break for resource_id in data['resources']: if resource_id not in resources: self.error(row, 9, ERROR_INVALID_RESOURCE_ID_LIST) break if data['year'] not in schoolyears: self.error(row, 0, ERROR_INVALID_SCHOOL_YEAR) continue year = schoolyears[data['year']] teachers = self.ensure_teachers_group(year) course_container = ICourseContainer(year) courses = [] for course_id in data['courses']: if course_id not in course_container: self.error(row, 1, ERROR_INVALID_COURSE_ID_LIST) break else: course = course_container[course_id] courses.append(removeSecurityProxy(course)) if data['term'] not in year: self.error(row, 2, ERROR_INVALID_TERM_ID) if num_errors < len(self.errors): continue term = year[data['term']] section = self.createSection(data, term, courses) if data['link_prev']: prev_links[row] = (section, data['link_prev']) if data['link_next']: next_links[row] = (section, data['link_next']) for person_id in data['instructors']: teacher = persons[person_id] if teacher not in section.instructors: section.instructors.add(removeSecurityProxy(teacher)) if teacher not in teachers.members: teachers.members.add(removeSecurityProxy(teacher)) for resource_id in data['resources']: resource = resources[resource_id] if resource not in section.resources: section.resources.add(removeSecurityProxy(resource)) self.progress(row, nrows) self.import_section_links(prev_links, next_links) class SectionMixin(object): def get_sections(self, sh, row): schoolyears = ISchoolYearContainer(self.context) sections = [] current_year_id = None nrows = sh.nrows for row in range(row + 1, nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) year_id = self.getRequiredIdFromCell(sh, row, 0) term_id = self.getRequiredIdFromCell(sh, row, 1) section_id = self.getRequiredIdFromCell(sh, row, 2) if num_errors < len(self.errors): continue if year_id not in schoolyears: self.error(row, 0, ERROR_INVALID_SCHOOL_YEAR) continue if current_year_id is not None and year_id != current_year_id: self.error(row, 0, ERROR_INCONSISTENT_SCHOOL_YEAR) continue current_year_id = year_id year = schoolyears[year_id] if term_id not in year: self.error(row, 1, ERROR_INVALID_TERM_ID) continue term = year[term_id] section_container = ISectionContainer(term) if section_id not in section_container: self.error(row, 2, ERROR_TERM_SECTION_ID) continue sections.append(section_container[section_id]) self.progress(row, nrows) return sections class SectionEnrollmentImporter(ImporterBase, SectionMixin): title = _("Section Enrollment") sheet_name = 'SectionEnrollment' def get_students(self, sh, row): persons = self.context['persons'] for row in range(row + 1, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'Students': break else: return [] students = [] nrows = sh.nrows for row in range(row + 1, nrows): if self.isEmptyRow(sh, row): break student_id = self.getRequiredIdFromCell(sh, row, 0) if student_id is None: continue if student_id not in persons: self.error(row, 0, ERROR_INVALID_PERSON_ID) else: students.append(persons[student_id]) self.progress(row, nrows) return students def process(self): sh = self.sheet nrows = sh.nrows for row in range(0, nrows): if sh.cell_value(rowx=row, colx=0) != 'School Year': continue num_errors = len(self.errors) sections = self.get_sections(sh, row) students = self.get_students(sh, row) if num_errors < len(self.errors): continue if not sections or not students: continue year = ISchoolYear(sections[0]) students_group = self.ensure_students_group(year) for section in sections: for student in students: if student not in section.members: section.members.add(removeSecurityProxy(student)) if student not in students_group.members: students_group.members.add(removeSecurityProxy(student)) self.progress(row, nrows) class SectionTimetablesImporter(ImporterBase, SectionMixin): title = _("Section Timetables") sheet_name = 'SectionTimetables' def import_timetable(self, sh, row, sections): year = ISchoolYear(sections[0]) timetables = ITimetableContainer(year) for row in range(row + 1, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'Timetable': break else: return num_errors = len(self.errors) timetable_id = self.getRequiredIdFromCell(sh, row, 1) consecutive = self.getBoolFromCell(sh, row, 3) if num_errors < len(self.errors): return if timetable_id not in timetables: self.error(row, 3, ERROR_INVALID_SCHEMA_ID) return timetable = timetables[timetable_id] for row in range(row + 1, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'Day': break else: return schedules = [] for section in sections: term = ITerm(section) schedule = SelectedPeriodsSchedule( timetable, term.first, term.last, title=timetable.title, timezone=timetable.timezone) schedule.consecutive_periods_as_one = bool(consecutive) schedules.append(schedule) nrows = sh.nrows for row in range(row + 1, nrows): if self.isEmptyRow(sh, row): break day_title = self.getIdFromCell(sh, row, 0) period_title = self.getRequiredIdFromCell(sh, row, 1) if period_title is None: continue for tt_day in timetable.periods.templates.values(): if tt_day.title == day_title: day = tt_day break else: self.error(row, 0, ERROR_INVALID_DAY_ID) continue for tt_period in day.values(): if tt_period.title == period_title: period = tt_period break else: self.error(row, 1, ERROR_INVALID_PERIOD_ID) continue for schedule in schedules: schedule.addPeriod(period) self.progress(row, nrows) for index, section in enumerate(sections): term = ITerm(section) schedule_container = IScheduleContainer(section) schedule = schedules[index] s_chooser = INameChooser(schedule_container) name = s_chooser.chooseName('', schedule) schedule_container[name] = schedule def process(self): sh = self.sheet nrows = sh.nrows for row in range(0, nrows): if sh.cell_value(rowx=row, colx=0) != 'School Year': continue num_errors = len(self.errors) sections = self.get_sections(sh, row) if num_errors < len(self.errors): continue self.import_timetable(sh, row, sections) self.progress(row, nrows) class LinkedSectionImporter(ImporterBase): title = _("Linked sections") sheet_name = 'LinkedSectionImport' def validateStartEndTerms(self, year, data, row, col): if data['start_term'] not in year: self.error(row, col, ERROR_INVALID_TERM_ID) if data['end_term'] and data['end_term'] not in year: self.error(row, col + 1, ERROR_INVALID_TERM_ID) return [] if data['start_term'] not in year: return [] start_term = year[data['start_term']] if data['end_term']: end_term = year[data['end_term']] else: end_term = start_term if start_term.first > end_term.first: self.error(row, col + 1, ERROR_END_TERM_BEFORE_START) return [] return [term for term in year.values() if term.first >= start_term.first and term.first <= end_term.first] def createSectionsByTerm(self, data, terms, courses): sections_by_term = [] previous_section = None for term in terms: section = self.createSection(data, term, courses) if previous_section is not None: previous_section.next = section previous_section = section sections_by_term.append(section) return sections_by_term def process(self): sh = self.sheet schoolyears = ISchoolYearContainer(self.context) persons = self.context['persons'] resources = self.context['resources'] nrows = sh.nrows for row in range(1, nrows): if self.isEmptyRow(sh, row): continue data = {} num_errors = len(self.errors) data['year'] = self.getRequiredIdFromCell(sh, row, 0) data['courses'] = self.getRequiredIdsFromCell(sh, row, 1) data['start_term'] = self.getRequiredIdFromCell(sh, row, 2) data['end_term'] = self.getIdFromCell(sh, row, 3) data['__name__'] = self.getRequiredIdFromCell(sh, row, 4) data['title'] = self.getRequiredTextFromCell(sh, row, 5) data['description'] = self.getTextFromCell(sh, row, 6) data['instructors'] = self.getIdsFromCell(sh, row, 7) data['resources'] = self.getIdsFromCell(sh, row, 8) if num_errors < len(self.errors): continue for person_id in data['instructors']: if person_id not in persons: self.error(row, 6, ERROR_INVALID_PERSON_ID_LIST) break for resource_id in data['resources']: if resource_id not in resources: self.error(row, 8, ERROR_INVALID_RESOURCE_ID_LIST) break if data['year'] not in schoolyears: self.error(row, 0, ERROR_INVALID_SCHOOL_YEAR) continue year = schoolyears[data['year']] teachers = self.ensure_teachers_group(year) course_container = ICourseContainer(year) courses = [] for course_id in data['courses']: if course_id not in course_container: self.error(row, 1, ERROR_INVALID_COURSE_ID_LIST) break else: course = course_container[course_id] courses.append(removeSecurityProxy(course)) terms = self.validateStartEndTerms(year, data, row, 2) if num_errors < len(self.errors): continue sections = self.createSectionsByTerm(data, terms, courses) for person_id in data['instructors']: teacher = persons[person_id] for section in sections: if teacher not in section.instructors: section.instructors.add(removeSecurityProxy(teacher)) if teacher not in teachers.members: teachers.members.add(removeSecurityProxy(teacher)) for resource_id in data['resources']: resource = resources[resource_id] for section in sections: if resource not in section.resources: section.resources.add(removeSecurityProxy(resource)) self.progress(row, nrows) class GroupImporter(ImporterBase): title = _("Groups") sheet_name = 'Groups' def createGroup(self, data): syc = ISchoolYearContainer(self.context) gc = IGroupContainer(syc[data['school_year']]) if data['__name__'] in gc: group = gc[data['__name__']] group.title = data['title'] group.description = data['description'] else: group = Group(data['title'], data['description']) group.__name__ = data['__name__'] return group def addGroup(self, group, data): syc = ISchoolYearContainer(self.context) gc = IGroupContainer(syc[data['school_year']]) if group.__name__ is None: group.__name__ = SimpleNameChooser(gc).chooseName('', group) if group.__name__ not in gc: gc[group.__name__] = group def import_group(self, sh, row): num_errors = len(self.errors) data = {} data['title'] = self.getRequiredTextFromCell(sh, row, 1) data['__name__'] = self.getRequiredIdFromCell(sh, row+1, 1) data['school_year'] = self.getRequiredIdFromCell(sh, row+2, 1) data['description'] = self.getTextFromCell(sh, row+3, 1) if num_errors < len(self.errors): return if data['school_year'] not in ISchoolYearContainer(self.context): self.error(row+2, 1, ERROR_INVALID_SCHOOL_YEAR) return group = self.createGroup(data) self.addGroup(group, data) self.progress(row, sh.nrows) row += 5 pc = self.context['persons'] if self.getCellValue(sh, row, 0, '') == 'Members': row += 1 nrows = sh.nrows for row in range(row, nrows): if self.isEmptyRow(sh, row): break num_errors = len(self.errors) username = self.getRequiredIdFromCell(sh, row, 0) if num_errors < len(self.errors): continue if username not in pc: self.error(row, 0, ERROR_INVALID_PERSON_ID) continue member = pc[username] if member not in group.members: group.members.add(removeSecurityProxy(member)) self.progress(row, nrows) def process(self): sh = self.sheet for row in range(0, sh.nrows): if sh.cell_value(rowx=row, colx=0) == 'Group Title': self.import_group(sh, row) class MegaImporter(BrowserView): is_xls = True def __init__(self, context, request): BrowserView.__init__(self, context, request) self.data_provided = False self.errors = [] self.success = [] @property def importers(self): return [SchoolYearImporter, TermImporter, SchoolTimetableImporter, ResourceImporter, PersonImporter, TeacherImporter, StudentImporter, ContactPersonImporter, ContactRelationshipImporter, CourseImporter, GroupImporter, SectionImporter, SectionsImporter, SectionEnrollmentImporter, SectionTimetablesImporter, LinkedSectionImporter, ] def update(self): if "UPDATE_SUBMIT" not in self.request: return xlsfile = self.request.get('xlsfile', '') if not xlsfile: return self.data_provided = True try: wb = xlrd.open_workbook(file_contents=xlsfile.read()) except (xlrd.XLRDError,): self.is_xls = False wb = None if wb is None: return sp = transaction.savepoint(optimistic=True) importers = self.importers for importer in importers: imp = importer(self.context, self.request) imp.import_data(wb) self.errors.extend(imp.errors) if self.errors: sp.rollback() else: self.request.response.redirect(self.nextURL()) def nextURL(self): return self.request.URL def hasErrors(self): if "UPDATE_SUBMIT" not in self.request: return False return not self.data_provided or self.errors or not self.is_xls def displayErrors(self): if not self.data_provided: return [self.errorSummary()] if not self.is_xls: return [ERROR_NOT_XLS] ERROR_FMT = _('${sheet_name} ${column}${row} ${message}') errors = [] for sheet_name, row, col, message in self.errors[:25]: full_message = format_message( ERROR_FMT, {'sheet_name': sheet_name, 'column': chr(col + ord('A')), 'row': row + 1, 'message': message} ) errors.append(full_message) return errors def errorSummary(self): if not self.data_provided: return _('No data provided') if not self.is_xls: return ERROR_NOT_XLS return _('The following errors occurred while importing:') def textareaErrors(self): errors = {} for sheet_name, row, col, message in self.errors: sheet_errors = errors.setdefault(sheet_name, {}) sheet_errors.setdefault(message, []).append((col, row)) error_lines = [] for sheet_name, message_errors in sorted(errors.items()): if error_lines: error_lines.append('') error_lines.append(sheet_name) error_lines.append('-' * len(sheet_name)) for message, cells in sorted(message_errors.items()): col_rows = [] current_col, start, end = -1, 0, 0 for col, row in sorted(cells): if col != current_col or row > end + 1: if current_col > -1: col_rows.append((current_col, start, end)) current_col, start = col, row end = row col_rows.append((current_col, start, end)) error_lines.append('') error_lines.append(translate(message) + ':') error_cells = [] for col, start, end in col_rows: cell = chr(col + ord('A')) if start == end: cell += '%s' % (start + 1) else: cell += '%s-%s' % (start + 1, end + 1) error_cells.append(cell) error_lines.append(', '.join(error_cells)) return '\n'.join(error_lines) class FlourishMegaImporter(flourish.page.Page, MegaImporter): __init__ = MegaImporter.__init__ update = MegaImporter.update def nextURL(self): url = absoluteURL(self.context, self.request) return '%s/manage' % url def update(self): if "UPDATE_CANCEL" in self.request: self.request.response.redirect(self.nextURL()) return return MegaImporter.update(self) def createFile(file_upload): file = zope.file.file.File() zope.file.upload.updateBlob(file, file_upload) file.__name__ = file_upload.filename return file class FlourishRemoteMegaImporter(flourish.page.Page): task = None def __init__(self, context, request): flourish.page.Page.__init__(self, context, request) self.errors = [] self.success = [] def nextURL(self): url = absoluteURL(self.context, self.request) return '%s/manage' % url def update(self): if "UPDATE_CANCEL" in self.request: self.request.response.redirect(self.nextURL()) return if "UPDATE_SUBMIT" not in self.request: return xls_upload = self.request.get('xlsfile', '') if not xls_upload: self.errors.append(_('No data provided')) return if not self.errors: xlsfile = createFile(xls_upload) self.task = ImporterTask(xlsfile) self.task.schedule(self.request) #self.request.response.redirect(self.nextURL()) class ImportProgress(Timer): importers = None value = None task_status = None def __init__(self, importers, task_id): self.importers = importers self.task_status = TaskWriteState(task_id) Timer.__init__(self) def reset(self): Timer.reset(self) self.value = {} for n, importer in enumerate(self.importers): self.value[n] = { 'title': importer.title, 'errors': [], 'progress': 0.0, } self.value['overall'] = { 'title': _('Overall'), 'errors': [], 'progress': 0.0, } self.tock() def finish(self): for status in self.value.values(): status['progress'] = 1.0 self.task_status.set_progress(self.value) self.last_updated = self.now def tick(self, importer_n, value): self.value[importer_n]['progress'] = value self.value['overall']['progress'] = normalized_progress( importer_n, len(self.importers), value, 1.0) def tock(self, *args, **kw): self.task_status.set_progress(self.value) class RemoteMegaImporter(MegaImporter): def update(self): remote_task = self.request.remote_task importers = self.importers status = dict([ (n, {'title': importer.title, 'progress': 0.0}) for n, importer in enumerate(importers)]) status['overall'] = {'title': _('Overall'), 'progress': 0.0, 'active': True} progress = ImportProgress(self.importers, self.request.request.id) xls = remote_task.xls_file.open() wb = xlrd.open_workbook(file_contents=xls.read()) xls.close() if wb is None: progress.finish() return progress.value savepoint = transaction.savepoint(optimistic=True) for importer_n, importer in enumerate(importers): for record in progress.value.values(): record['active'] = False progress.value['overall']['active'] = True progress.value[importer_n]['active'] = True imp = importer(self.context, self.request, progress_callback=lambda v: progress(importer_n, v)) imp.import_data(wb) progress.value[importer_n]['errors'].extend(imp.errors) progress.value['overall']['errors'].extend(imp.errors) progress.force(importer_n, 1.0) if progress.value['overall']['errors']: savepoint.rollback() progress.finish() return progress.value def __call__(self): return self.update() class ImporterTask(RemoteTask): implements(IImporterTask) routing_key = "zodb.import" xls_file = None def __init__(self, xls_file): RemoteTask.__init__(self) self.xls_file = xls_file def execute(self, request): app = ISchoolToolApplication(None) importer = RemoteMegaImporter(app, request) result = importer() return result class ImportProgressContent(flourish.page.Content): @Lazy def status(self): return TaskReadState(self.task_id) @property def progress_id(self): return flourish.page.sanitize_id('progress-%s' % self.context.task_id) @property def importers(self): if self.status.progress is None: return [] result = [] for k, progress in self.status.progress.items(): if k == 'overall': continue result.append(progress) return result @property def overall(self): if self.status.progress is None: return None return self.status.progress['overall'] @property def task_id(self): return self.context.task_id class DownloadFile(BrowserView): attribute = None inline = False @property def file_object(self): return getattr(self.context, self.attribute, None) def setUpResponse(self, data, filename): stored_file = self.file_object response = self.request.response if stored_file.mimeType: response.setHeader('Content-Type', stored_file.mimeType) response.setHeader('Content-Length', len(data)) disposition = self.inline and 'inline' or 'attachment' if filename: disposition += '; filename="%s"' % filename response.setHeader('Content-Disposition', disposition) def __call__(self): stored_file = self.file_object if stored_file is None: return None filename = getattr(stored_file, '__name__', '') filename = urllib.quote(filename.encode('UTF-8')) f = stored_file.open() data = f.read() f.close() self.setUpResponse(data, filename) return data class DownloadImportXLS(DownloadFile): attribute = "xls_file" inline = False schooltool-2.6.3/src/schooltool/export/stests/0000755000175000017500000000000012322062007022653 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/export/stests/errant_flat_sections_table.xls0000644000175000017500000004300012270520475030771 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿ!þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8"@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…Û School Years… Terms…ùSchool Timetables… Resources…i#Persons…+Courses…+.FlatSectionsTableŒÁÁTëŠð‚ðH3 ð¿ À@@ñ  ÷ü7C–IDTitleStartEnd 2006-2008 SchoolYear 2006-fall 2006 Fall 2007-fall 2007 Fall 2007-spring 2007 Spring 2008-spring 2008 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School Year Period days school_days Time slotsDaysPeriodsDay 1ABCDEFhomeroomlessonDay 2Day 3Day 4Day 5Day 6 Time schedule 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Type projector00Resource Projector 00 projector01 Projector 01 projector02 Projector 02room00LocationRoom 00room01Room 01room02Room 02 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenshipmanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUS student001Peg Jorgensenmale0002 student002ShermSullivan0003 student003PiotrCooper0004 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq Descriptionart_aArt Aart_bArt Bart_cArt Cart_dArt DCoursesTerm Section ID InstructorsStudents Resources Link Prev ID Link Next ID Timetable ConsecutiveDay Period IDignoredinvalidsection1section2 Section 2section3 Section 3section4 Section 4ÿ – cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½Æ`cý ý ý  ½zfÊhý ý  ý  ½cBeý ý  ý  ½Îhký ½²aÂa½’b¢b½ ®b¾b½ bgrg½ BhRh½ ^hnh½ d*d½6d6d½’i¢i½®i®iý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý ý  ¾ý !ý "ý #ý $ý %ý &ý 'ý (ý )ý )ý )ý )ý )ý *ý #ý $ý %ý &ý 'ý "ý (ý )ý )ý )ý )ý )ý +ý $ý %ý &ý 'ý "ý #ý (ý )ý )ý )ý )ý )ý ,ý %ý &ý 'ý "ý #ý $ý (ý )ý )ý )ý )ý )ý -ý &ý 'ý "ý #ý $ý %ý (ý )ý )ý )ý )ý )ý .ý 'ý "ý #ý $ý %ý &ý (ý )ý )ý )ý )ý )ý /ý !ý 0ý 1ý 2ý 3ý 4ý 5¾ý *ý 0ý 1ý 2ý 3ý 4ý 5¾ý +ý 0ý 1ý 2ý 3ý 4ý 5¾ý ,ý 0ý 1ý 2ý 3ý 4ý 5¾ý -ý 0ý 1ý 2ý 3ý 4ý 5¾ý .ý 0ý 1ý 2ý 3ý 4ý 5å ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿý ý 6ý ý 7ý 8ý 9ý :ý 8ý ;ý <ý 8ý =ý >ý ?ý @ý Aý ?ý Bý Cý ?ý DìPðH@ðð0ð( ð ð>¶@CCCggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý Eý Fý Gý Hý Iý Jý Ký Lý Mý Ný ý Oý Pý Qý Rý Sý Tý U¾ý Vý Wý X¾ ý Y ý  Zý  [ý  \ý  ]ý ^ý _ý `ý a¾ ý b ý  cý  [ý  \ý  ]ý ^ý dý eý f¾ ý b ý  gý  [ý  \ý  ]ý ^ý hý iý j¾ ý Y ý  ký  [ý  \ý  ]ý ^ý lý mý n¾ý oý pý q¾ý rý sý t¾ý u ý v ý w¾ ìPðHPðð0ð( ð ð>¶@555ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ý ý ý xý ý yý zý ý {ý |ý ý }ý ~ý ý ý €ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿý ý ý ‚ý ƒý ý xý „ý …ý †ý ‡ý ˆý ‰ý Šý ‹ý Œý ý Žý ý Žý yý Žý ý ý Žý Žý Žý  Žý  Žý  Žý  Žý  Žý Žý ý ‘ý ý Žý Žý Žý !ý Žý !ý ý ’ý “ý Žý Žý Žý  ý ”ý •ý Žý Žý ŽìPðHpðð0ð( ð ð>¶@  ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner22@€ÅÈ\@@@²„6&ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ4CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_groups.xls0000644000175000017500000002300012270520475026302 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8¯@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…… School Years…½ Persons…IGroupsŒÁÁTëjðbð( 3 ð¿ À@@ñ  ÷üjW9IDTitleStartEnd 2006-2008 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenshipmanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUS student001Peg Jorgensenmale0002 student002ShermSullivan0003 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro Group Title School Year Description Marching bandgroup00 2006-2009Members student131ÿ 9ø cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿý ý ý ý ý  ý  ý  ý  ý  ý ý ý ý ý ý ý ý ý ¾ý ý ý ¾ ý  ý  ý  ý  ý  ý ý ý  ý !¾ ý " ý  #ý  ý  ý  ý ý $ý %ý &¾ ý " ý  'ý  ý  ý  ý ý (ý )ý *¾ý +ý ,ý -¾ý .ý /ý 0¾ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿý 1ý ý 2ý 3ý 1~ Zý ~ Zý 2ý ý 3~ Zý 1ý 4ý ý 5ý 2ý 6ý 3 ý 1ý 4ý ý 5ý 2ý ý 3ý 7ý ý 8ý $å ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner5@€0ÖæÙ@@@€ãRX£ÌþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@WorkbookÿÿÿÿgCompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/test_selenium.py0000644000175000017500000000211312270520475026114 0ustar menesismenesis00000000000000# # SchoolTool - common information systems platform for school administration # Copyright (c) 2012 Shuttleworth Foundation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 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 . # """ Functional selenium tests for schooltool.export """ import unittest from schooltool.testing.selenium import collect_ftests from schooltool.export.stesting import export_selenium_layer def test_suite(): return collect_ftests(layer=export_selenium_layer) if __name__ == '__main__': unittest.main(defaultTest='test_suite') schooltool-2.6.3/src/schooltool/export/stests/section_sheets.txt0000644000175000017500000001552512270520475026455 0ustar menesismenesis00000000000000Test for Sections, SectionEnrollment and SectionTimetables sheets ----------------------------------------------------------------- Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') Let's import a file containing the Sections, SectionEnrollment and SectionTimetables sheets: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'section_sheets.xls') >>> manager.ui.import_xls(filename) There should be no errors so we should be back at the School tab view: >>> manager.url u'http://localhost/manage' Let's export the just imported data. >>> manager.query.link('School').click() >>> manager.query.link('School Export').click() >>> manager.query.button('Download').click() >>> manager.wait(downloads.new) We'll demonstrate that the data that we just imported has exported the same. >>> from schooltool.testing.xls import print_sheet >>> xls = downloads.read() >>> print_sheet(xls.sheet_by_name('Sections')) * A B C D E F G H I J 1 [u'School Year'][ u'Courses' ][ u'Term' ][ u'Section ID' ][ u'Previous ID' ][ u'Next ID' ][ u'Title' ][u'Description'][u'Instructors'][ u'Resources' ] 2 [ u'2010-2011' ][ u'art_a' ][ u'2010-fall' ][u'art_a_2010-fall_2010-spring'][ ][u'art_a_2010-fall_2010-spring'][ u'Art A \u2013 1' ][ u'Art desc.' ][u'teacher000' ][ u'room00' ] 3 [ u'2010-2011' ][ u'art_a' ][u'2011-spring'][u'art_a_2010-fall_2010-spring'][u'art_a_2010-fall_2010-spring'][ ][ u'Art A \u2013 1' ][ u'Art desc.' ][u'teacher000' ][ u'room00' ] 4 [ u'2010-2011' ][u'english_a'][ u'2010-fall' ][ u'english_a_2010-fall' ][ ][ u'history_a_2011-spring' ][u'English A \u2013 1'][ ][u'teacher001' ][u'room01, projector00'] 5 [ u'2010-2011' ][u'history_a'][u'2011-spring'][ u'history_a_2011-spring' ][ u'english_a_2010-fall' ][ ][u'History A \u2013 1'][ ][ ][ ] >>> print_sheet(xls.sheet_by_name('SectionEnrollment')) * A B C 1 [u'School Year'][ u'Term' ][ u'Section ID' ] 2 [ u'2010-2011' ][ u'2010-fall' ][u'art_a_2010-fall_2010-spring'] 3 [ u'2010-2011' ][u'2011-spring'][u'art_a_2010-fall_2010-spring'] 4 [ ][ ][ ] 5 [ u'Students' ][ ][ ] 6 [u'student000' ][ ][ ] 7 [u'student001' ][ ][ ] 8 [u'student002' ][ ][ ] 9 [u'student003' ][ ][ ] 10 [u'student004' ][ ][ ] 11 [u'student005' ][ ][ ] 12 [ ][ ][ ] 13 [u'School Year'][ u'Term' ][ u'Section ID' ] 14 [ u'2010-2011' ][ u'2010-fall' ][ u'english_a_2010-fall' ] 15 [ u'2010-2011' ][u'2011-spring'][ u'history_a_2011-spring' ] 16 [ ][ ][ ] 17 [ u'Students' ][ ][ ] 18 [u'student003' ][ ][ ] 19 [u'student004' ][ ][ ] 20 [u'student005' ][ ][ ] 21 [u'student006' ][ ][ ] 22 [u'student007' ][ ][ ] 23 [u'student008' ][ ][ ] 24 [u'student009' ][ ][ ] >>> print_sheet(xls.sheet_by_name('SectionTimetables')) * A B C D 1 [u'School Year'][ u'Term' ][ u'Section ID' ][ ] 2 [ u'2010-2011' ][ u'2010-fall' ][u'art_a_2010-fall_2010-spring'][ ] 3 [ u'2010-2011' ][u'2011-spring'][u'art_a_2010-fall_2010-spring'][ ] 4 [ ][ ][ ][ ] 5 [ u'Timetable' ][ u'simple' ][ u'Consecutive' ][u'no' ] 6 [ ][ ][ ][ ] 7 [ u'Day' ][ u'Period ID' ][ ][ ] 8 [ u'Day 1' ][ u'B' ][ ][ ] 9 [ u'Day 2' ][ u'B' ][ ][ ] 10 [ u'Day 3' ][ u'B' ][ ][ ] 11 [ u'Day 4' ][ u'B' ][ ][ ] 12 [ u'Day 5' ][ u'B' ][ ][ ] 13 [ u'Day 6' ][ u'B' ][ ][ ] 14 [ ][ ][ ][ ] 15 [u'School Year'][ u'Term' ][ u'Section ID' ][ ] 16 [ u'2010-2011' ][ u'2010-fall' ][ u'english_a_2010-fall' ][ ] 17 [ u'2010-2011' ][u'2011-spring'][ u'history_a_2011-spring' ][ ] 18 [ ][ ][ ][ ] 19 [ u'Timetable' ][ u'simple' ][ u'Consecutive' ][u'yes'] 20 [ ][ ][ ][ ] 21 [ u'Day' ][ u'Period ID' ][ ][ ] 22 [ u'Day 1' ][ u'E' ][ ][ ] 23 [ u'Day 2' ][ u'E' ][ ][ ] 24 [ u'Day 3' ][ u'E' ][ ][ ] 25 [ u'Day 4' ][ u'E' ][ ][ ] 26 [ u'Day 5' ][ u'E' ][ ][ ] 27 [ u'Day 6' ][ u'E' ][ ][ ] Finally, we'll re-import the just exported data to show that the importer can survive the round-trip. >>> dirname = downloads.path >>> filename = os.path.join(dirname, downloads.files.keys()[0]) >>> manager.ui.import_xls(filename) schooltool-2.6.3/src/schooltool/export/stests/errant_linked_section_import.xls0000644000175000017500000004200012270520475031350 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8ƒ@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YYà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ ठÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…§ School Years… bTerms…5 Resources…GPersons…1)Courses…/,LinkedSectionImportŒÁÁTë‚ðzð@3 ð¿ À@@ñ  ÷üçIDTitleStartEnd 2011-2012 2010-2011 SchoolYear 2010-fall 2010 Fall 2011-fall 2011 Fall 2011-spring 2011 Spring 2012-spring 2012 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXType projector00 Equipment Projector 00 projector01 Projector 01 projector02 Projector 02 projector03 Projector 03room00LocationRoom 00room01Room 01room02Room 02room03Room 03room04Room 04 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo Bool Demomanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUSTrue student001Peg Jorgensenmale0002 student002ShermSullivan0003False student003PiotrCooper0004 student004Bradley0005 student005MiriamPetersen0006 student006KimmyEllis0007 student007EmilyTerry0008 student008RickHunt0009 student009MagnusParks0010 student010TedBarrett0011 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq teacher004Will De los Santos School Year Descriptionart_aArt Aart_bArt B english_a English A history_a History ACourses Start TermEnd Term Section ID Instructors Resourcesart_a_2010-fall_2010-spring Art A  1 Art desc.english_a_2010-fall English A  1 English desc.room01, projector00history_a_2011-spring History A  1abcÿ  cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿý ý ý ý ý ý ½J}Êý ý ½šw|ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½šwîyý ý  ý  ½J}žý ý  ý  ½úy|ý ý  ý ½ªÊý ½®w®w½:x:x½ ’x’x½ ¶x¶x½ îxòx½ by~y½ ÂyÂy½Nz^z½.{>{½Ö{Ö{½^}^}½ê}ê}½ž~¢~½.½::½rr½þ€½¶€¶€½Þ€î€½††ý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý ý ý ý ý ý ý ý ý ý ý ý  ý !ý ý "ý #ý $ý %ý &ý $ý 'ý (ý $ý )ý *ý $ý +ý ,ý $ý -ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿý .ý /ý 0ý 1ý 2ý 3ý 4ý 5ý 6ý 7ý ý 8ý 9ý :ý ;ý <ý =ý >ý ?ý @¾~ r@ÿÿý Aý Bý C¾ ý D ý  Eý  Fý  Gý  Hý Iý Jý Ký Lý M¾ ý N ý  Oý  Fý  Gý  Hý Iÿÿý Pý Qý R¾ ý N ý  Sý  Fý  Gý  Hý Iý Tý Uý Vý W¾ ý D ý  Xý  Fý  Gý  Hý Iý Yý Vý Z¾ ý N ý  [ý  Fý  Gý  Hý Iý \ý ]ý ^¾ ý N ý  _ý  Fý  Gý  Hý Iý `ý aý b¾ ý D ý  cý  Fý  Gý  Hý Iý d ý e ý f¾ ý N ý gý Fý Gý Hý Iý h ý i ý j¾ ý D ý ký Fý Gý Hý Iý l ý m ý n¾ ý N ý oý Fý Gý Hý Iý p ý q ý r¾ ý D ý sý Fý Gý Hý Iý t ý u ý v¾ ý wý xý y¾ý zý {ý |¾ý }ý ~ý ¾ý €ý ý ‚¾ìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ƒý ý ý „ý ý …ý †ý ý ‡ý ˆý ý ‰ý Šý ý ‹ý ŒìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } ‘} ð} ”   ÿ ÿ ÿÿ ÿ ÿÿÿý ƒý ý Žý ý ý ý „ý ‘ý ’ý ý …ý ý  ý “ý ”ý •ý tý #ý ý ‰ý ý ý –ý —ý ˜ý wý ™ý ý ‹ý  ý  ý šý ›½$ý ”½ý œý œý œý œý œý ”ý œý œý ý œý œý œý œý ”ý ý …ý  ý ý œý ”ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner51@”f@'@@@pe£YÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ2CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_data.txt0000644000175000017500000001543412270520475025721 0ustar menesismenesis00000000000000Tests for errant import data ---------------------------- Log in as manager: >>> import os >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') We'll define a helper function for calling the import helper wth the full filename and printing out the errors. >>> def import_file(filename): ... dirname = os.path.abspath(os.path.dirname(__file__)) ... filename = os.path.join(dirname, filename) ... manager.ui.import_xls(filename) ... errors = manager.query_all.css('textarea').text ... if errors: ... lines = [l.strip() for l in errors[0].split('\n') if l.strip()] ... print '\n'.join(lines) This file has examples of bad data for the Sections, SectionEnrollment and SectionTimetables sheets: >>> import_file('errant_section_sheets.xls') SectionEnrollment ----------------- invalid school year: A2-3 is not a valid section id in the specified term: C5 is not a valid term in the given school year: B4 is not a valid username: A8-9 SectionTimetables ----------------- invalid school year: A2-3 is not a valid day id for the given timetable: A21-22 is not a valid period id for the given day: B23 is not a valid section id in the specified term: C5 is not a valid term in the given school year: B4 must be either TRUE, FALSE, YES or NO (upper, lower and mixed case are all valid): D13 Sections -------- has an invalid course id for the given school year: B8 has an invalid resource id: J6-8 has an invalid username: I6-8 invalid school year: A6-7 is not a valid term in the given school year: C8 missing required text: B9, C9, D9, G9 This file has examples of bad data for the LinkedSectionImport sheet: >>> import_file('errant_linked_section_import.xls') LinkedSectionImport ------------------- end term cannot be before start term: D8 has an invalid course id for the given school year: B7 has an invalid resource id: I5-6 has an invalid username: G5-6 invalid school year: A5-6 is not a valid term in the given school year: C7, D7 This file has examples of bad data for the School Years sheet: >>> import_file('errant_years.xls') School Years ------------ end date cannot be before start date: D3 end date overlaps another year: D6 has no date in it: C2, D2 start date overlaps another year: C5 This file has examples of bad data for the Terms sheet: >>> import_file('errant_terms.xls') Terms ----- end date after end of school year: E7 end date cannot be before start date: E5, E17 end date overlaps another term: E11 has no date in it: A15, B16, D2, E2 invalid school year: A3-4 missing required text: B2, C2 start date before start of school year: D6 start date overlaps another term: D10 This file has examples of bad data for the School Timetables sheet: >>> import_file('errant_timetables.xls') School Timetables ----------------- missing required text: B1-5, B10, B15, B20, B25, B35, B48 This file has examples of bad data for the Resouces sheet: >>> import_file('errant_resources.xls') Resources --------- missing required text: B2, C2 must be either 'Location', 'Equipment' or 'Resource': B3 We'll add some demo fields to test importing demos. >>> manager.query.link('School').click() >>> manager.query.link('Demographics').click() >>> manager.query.link('Text Field').click() >>> manager.query.name('form.widgets.title').type('Text Demo') >>> manager.query.name('form.widgets.name').type('text_demo') >>> manager.query.id('form-widgets-required-0').click() >>> manager.query.button('Submit').click() >>> manager.query.link('Date Field').click() >>> manager.query.name('form.widgets.title').type('Date Demo') >>> manager.query.name('form.widgets.name').type('date_demo') >>> manager.query.id('form-widgets-required-0').click() >>> manager.query.button('Submit').click() >>> manager.query.link('Yes/No Field').click() >>> manager.query.name('form.widgets.title').type('Bool Demo') >>> manager.query.name('form.widgets.name').type('bool_demo') >>> manager.query.id('form-widgets-required-0').click() >>> manager.query.button('Submit').click() This file has examples of bad data for the Persons sheet: >>> import_file('errant_persons.xls') Persons ------- Username cannot contain non-ascii characters: A4 gender must be male or female: I2 has no date in it: H2, Q2-3 missing required text: C2, E2, P2, R2 must be either TRUE, FALSE, YES or NO (upper, lower and mixed case are all valid): R3 We'll remove the demo fields to not break future tests. >>> manager.query.link('School').click() >>> manager.query.link('Demographics').click() >>> manager.query.link('Reorder or Delete Fields').click() >>> manager.query.name('delete.text_demo').click() >>> manager.query.name('delete.date_demo').click() >>> manager.query.name('delete.bool_demo').click() This file has examples of bad data for the Courses sheet: >>> import_file('errant_courses.xls') Courses ------- course credits need to be a valid number: G3 invalid school year: A4 missing required text: B2, C2 This file has examples of bad data for the old Section sheets: >>> import_file('errant_sections.xls') School Timetables ----------------- missing required text: B5 Sections 1 ---------- missing required text: B1, D1 Sections_3 ---------- invalid school year: B1 Sections_4 ---------- is not a valid term in the given school year: D1 Sections_5 ---------- is not a valid timetable in the given school year: A20 is not a valid username: A12, A17 This file has examples of bad data for the Groups sheet: >>> import_file('errant_groups.xls') Groups ------ invalid school year: B13 is not a valid username: A23 missing required text: B1-3 This file has examples of bad data for the Contact Persons and Contact Relationships sheets: >>> import_file('errant_contacts.xls') Contact Persons --------------- Username cannot contain non-ascii characters: A2 missing required text: C3, E3 must be empty when ID is a user id: B4, C4, D4, E4, F4 Contact Relationships --------------------- Username cannot contain non-ascii characters: A3, B3 is not a valid contact relationship: C4 is not a valid username: A4 is not a valid username or contact id: B4 missing required text: B2 schooltool-2.6.3/src/schooltool/export/stests/errant_resources.xls0000644000175000017500000001300012270520475026774 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿþÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ þÿÿÿþÿÿÿþÿÿÿ!"#þÿÿÿ%þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8X@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERALà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…÷ ResourcesŒÁÁTëZðRð3 ð¿ À@@ñ  ÷üCIDTypeTitle projector00Unknown Projector 01ÿ ‘ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿý ý ý ý ý ý ý ìPðHðð0ð( ð ð>¶@XXÿggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner2@€ØoäÑ@@@€)d™‰ËþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF€ Workbookÿÿÿÿ5CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿ ÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ$tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/import_section_calendar_bug.txt0000644000175000017500000000313012270520475031147 0ustar menesismenesis00000000000000SectionTimetables sheet doesn't add calendar events =================================================== This test file proves that the SectionTimetables sheet import properly updates the calendar events of the teachers and students of the section. Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') Let's specify a test file with just one teacher and one student who share four classes, two of which are linked. >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'simple_sections.xls') >>> manager.ui.import_xls(filename) Log in as the teacher: >>> teacher = browsers.teacher >>> teacher.ui.login('teacher000', 'teacher000') We'll visit the teacher's calendar for the first day of the schoolyear and find the section events we expect to find. >>> teacher.open(teacher.url+'/2011-09-05') >>> print teacher.query_all.css('.event h6 a').text Art A Fall (08:00 - 08:55) English A Fall (09:00 - 09:55) Art A Fall (10:00 - 10:55) English A Fall (11:00 - 11:55) Log in as the student: >>> student = browsers.student >>> student.ui.login('student000', 'student000') We'll visit the student's calendar for the first day of the schoolyear and find the section events we expect to find. >>> student.open(student.url+'/2011-09-05') >>> print student.query_all.css('.event h6 a').text Art A Fall (08:00 - 08:55) English A Fall (09:00 - 09:55) Art A Fall (10:00 - 10:55) English A Fall (11:00 - 11:55) schooltool-2.6.3/src/schooltool/export/stests/__init__.py0000644000175000017500000000002112270520475024767 0ustar menesismenesis00000000000000# Python package schooltool-2.6.3/src/schooltool/export/stests/section_sheets.xls0000644000175000017500000005600012270520475026435 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ +(þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ  !"#$%&'þÿÿÿþÿÿÿ*þÿÿÿ,þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8í@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YYà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ ठÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…c School Years… Terms…åSchool Timetables…% Resources…)Persons…ó6Courses…ë9Sections…à>SectionEnrollment…YDSectionTimetablesŒÁÁTëšð’ðX$  3 ð¿ À@@ñ  ÷ü9àÀIDTitleStartEnd 2011-2012 2010-2011 SchoolYear 2010-fall 2010 Fall 2011-fall 2011 Fall 2011-spring 2011 Spring 2012-spring 2012 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School Year Period days school_days Time slotsDaysPeriodsDay 1ABCDEFhomeroomlessonDay 2Day 3Day 4Day 5Day 6 Time schedule 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Type projector00 Equipment Projector 00 projector01 Projector 01 projector02 Projector 02 projector03 Projector 03room00LocationRoom 00room01Room 01room02Room 02room03Room 03room04Room 04 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo Bool Demomanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUSTrue student001Peg Jorgensenmale0002 student002ShermSullivan0003False student003PiotrCooper0004 student004Bradley0005 student005MiriamPetersen0006 student006KimmyEllis0007 student007EmilyTerry0008 student008RickHunt0009 student009MagnusParks0010 student010TedBarrett0011 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq teacher004Will De los Santos Descriptionart_aArt Aart_bArt B english_a English A history_a History ACoursesTerm Section ID Previous IDNext ID Instructors Resourcesart_a_2010-fall_2010-spring Art A  1 Art desc.english_a_2010-fallhistory_a_2011-spring English A  1room01, projector00 History A  1Students Timetable ConsecutivenoDay Period IDyesÿ À cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿý ý ý ý ý ý ½J}Êý ý ½šw|ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½šwîyý ý  ý  ½J}žý ý  ý  ½úy|ý ý  ý ½ªÊý ½®w®w½:x:x½ ’x’x½ ¶x¶x½ îxòx½ by~y½ ÂyÂy½Nz^z½.{>{½Ö{Ö{½^}^}½ê}ê}½ž~¢~½.½::½rr½þ€½¶€¶€½Þ€î€½††ý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý  ý !¾ý "ý #ý $ý %ý &ý 'ý (ý )ý *ý *ý *ý *ý *ý +ý $ý %ý &ý 'ý (ý #ý )ý *ý *ý *ý *ý *ý ,ý %ý &ý 'ý (ý #ý $ý )ý *ý *ý *ý *ý *ý -ý &ý 'ý (ý #ý $ý %ý )ý *ý *ý *ý *ý *ý .ý 'ý (ý #ý $ý %ý &ý )ý *ý *ý *ý *ý *ý /ý (ý #ý $ý %ý &ý 'ý )ý *ý *ý *ý *ý *ý 0ý "ý 1ý 2ý 3ý 4ý 5ý 6¾ý +ý 1ý 2ý 3ý 4ý 5ý 6¾ý ,ý 1ý 2ý 3ý 4ý 5ý 6¾ý -ý 1ý 2ý 3ý 4ý 5ý 6¾ý .ý 1ý 2ý 3ý 4ý 5ý 6¾ý /ý 1ý 2ý 3ý 4ý 5ý 6å ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý ý 7ý ý 8ý 9ý :ý ;ý 9ý <ý =ý 9ý >ý ?ý 9ý @ý Aý Bý Cý Dý Bý Eý Fý Bý Gý Hý Bý Iý Jý Bý KìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿý Lý Mý Ný Oý Pý Qý Rý Sý Tý Uý ý Vý Wý Xý Yý Zý [ý \ý ]ý ^¾~ r@ÿÿý _ý `ý a¾ ý b ý  cý  dý  eý  fý gý hý iý jý k¾ ý l ý  mý  dý  eý  fý gÿÿý ný oý p¾ ý l ý  qý  dý  eý  fý gý rý sý tý u¾ ý b ý  vý  dý  eý  fý gý wý tý x¾ ý l ý  yý  dý  eý  fý gý zý {ý |¾ ý l ý  }ý  dý  eý  fý gý ~ý ý €¾ ý b ý  ý  dý  eý  fý gý ‚ ý ƒ ý „¾ ý l ý …ý dý eý fý gý † ý ‡ ý ˆ¾ ý b ý ‰ý dý eý fý gý Š ý ‹ ý Œ¾ ý l ý ý dý eý fý gý Ž ý  ý ¾ ý b ý ‘ý dý eý fý gý ’ ý “ ý ”¾ ý •ý –ý —¾ý ˜ý ™ý š¾ý ›ý œý ¾ý žý Ÿý  ¾ìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ý ý ý ¡ý ý ¢ý £ý ý ¤ý ¥ý ý ¦ý §ý ý ¨ý ©ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } ‘} ð} >} ”   ÿ ÿ ÿ ÿÿý ý ªý «ý ¬ý ­ý ®ý ý ¡ý ¯ý °ý ý ¢ý ý ±ý ±ý ²ý ³ý ’ý  Aý ý ¢ý  ý ±ý ±ý ²ý ³ý ’ý  Aý ý ¦ý ý ´ý µý ¶ý •ý  ·ý ý ¨ý  ý µý ´ý ¸ìPðHpðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } «} ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿý ý «ý ¬ý ý ý ±ý ý  ý ±ý ¹ý _ý iý ný sý wý zý ý «ý ¬ý ý ý ´ý ý  ý µý ¹ý sý wý zý ~ý ‚ý †ý ŠìPðH€ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿý ý «ý ¬ý ý ý ±ý ý  ý ±ý ºý ý »ý ¼ý ½ý ¾ý "ý $ý +ý $ý ,ý $ý -ý $ý .ý $ý /ý $ý ý «ý ¬ý ý ý ´ý ý  ý µý ºý ý »ý ¿ý ½ý ¾ý "ý 'ý +ý 'ý ,ý 'ý -ý 'ý .ý 'ý /ý 'ìPðHð$ð0ð( ð ð$>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner47@€]!†#@@@€~’ÈÓXÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF)@WorkbookÿÿÿÿìJCompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/courses.xls0000644000175000017500000001500012270520475025074 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿ þÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ  !"#$%&'()*+,þÿÿÿ.þÿÿÿþÿÿÿ123þÿÿÿ5þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8û@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…¶ School Years…CoursesŒÁÁTëbðZð 3 ð¿ À@@ñ  ÷ü·IDTitleStartEnd 2006-2007 School Year DescriptionLocal ID Government IDCreditsart_aArt Aart_bArt B Art B Desc local_artb state_artbÿ Ü cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿý ý ý ý ý ý ½Æ`Ve¾ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } U} ” ÿÿÿý ý ý ý ý ý ý  ý ý  ý  ý ý  ý  ý ý ý ~ {ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner42@€®R@@@#ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF€ Workbookÿÿÿÿ? CompObjÿÿÿÿÿÿÿÿ-IOle ÿÿÿÿÿÿÿÿÿÿÿÿ/SummaryInformation(ÿÿÿÿÿÿÿÿ0ÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ4tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/linked_sections.txt0000644000175000017500000001253412270520475026610 0ustar menesismenesis00000000000000Tests for automatic linking of sections --------------------------------------- Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') This file tests the automatic linking of sections that have the same ID defined by the user between the terms: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'linked_sections.xls') >>> manager.ui.import_xls(filename) We see that each term has three sections, all with ids matching a section in another term. However, as we will see, if the cell after the 'Link?' heading is not set to 'y' or 'yes', or the matching section is not in an adjacent term, then the section will not end up linked. >>> manager.query.link('School').click() >>> manager.query.link('Sections').click() >>> print manager.query_all.xpath('//table[@class="data"]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/winter/sections/Art_1 http://localhost/schoolyears/2006-2007/winter/sections/Art_2 http://localhost/schoolyears/2006-2007/winter/sections/Art_3 http://localhost/schoolyears/2006-2007/spring/sections/Art_1 http://localhost/schoolyears/2006-2007/spring/sections/Art_3 http://localhost/schoolyears/2006-2007/spring/sections/Art_4 http://localhost/schoolyears/2006-2007/fall/sections/Art_1 http://localhost/schoolyears/2006-2007/fall/sections/Art_2 http://localhost/schoolyears/2006-2007/fall/sections/Art_4 We'll show all the linked sections for each term, starting with Fall. We see the ones with matching ids in other terms are linked, except in the case of the Art_3 section which was not marked to link in either term (see 'Link?' heading in linked_sections.xls) and Art_4 which is found in two terms that are not adjacent. >>> manager.ui.section.go('2006-2007', 'Fall', 'Art_1') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/winter/sections/Art_1 http://localhost/schoolyears/2006-2007/spring/sections/Art_1 >>> manager.ui.section.go('2006-2007', 'Fall', 'Art_2') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/winter/sections/Art_2 >>> manager.ui.section.go('2006-2007', 'Fall', 'Art_4') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//td') Fall (currently viewing) Now we'll do the same for the Winter sections. >>> manager.ui.section.go('2006-2007', 'Winter', 'Art_1') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/fall/sections/Art_1 http://localhost/schoolyears/2006-2007/spring/sections/Art_1 >>> manager.ui.section.go('2006-2007', 'Winter', 'Art_2') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/fall/sections/Art_2 >>> manager.ui.section.go('2006-2007', 'Winter', 'Art_3') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//td') Winter (currently viewing) Finally the same for the Spring sections. >>> manager.ui.section.go('2006-2007', 'Spring', 'Art_1') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/fall/sections/Art_1 http://localhost/schoolyears/2006-2007/winter/sections/Art_1 >>> manager.ui.section.go('2006-2007', 'Spring', 'Art_3') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//td') Spring (currently viewing) >>> manager.ui.section.go('2006-2007', 'Spring', 'Art_4') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//td') Spring (currently viewing) Now let's try reimporting the same file: >>> manager.ui.import_xls(filename) No problem. The same sections are there. >>> manager.query.link('School').click() >>> manager.query.link('Sections').click() >>> print manager.query_all.xpath('//table[@class="data"]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/winter/sections/Art_1 http://localhost/schoolyears/2006-2007/winter/sections/Art_2 http://localhost/schoolyears/2006-2007/winter/sections/Art_3 http://localhost/schoolyears/2006-2007/spring/sections/Art_1 http://localhost/schoolyears/2006-2007/spring/sections/Art_3 http://localhost/schoolyears/2006-2007/spring/sections/Art_4 http://localhost/schoolyears/2006-2007/fall/sections/Art_1 http://localhost/schoolyears/2006-2007/fall/sections/Art_2 http://localhost/schoolyears/2006-2007/fall/sections/Art_4 Just to be sure, we'll make sure the first one is linked to the other terms. >>> manager.ui.section.go('2006-2007', 'Fall', 'Art_1') >>> print manager.query_all.xpath('//div[@class="body"]/table[1]//a').get_attribute('href') http://localhost/schoolyears/2006-2007/winter/sections/Art_1 http://localhost/schoolyears/2006-2007/spring/sections/Art_1 schooltool-2.6.3/src/schooltool/export/stests/export.txt0000644000175000017500000000504712270520475024755 0ustar menesismenesis00000000000000Selenium browser export test example ==================================== >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') >>> downloads.clear() >>> manager.query.link('School').click() Let's export the empty school set up. >>> manager.query.link('School Export').click() >>> manager.query.button('Download').click() We have to wait until the download is saved: >>> manager.wait(downloads.new) And now we can see it: >>> [d.filename for d in downloads.new()] ['export.xls'] And read it: >>> xls = downloads.read() >>> print xls Exported XLS is not in the new list anymore (but we could still use downloads.get(name=xxx) or downloads.read(name=xxx) to get it later) >>> print downloads.new() [] >>> [d.filename for d in downloads.all()] ['export.xls'] And now we can demonstrate sheet printing: >>> from schooltool.testing.xls import print_sheet >>> print_sheet(xls.sheet_by_name('Terms')) * A B C D E F G 1 [u'SchoolYear'][ u'ID' ][ u'Title' ][ u'Start' ][ u'End' ][ ][ ] 2 [ ][ ][ ][ ][ ][ ][ ] 3 [ u'Weekends' ][ ][ ][ ][ ][ ][ ] 4 [ u'Monday' ][u'Tuesday'][u'Wednesday'][u'Thursday'][u'Friday'][u'Saturday'][u'Sunday'] 5 [ u'X' ][ u'X' ][ u'X' ][ u'X' ][ u'X' ][ u'X' ][ u'X' ] We can limit printing to a certain list of rows / cols. >>> print_sheet(xls.sheet_by_name('Terms'), rows=range(3, 6), cols=range(1, 6)) * A B C D E 3 [u'Weekends'][ ][ ][ ][ ] 4 [ u'Monday' ][u'Tuesday'][u'Wednesday'][u'Thursday'][u'Friday'] 5 [ u'X' ][ u'X' ][ u'X' ][ u'X' ][ u'X' ] We can even select specific columns (or rows): >>> print_sheet(xls.sheet_by_name('Persons'), cols=[1, 3, 5]) * A C E 1 [u'User Name'] ... [u'First Name'] ... [u'Last Name'] 2 [ u'manager' ] ... [ u'Default' ] ... [ u'Manager' ] >>> print_sheet(xls.sheet_by_name('Persons'), cols='A, C-E') * A C D E 1 [u'User Name'] ... [u'First Name'][u'Middle Name'][u'Last Name'] 2 [ u'manager' ] ... [ u'Default' ][ ][ u'Manager' ] schooltool-2.6.3/src/schooltool/export/stests/teachers_students_sheets.txt0000644000175000017500000001014712270520475030533 0ustar menesismenesis00000000000000Test for Teachers and Students sheets ------------------------------------- Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') We'll add some demo fields, one limited to teachers and one to students. >>> manager.query.link('School').click() >>> manager.query.link('Demographics').click() >>> manager.query.link('Yes/No Field').click() >>> manager.query.name('form.widgets.title').type('Bool Demo') >>> manager.query.name('form.widgets.name').type('bool_demo') >>> manager.query.id('form-widgets-required-1').click() >>> manager.query.id('form-widgets-limit_keys-1').click() >>> manager.query.button('Submit').click() >>> manager.query.link('Date Field').click() >>> manager.query.name('form.widgets.title').type('Date Demo') >>> manager.query.name('form.widgets.name').type('date_demo') >>> manager.query.id('form-widgets-required-1').click() >>> manager.query.id('form-widgets-limit_keys-0').click() >>> manager.query.button('Submit').click() We will import a special test xls file that has a Teachers and a Students sheet: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'teachers_students_sheets.xls') >>> manager.ui.import_xls(filename) Let's look at the teachers group: >>> manager.query.link('School').click() >>> manager.query.link('Teachers').click() We see the teachers we defined in the Teachers sheet. >>> print manager.query_all.xpath('//table[@class="data"]//td[1]//a').get_attribute('href') http://localhost/persons/teacher001?done_link=http://localhost/schoolyears/2006-2008/groups/teachers http://localhost/persons/teacher000?done_link=http://localhost/schoolyears/2006-2008/groups/teachers Their limit demos are set in the teachers objects. >>> manager.query.link('Alvarez').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Nathan Alvarez teacher001 No >>> manager.query.link('Done').click() >>> manager.query.link('Russell').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Lu Russell teacher000 Yes Let's look at the students group: >>> manager.query.link('School').click() >>> manager.query.link('Students').click() We see the students we defined in the Students sheet. >>> print manager.query_all.xpath('//table[@class="data"]//td[1]//a').get_attribute('href') http://localhost/persons/student003?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student000?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student001?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student002?done_link=http://localhost/schoolyears/2006-2008/groups/students Their limit demos are set in the students objects. >>> manager.query.link('Cooper').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Piotr Cooper Female student003 0004 White English Arlington US 2000-01-04 >>> manager.query.link('Done').click() >>> manager.query.link('Hart').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Florian Hart Female student000 0001 White English Arlington US 2000-01-01 >>> manager.query.link('Done').click() >>> manager.query.link('Jorgensen').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Peg Jorgensen Male student001 0002 White English Arlington US 2000-01-03 >>> manager.query.link('Done').click() >>> manager.query.link('Sullivan').click() >>> print manager.query_all.xpath('//table[@class="person-view-demographics"]//td[2]').text Sherm Sullivan Male student002 0003 White English Arlington US 2000-01-02 schooltool-2.6.3/src/schooltool/export/stests/errant_section_sheets.xls0000644000175000017500000005600012270520475030010 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ +(þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ  !"#$%&'þÿÿÿþÿÿÿ*þÿÿÿ,þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YYà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ ठÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…d School Years… Terms…òSchool Timetables…% Resources…()Persons…7Courses…:Sections…·@SectionEnrollment…zDSectionTimetablesŒÁÁTëšð’ðX$  3 ð¿ À@@ñ  ÷ü:×ÀIDTitleStartEnd 2011-2012 2010-2011 SchoolYear 2010-fall 2010 Fall 2011-fall 2011 Fall 2011-spring 2011 Spring 2012-spring 2012 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School Year Period days school_days Time slotsDaysPeriodsDay 1ABCDEFhomeroomlessonDay 2Day 3Day 4Day 5Day 6 Time schedule 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Type projector00 Equipment Projector 00 projector01 Projector 01 projector02 Projector 02 projector03 Projector 03room00LocationRoom 00room01Room 01room02Room 02room03Room 03room04Room 04 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo Bool Demomanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUSTrue student001Peg Jorgensenmale0002 student002ShermSullivan0003False student003PiotrCooper0004 student004Bradley0005 student005MiriamPetersen0006 student006KimmyEllis0007 student007EmilyTerry0008 student008RickHunt0009 student009MagnusParks0010 student010TedBarrett0011 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq teacher004Will De los Santos Descriptionart_aArt Aart_bArt B english_a English A history_a History ACoursesTerm Section ID Previous IDNext ID Instructors Resourcesart_a_2010-fall_2010-spring Art A  1 Art desc.english_a_2010-fallhistory_a_2011-spring English A  1room01, projector00 History A  1abcStudents Timetable ConsecutiveyesDay Period IDÿ À cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿý ý ý ý ý ý ½J}Êý ý ½šw|ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½šwîyý ý  ý  ½J}žý ý  ý  ½úy|ý ý  ý ½ªÊý ½®w®w½:x:x½ ’x’x½ ¶x¶x½ îxòx½ by~y½ ÂyÂy½Nz^z½.{>{½Ö{Ö{½^}^}½ê}ê}½ž~¢~½.½::½rr½þ€½¶€¶€½Þ€î€½††ý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý  ý !¾ý "ý #ý $ý %ý &ý 'ý (ý )ý *ý *ý *ý *ý *ý +ý $ý %ý &ý 'ý (ý #ý )ý *ý *ý *ý *ý *ý ,ý %ý &ý 'ý (ý #ý $ý )ý *ý *ý *ý *ý *ý -ý &ý 'ý (ý #ý $ý %ý )ý *ý *ý *ý *ý *ý .ý 'ý (ý #ý $ý %ý &ý )ý *ý *ý *ý *ý *ý /ý (ý #ý $ý %ý &ý 'ý )ý *ý *ý *ý *ý *ý 0ý "ý 1ý 2ý 3ý 4ý 5ý 6¾ý +ý 1ý 2ý 3ý 4ý 5ý 6¾ý ,ý 1ý 2ý 3ý 4ý 5ý 6¾ý -ý 1ý 2ý 3ý 4ý 5ý 6¾ý .ý 1ý 2ý 3ý 4ý 5ý 6¾ý /ý 1ý 2ý 3ý 4ý 5ý 6å ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý ý 7ý ý 8ý 9ý :ý ;ý 9ý <ý =ý 9ý >ý ?ý 9ý @ý Aý Bý Cý Dý Bý Eý Fý Bý Gý Hý Bý Iý Jý Bý KìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿý Lý Mý Ný Oý Pý Qý Rý Sý Tý Uý ý Vý Wý Xý Yý Zý [ý \ý ]ý ^¾~ r@ÿÿý _ý `ý a¾ ý b ý  cý  dý  eý  fý gý hý iý jý k¾ ý l ý  mý  dý  eý  fý gÿÿý ný oý p¾ ý l ý  qý  dý  eý  fý gý rý sý tý u¾ ý b ý  vý  dý  eý  fý gý wý tý x¾ ý l ý  yý  dý  eý  fý gý zý {ý |¾ ý l ý  }ý  dý  eý  fý gý ~ý ý €¾ ý b ý  ý  dý  eý  fý gý ‚ ý ƒ ý „¾ ý l ý …ý dý eý fý gý † ý ‡ ý ˆ¾ ý b ý ‰ý dý eý fý gý Š ý ‹ ý Œ¾ ý l ý ý dý eý fý gý Ž ý  ý ¾ ý b ý ‘ý dý eý fý gý ’ ý “ ý ”¾ ý •ý –ý —¾ý ˜ý ™ý š¾ý ›ý œý ¾ý žý Ÿý  ¾ìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ý ý ý ¡ý ý ¢ý £ý ý ¤ý ¥ý ý ¦ý §ý ý ¨ý ©ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } ‘} ð} >} ”   ÿ ÿ ÿ ÿÿ ÿ ÿ ÿÿý ý ªý «ý ¬ý ­ý ®ý ý ¡ý ¯ý °ý ý ¢ý ý ±ý ±ý ²ý ³ý ’ý  Aý ý ¢ý  ý ±ý ±ý ²ý ³ý ’ý  Aý ý ¦ý ý ´ý µý ¶ý •ý  ·ý ý ¨ý  ý µý ´ý ¸½*ý ²½ ý ¹ý ¹ý ¹ý ¹ý ¹ý ¹ý ²ý ¹ý  ¹ý ý ¹ý ¹ý ¹ý ¹ý ¹ý ²ý ¹ý  ¹ý ìPðHpðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } «} ”  ÿÿÿÿÿÿÿÿÿý ý «ý ¬½ý ¹ý ¹ý ¹ý ý ¹ý ¹ý ý ý ¹ý º~ ý ¹ìPðH€ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿý ý «ý ¬½ý ¹ý ¹ý ¹ý ý ¹ý ¹ý ý ý ¹ý ý ý ±¾ý »~ ý ¼ý ¹ý ý «ý ¬ý ý ý ±ý »ý ¹ý ¼ý ¹ý ý «ý ¬ý ý ý ±ý »ý ý ¼ý ½ý ¾ý ¿½ý ¹ý ¹ý "ý ¹ìPðHð$ð0ð( ð ð$>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner55@®µ’C@@@•™žYÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF)@Workbookÿÿÿÿ¿JCompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/linked_section_import.xls0000644000175000017500000004100012270520475027774 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YYà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ ठÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…¡ School Years… VTerms…# Resources…/Persons…)Courses… ,LinkedSectionImportŒÁÁTë‚ðzð@3 ð¿ À@@ñ  ÷üáûœIDTitleStartEnd 2011-2012 2010-2011 SchoolYear 2010-fall 2010 Fall 2011-fall 2011 Fall 2011-spring 2011 Spring 2012-spring 2012 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXType projector00 Equipment Projector 00 projector01 Projector 01 projector02 Projector 02 projector03 Projector 03room00LocationRoom 00room01Room 01room02Room 02room03Room 03room04Room 04 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo Bool Demomanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUSTrue student001Peg Jorgensenmale0002 student002ShermSullivan0003False student003PiotrCooper0004 student004Bradley0005 student005MiriamPetersen0006 student006KimmyEllis0007 student007EmilyTerry0008 student008RickHunt0009 student009MagnusParks0010 student010TedBarrett0011 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq teacher004Will De los Santos School Year Descriptionart_aArt Aart_bArt B english_a English A history_a History ACourses Start TermEnd Term Section ID Instructors Resourcesart_a_2010-fall_2010-spring Art A  1 Art desc.english_a_2010-fall English A  1 English desc.room01, projector00history_a_2011-spring History A  1ÿ œ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿý ý ý ý ý ý ½J}Êý ý ½šw|ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½šwîyý ý  ý  ½J}žý ý  ý  ½úy|ý ý  ý ½ªÊý ½®w®w½:x:x½ ’x’x½ ¶x¶x½ îxòx½ by~y½ ÂyÂy½Nz^z½.{>{½Ö{Ö{½^}^}½ê}ê}½ž~¢~½.½::½rr½þ€½¶€¶€½Þ€î€½††ý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý ý ý ý ý ý ý ý ý ý ý ý  ý !ý ý "ý #ý $ý %ý &ý $ý 'ý (ý $ý )ý *ý $ý +ý ,ý $ý -ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿý .ý /ý 0ý 1ý 2ý 3ý 4ý 5ý 6ý 7ý ý 8ý 9ý :ý ;ý <ý =ý >ý ?ý @¾~ r@ÿÿý Aý Bý C¾ ý D ý  Eý  Fý  Gý  Hý Iý Jý Ký Lý M¾ ý N ý  Oý  Fý  Gý  Hý Iÿÿý Pý Qý R¾ ý N ý  Sý  Fý  Gý  Hý Iý Tý Uý Vý W¾ ý D ý  Xý  Fý  Gý  Hý Iý Yý Vý Z¾ ý N ý  [ý  Fý  Gý  Hý Iý \ý ]ý ^¾ ý N ý  _ý  Fý  Gý  Hý Iý `ý aý b¾ ý D ý  cý  Fý  Gý  Hý Iý d ý e ý f¾ ý N ý gý Fý Gý Hý Iý h ý i ý j¾ ý D ý ký Fý Gý Hý Iý l ý m ý n¾ ý N ý oý Fý Gý Hý Iý p ý q ý r¾ ý D ý sý Fý Gý Hý Iý t ý u ý v¾ ý wý xý y¾ý zý {ý |¾ý }ý ~ý ¾ý €ý ý ‚¾ìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ƒý ý ý „ý ý …ý †ý ý ‡ý ˆý ý ‰ý Šý ý ‹ý ŒìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } ‘} ð} ”   ÿ ÿ ÿÿý ƒý ý Žý ý ý ý „ý ‘ý ’ý ý …ý ý  ý “ý ”ý •ý tý #ý ý ‰ý ý ý –ý —ý ˜ý wý ™ý ý ‹ý  ý  ý šý ›ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner49@€îš$@@@¬^®xYÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ60CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_timetables.xls0000644000175000017500000002600012270520475027117 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 86@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`… School Years… ± Terms…School TimetablesŒrrÁÁTëjðbð( 3 ð¿ À@@ñ  ÷ü[”5IDTitleStartEnd 2006-2008 SchoolYear 2006-fall 2006 Fall 2007-fall 2007 Fall 2007-spring 2007 Spring 2008-spring 2008 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool Timetable School YearModelSchemasimple2006 UnknownModel"SequentialDayIdBasedTimetableModel Day Templates 09:00-qwerty 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Day 2 08:00-08:55DaysPeriodsHomeroom periodsDay 1ABCDEFWeeklyTimetableModeldefaultÿ 5 cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(.Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(.Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½Æ`cý ý ý  ½zfÊhý ý  ý  ½cBeý ý  ý  ½Îhký ½²aÂa½’b¢b½ ®b¾b½ bgrg½ BhRh½ ^hnh½ d*d½6d6d½’i¢i½®i®iý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(.Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” 6 ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ~ Zý ~ Zý ~ Zý ~ Zý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý ý  ~ Zý !ý "ý #ý $ý %ý &ý 'ý (ý "ý #ý $ý %ý &ý 'ý (ý "ý #ý $ý %ý &ý ý ý ý  ÿ!ÿ#ÿ$ÿ&ÿ'ÿ( ÿ) ÿ+ÿ,ÿ-ÿ.ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿý ý ý !ý !ý # ý $'ý $(ý $"ý $#ý $$ý $%ý $&ý &)ý &*¾&ý &+ý ',ý '-ý '.ý '/ý '0ý '1ý '2ý '-ý ('ý (.ý (/ý (0ý (1ý (2ý (-ý (.ý (-ý )'ý ).ý )/ý )0ý )0ý )2ý )-ý ).ý ).ý +ý +ý ,ý ,ý -ý -ý .ý .3ý 0 ý 1,ý 1"~ 2»Vý 2"~ 3ý 3"~ 4ý 4"ý 54ý 5"å &&ìPðH0ð ð0ð( ð ð >¶@***ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0¤@H h t € Œ ˜éýGediminas Paulauskas10@€26â@@@ͲOJ(ËþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ{CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÔDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/linked_section_import.txt0000644000175000017500000000450112270520475030012 0ustar menesismenesis00000000000000Test for LinkedSectionImporter sheet ------------------------------------ Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') Let's import a file containing the LinkedSectionImporter sheet: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'linked_section_import.xls') >>> manager.ui.import_xls(filename) There should be no errors so we should be back at the School tab view: >>> manager.url u'http://localhost/manage' Let's export the just imported data. >>> manager.query.link('School').click() >>> manager.query.link('School Export').click() >>> manager.query.button('Download').click() >>> manager.wait(downloads.new) We'll demonstrate that the sections were created as requested. >>> from schooltool.testing.xls import print_sheet >>> xls = downloads.read() >>> print_sheet(xls.sheet_by_name('Sections')) * A B C D E F G H I J 1 [u'School Year'][ u'Courses' ][ u'Term' ][ u'Section ID' ][ u'Previous ID' ][ u'Next ID' ][ u'Title' ][ u'Description' ][u'Instructors'][ u'Resources' ] 2 [ u'2010-2011' ][ u'art_a' ][ u'2010-fall' ][u'art_a_2010-fall_2010-spring'][ ][u'art_a_2010-fall_2010-spring'][ u'Art A \u2013 1' ][ u'Art desc.' ][u'teacher000' ][ u'room00' ] 3 [ u'2010-2011' ][ u'art_a' ][u'2011-spring'][u'art_a_2010-fall_2010-spring'][u'art_a_2010-fall_2010-spring'][ ][ u'Art A \u2013 1' ][ u'Art desc.' ][u'teacher000' ][ u'room00' ] 4 [ u'2010-2011' ][u'english_a'][ u'2010-fall' ][ u'english_a_2010-fall' ][ ][ ][u'English A \u2013 1'][u'English desc.'][u'teacher001' ][u'room01, projector00'] 5 [ u'2010-2011' ][u'history_a'][u'2011-spring'][ u'history_a_2011-spring' ][ ][ ][u'History A \u2013 1'][ ][ ][ ] schooltool-2.6.3/src/schooltool/export/stests/linked_sections.xls0000644000175000017500000003000012270520475026563 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 86@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…l School Years… žTerms…” Courses…È Sections Fall…CSections_Winter…°Sections_SpringŒÁÁTë‚ðzð@3 ð¿ À@@ñ  ÷üåyIDTitleStartEnd 2006-2007 SchoolYearfallFallwinterWinterspringSpring School Year DescriptionartArtTerm Section TitleArt_1Link?yesCoursesArt_2Art_4Art_3ÿ d cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`reìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿý ý ý ý ý ý ý ý ½Æ`ªbý ý ý  ½®bdý ý  ý  ½dreìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý  ý ý ý  ý ý ý ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } ” ÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿý  ý ý ý ý ý ý ý ý ý ý  ý ý ý ý ý ý ý ý ý   ý  ý ý ý ý ý ý ý ý  ý ý ý å" ìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿý  ý ý ý ý ý ý ý ý ý ý  ý ý ý ý ý ý ý ý ý   ý  ý ý ý ý ý ý ý  ý ý ý å" ìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿý  ý ý ý  ý ý ý ý ý ý ý  ý ý ý ý ý ý ý ý   ý  ý ý ý ý ý ý ý ý  ý ý ý å" ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner13@@ZOA@@@¬²õ”ÌþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@WorkbookÿÿÿÿCompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/teachers_students_sheets.xls0000644000175000017500000003400012270520475030514 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YY§"TRUE";"TRUE";"FALSE"à¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ à§ À “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…… School Years…· Students…ûTeachersŒÁÁTëjðbð( 3 ð¿ À@@ñ  ÷üT2IDTitleStartEnd 2006-2008 School Year User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo student000FlorianHartfemale0001WhiteEnglish ArlingtonUS student001Peg Jorgensenmale0002 student002ShermSullivan0003 student003PiotrCooper0004 Bool Demo teacher000LuRussell teacher001NathanAlvarezÿ 2Z cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” -ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ¾ ¾$ý ý ý ý  ý  ý  ý  ý  ý ý  ý  ý  ý  ý  ý ý ý ý ý ¾ ý  ý  ý  ý  ý  ý ~ º:ý ý ý  ¾ ý ! ý  "ý  ý  ý  ý ~ Â:ý #ý $ý %¾ ý ! ý  &ý  ý  ý  ý ~ ¾:ý 'ý (ý )¾ ý  ý  *ý  ý  ý  ý ~ Æ:¾$¾$¾$ ¾$ ¾$ ¾$ ¾$ ¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$ ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ¾$ ¾$!¾$"¾$#¾$$¾$%¾$&¾$'¾$(¾$)¾$*¾$+¾$,ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" d,,š™™™™™¹?š™™™™™¹?U } ” +ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ¾ ¾$ý ý ý ý  ý  ý  ý  ý  ý ý  ý  ý  ý  ý  ý ý +ý ,ý -ý .¾ ý /ý 0ý 1¾ ¾$¾$¾$¾$¾$ ¾$ ¾$ ¾$ ¾$ ¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$ ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ¾$ ¾$!¾$"¾$#¾$$¾$%¾$&¾$'¾$(¾$)¾$*ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner17@€ÏQ÷@@@€Æ¾Uÿ ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ&CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/extensions_test.xls0000644000175000017500000001300012270520475026645 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿþÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ þÿÿÿ þÿÿÿþÿÿÿ#$%þÿÿÿ'þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8]@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`… School YearsŒÁÁTëZðRð3 ð¿ À@@ñ  ÷ü;IDTitleStartEnd 2006-2007 2007-2008ÿ ¿ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿý ý ý ý ý ý ½Æ`Veý ý ½zfkìPðHðð0ð( ð ð>¶@ÿggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner41@ÅTé@@@€™|1ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF Workbookÿÿÿÿ•CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿ!SummaryInformation(ÿÿÿÿÿÿÿÿ"ÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ&tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_courses.xls0000644000175000017500000001500012270520475026447 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿ þÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ  !"#$%&'()*+,þÿÿÿ.þÿÿÿþÿÿÿ123þÿÿÿ5þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8ß@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…Ë School Years…ýCoursesŒrrÁÁTëbðZð 3 ð¿ À@@ñ  ÷üÌIDTitleStartEnd 2006-2008 School Year DescriptionLocal ID Government IDCredits not decimal 2006-2007art_cArt C angls-kalba Angls kalbaÿ Ü cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(.Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@###ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(.Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” } <} ” ÿÿÿÿý ý ý ý ý ý ý  ý ý ½ZZZý  ý  ý  ý  ý ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0¤@H h t € Œ ˜éýGediminas Paulauskas5@èöÍ@@@Êû…PäÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF€ Workbookÿÿÿÿ1 CompObjÿÿÿÿÿÿÿÿ-IOle ÿÿÿÿÿÿÿÿÿÿÿÿ/SummaryInformation(ÿÿÿÿÿÿÿÿ0ÔDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ4tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/selenium_extensions.txt0000644000175000017500000000215112270520475027525 0ustar menesismenesis00000000000000Selenium browser extensions tests ================================= Let's test the selenium extensions created in the schooltool.export.stesting module. See the README.selenium.txt file in the schooltool/testing directory for instructions on how to use them. Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') browser.ui.import_xls() ----------------------- Used for importing and XLS file. Sending a blank filename simulates hitting Submit without selecting a file: >>> manager.ui.import_xls('') >>> print manager.query_all.css('.status div').text icon No data provided Let's specify a test file with just a School Years sheet for this simple test and try again. >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'extensions_test.xls') >>> manager.ui.import_xls(filename) Now we see that there are two schoolyears as specified in the sheet. >>> manager.query.link('School').click() >>> print manager.query_all.css('.third-nav a').text 2006-2007 2007-2008 schooltool-2.6.3/src/schooltool/export/stests/section_teachers_students.txt0000644000175000017500000000354712270520475030712 0ustar menesismenesis00000000000000Test for section import auto-adding to teachers and students groups ------------------------------------------------------------------- Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') We will import a special test xls file for testing the automatic adding of section members to the students group and of instrutors to the teachers group: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'section_teachers_students.xls') >>> manager.ui.import_xls(filename) Let's look at the teachers group: >>> manager.query.link('School').click() >>> manager.query.link('Teachers').click() We see the teachers of our two sections are in the group. >>> print manager.query_all.xpath('//table[@class="data"]//td[1]//a').get_attribute('href') http://localhost/persons/teacher001?done_link=http://localhost/schoolyears/2006-2008/groups/teachers http://localhost/persons/teacher003?done_link=http://localhost/schoolyears/2006-2008/groups/teachers Let's look at the students group: >>> manager.query.link('School').click() >>> manager.query.link('Students').click() We see the students in our two sections are in the group. >>> print manager.query_all.xpath('//table[@class="data"]//td[1]//a').get_attribute('href') http://localhost/persons/student004?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student006?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student008?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student009?done_link=http://localhost/schoolyears/2006-2008/groups/students http://localhost/persons/student002?done_link=http://localhost/schoolyears/2006-2008/groups/students schooltool-2.6.3/src/schooltool/export/stests/errant_contacts.xls0000644000175000017500000004100012270520475026601 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8C@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…§Persons…³)Contact Persons…ô-Contact RelationshipsŒÁÁTëjðbð( 3 ð¿ À@@ñ  ÷üzP9 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPasswordID EthnicityLanguagePlace of birth Citizenship student000FlorianHartfemale0001WhiteEnglish ArlingtonUS student001Peg Jorgensenmale0002Address line 1Address line 2CityStateCountry Postal code Home phone Work phone Mobile phoneEmail student00ó1 First Street222-2222student000_parent1Line 2NY10101homework333-3333emailenglishUnwanted Person ID Contact ID Relationship student00invalidÿ 9  cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ƒÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý  ý  ý  ý  ý  ý ý ý ý ¾ ý  ý  ý  ý  ý  ý ý ý ý ¾ ý  ý  ý  ý  ý  ý ¾$¾$¾$¾$¾$¾$¾$ ¾$ ¾$ ¾$ ¾$ ¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$ ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ7ÿ8ÿ9ÿ:ÿ;ÿ<ÿ=ÿ>ÿ?ÿ¾$ ¾$!¾$"¾$#¾$$¾$%¾$&¾$'¾$(¾$)¾$*¾$+¾$,¾$-¾$.¾$/¾$0¾$1¾$2¾$3¾$4¾$5¾$6¾$7¾$8¾$9¾$:¾$;¾$<¾$=¾$>¾$?@ÿAÿBÿCÿDÿEÿFÿGÿHÿIÿJÿKÿLÿMÿNÿOÿPÿQÿRÿSÿTÿUÿVÿWÿXÿYÿZÿ[ÿ\ÿ]ÿ^ÿ_ÿ¾$@¾$A¾$B¾$C¾$D¾$E¾$F¾$G¾$H¾$I¾$J¾$K¾$L¾$M¾$N¾$O¾$P¾$Q¾$R¾$S¾$T¾$U¾$V¾$W¾$X¾$Y¾$Z¾$[¾$\¾$]¾$^¾$_`ÿaÿbÿcÿdÿeÿfÿgÿhÿiÿjÿkÿlÿmÿnÿoÿpÿqÿrÿsÿtÿuÿvÿwÿxÿyÿzÿ{ÿ|ÿ}ÿ~ÿÿ¾$`¾$a¾$b¾$c¾$d¾$e¾$f¾$g¾$h¾$i¾$j¾$k¾$l¾$m¾$n¾$o¾$p¾$q¾$r¾$s¾$t¾$u¾$v¾$w¾$x¾$y¾$z¾${¾$|¾$}¾$~¾$€ÿÿ‚ÿ¾$€¾$¾$‚ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿý  ý ý ý ý ý ý ý ý ý  ý !ý "ý #ý $ý %ý &ý  ý 'ý (ý )ý *ý (ý +ý ,ý  ,ý  ,ý  -ý  .ý  /ý 0ý 1ý 2ý ý 3ý 3ý 3ý 3ý 3ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } ‘} ” ÿÿÿÿý 4ý 5ý 6ý ý 'ý 'ý 7ý *ý 8ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner8@€—Bæã@@@€ôÖÕüwÌþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@WorkbookÿÿÿÿÏ0CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_sections.xls0000644000175000017500000004500012270520475026616 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ "þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿ!þÿÿÿ#þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8 ø@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…3 School Years… kTerms…]School Timetables…! Resources…y Persons…5(Courses…G+ Sections 1…Z- Sections_2…‰/ Sections_3…¸1 Sections_4…ç3 Sections_5ŒÁÁTëªð¢ðh,    3 ð¿ À@@ñ  ÷üIDTitleStartEnd 2006-2008 SchoolYear 2006-fall 2006 Fall 2007-fall 2007 Fall 2007-spring 2007 Spring 2008-spring 2008 SpringHolidaysWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School YearModel"SequentialDayIdBasedTimetableModel Day TemplatesDay 3 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30Day 2Day 1Day 6Day 5Day 4DaysPeriodsHomeroom periodsABCDEFType projector00Resource Projector 00 projector01 Projector 01 projector02 Projector 02room00LocationRoom 00room01Room 01room02Room 02 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenshipmanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUS student001Peg Jorgensenmale0002 student002ShermSullivan0003 student003PiotrCooper0004 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq Descriptionart_aArt Aart_bArt Bart_cArt Cart_dArt DTerm 2006-2009unknown Section Title Art A (0)art_a_2006-fall_teacher010_000CoursesStudents student238 Instructors teacher009Day Period ID Location IDDay 10room60Zÿ ú cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ½Æ`cý ý ý  ½zfÊhý ý  ý  ½cBeý ý  ý  ½Îhký ½²aÂa½’b¢b½ ®b¾b½ bgrg½ BhRh½ ^hnh½ d*d½6d6d½’i¢i½®i®iý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý  ý !ý "ý #ý $ý %ý &ý  ý !ý "ý #ý $ý %ý 'ý  ý !ý "ý #ý $ý %ý (ý  ý !ý "ý #ý $ý %ý )ý  ý !ý "ý #ý $ý %ý *ý  ý !ý "ý #ý $ý %ý +ý ,¾ ý -ý 'ý .ý /ý 0ý 1ý 2ý 3ý .ý &ý /ý 0ý 1ý 2ý 3ý .ý /ý ý 0ý 1ý 2ý 3ý .ý /ý 0ý *ý 1ý 2ý 3ý .ý /ý 0ý 1ý )ý 2ý 3ý .ý /ý 0ý 1ý 2ý (ý 3ý .ý /ý 0ý 1ý 2ý 3å  ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿý ý 4ý ý 5ý 6ý 7ý 8ý 6ý 9ý :ý 6ý ;ý <ý =ý >ý ?ý =ý @ý Aý =ý BìPðH@ðð0ð( ð ð>¶@CCCggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿÿ ÿý Cý Dý Eý Fý Gý Hý Iý Jý Ký Lý ý Mý Ný Oý Pý Qý Rý S¾ý Tý Uý V¾ ý W ý  Xý  Yý  Zý  [ý \ý ]ý ^ý _¾ ý ` ý  aý  Yý  Zý  [ý \ý bý cý d¾ ý ` ý  eý  Yý  Zý  [ý \ý fý gý h¾ ý W ý  iý  Yý  Zý  [ý \ý jý ký l¾ý mý ný o¾ý pý qý r¾ý s ý t ý u¾ ìPðHPðð0ð( ð ð>¶@555ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿý ý ý ý vý ý wý xý ý yý zý ý {ý |ý ý }ý ~ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } ” ÿý ý ìPðHpðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿý ý ý ý ìPðH€ð ð0ð( ð ð >¶@  ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿý ý €ý ý ìPðHð$ð0ð( ð ð$>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿý ý ý ý ìPðH ð(ð0ð( ð ð(>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” ÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ‚ý ƒý ý „ý vý …ý wý † ý f ý ‡ ý b ý ˆý pý ‰ý mý ý ý Šý ‹ý Œ½ý ý .ý Žý ý ý *ý .ý Aå ìPðH°ð,ð0ð( ð ð,>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner4@€ÕÓó@@@€zX£ÌþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF @Workbookÿÿÿÿ¼9CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_terms.xls0000644000175000017500000001700012270520475026120 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿ þÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ  !"#$%&'()*+,-./0123456789:;<=þÿÿÿ?þÿÿÿþÿÿÿBCDþÿÿÿFþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8¯@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`… School Years… 6TermsŒÁÁTëbðZð 3 ð¿ À@@ñ  ÷ü6IDTitleStartEnd 2006-2008 SchoolYear 2006-fall 2006 Fall2006 2006-Fall 2007-fall 2007 Fall 2007-spring 2007 SpringHolidaysnot dateWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXÿ Ú cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿý ý ý ý ý ý ¾~ Zý ý ½zfcý ý ý ½zfcý ý ý ½~fzfý ý ý ½Â`Êhý ý ý  ½zfký ý ý ½Æ`cý ý ý ½Ê`cý ý  ý  ½ Ê`cý ý  ý  ½ Æ`cý ý  ý  ½ cBeý ý ~ Âa~ ’bý ½Âb¾b½bgrgý ý ý ý ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner21@°ß¢2@@@ {Et ËþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀFÀWorkbookÿÿÿÿ^CompObjÿÿÿÿÿÿÿÿ>IOle ÿÿÿÿÿÿÿÿÿÿÿÿ@SummaryInformation(ÿÿÿÿÿÿÿÿAÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿEtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/simple_sections.xls0000644000175000017500000004400012270520475026613 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ !þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿ þÿÿÿ"þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8V@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…l School Years… ž Terms…School Timetables…>Persons…~!Courses….$Sections…ß(SectionEnrollment…D/SectionTimetablesŒÁÁTë’ðŠðP 3 ð¿ À@@ñ  ÷ü¢TkIDTitleStartEnd 2011-2012 SchoolYear 2011-fall 2011 Fall 2012-spring 2012 SpringWeekendsMondayTuesday WednesdayThursdayFridaySaturdaySundayXSchool TimetableSchemasimple School YearModel school_days Time slotsDaysPeriodsDay 1ABCDEFhomeroomlessonDay 2Day 3Day 4Day 5Day 6Day 7 Time schedule 08:00-08:55 09:00-09:55 10:00-10:55 11:00-11:55 12:30-13:25 13:30-14:30 User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenshipmanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUS teacher000LuRussell Descriptionart_aArt A english_a English A history_aHistoryCoursesTerm Section ID Previous IDNext ID Instructors Resourcesart_a_2011-fallart_a_2012-spring Art A Fall Art A Springenglish_a_2011-fallEnglish A Fallhistory_a_2012-springHistory A SpringStudents Timetable ConsecutivenoDay Period IDÿ k§ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½^}‚ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿÿÿý ý ý ý ý ý ý ý ½^}6ý ý ý  ½:‚ý  ý  ý  ý  ý ý ý ý ¾ý ý ìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” $ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý ý ý ý ý ý ý ý ý ý ý ¾ý ý ý ý ý  ý !ý "ý #ý $ý $ý $ý $ý $ý %ý ý ý  ý !ý "ý ý #ý $ý $ý $ý $ý $ý &ý ý  ý !ý "ý ý ý #ý $ý $ý $ý $ý $ý 'ý  ý !ý "ý ý ý ý #ý $ý $ý $ý $ý $ý (ý !ý "ý ý ý ý  ý #ý $ý $ý $ý $ý $ý )ý "ý ý ý ý  ý !ý #ý $ý $ý $ý $ý $ý *ý "ý ý ý ý  ý !ý #ý $ý $ý $ý $ý $ý +ý ý ,ý -ý .ý /ý 0ý 1¾ý %ý ,ý -ý .ý /ý 0ý 1¾ý &ý ,ý -ý .ý /ý 0ý 1¾ý 'ý ,ý -ý .ý /ý 0ý 1¾ý (ý ,ý -ý .ý /ý 0ý 1 ÿ!ÿ#ÿ¾ ý !)ý !,ý !-ý !.ý !/ý !0ý !1ý #*ý #,ý #-ý #.ý #/ý #0ý #1å ìPðH0ð ð0ð( ð ð >¶@###ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿý 2ý 3ý 4ý 5ý 6ý 7ý 8ý 9ý :ý ;ý ý <ý =ý >ý ?ý @ý Aý B¾ý Cý Dý E¾ ý Fý  Cý  Gý  Hý  Iý  Jý Ký Lý Mý N¾ý  L¾ ìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿÿÿý ý ý ý Oý ý Pý Qý ý Rý Sý ý Tý UìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } }  } ” } a} ”   ÿ ÿ ÿ ÿ ÿý ý Vý Wý Xý Yý Zý ý Oý [ý \ý ý Pý ý ]ý ^ý _ý L ý ý Pý ý ^ý ]ý `ý L ý ý Rý ý aý bý L ý ý Tý ý cý dý L ìPðH`ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } C} ” !ÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý Wý Xý ý ý ]ý ý ý ^ý ý ý aý ý ý cý eý C      ÿ ìPðHpðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡"d,,333333é?333333é?U } ” } l} ” ÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý Wý Xý ý ý ]ý ý ý ^ý fý ý gý hý iý jý ý ý ý ý %ý ý %ý  ý &ý ý &ý ý 'ý ý 'ý  ý ý Wý Xý ý ý aý ý ý cý fý ý gý hý iý jý ý ý ý  ý %ý ý %ý !ý &ý ý &ý  ý 'ý ý 'ý !ìPðH€ð ð0ð( ð ð >¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner27@€z+?¬@@@G~/å¡ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ­6CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/section_teachers_students.xls0000644000175000017500000003700012270520475030670 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ » Ìá°Áâ\pCalc B°aÀ= œ¯¼=@ 8@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DD ¦MM/DD/YYà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠüÀ ঠÀ ठÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…÷ School Years… ) Terms…wPersons…Ó$Courses…$'Sections 2006_2008 2006_fallŒÁÁTëzðrð83 ð¿ À@@ñ  ÷üM·gIDTitleStartEnd 2006-2008 SchoolYear 2006-fall 2006 Fall User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPassword EthnicityLanguagePlace of birth Citizenship Date Demo Bool Demomanager SchoolTool Administrator student000FlorianHartfemale0001WhiteEnglish ArlingtonUSTrue student001Peg Jorgensenmale0002 student002ShermSullivan0003False student003PiotrCooper0004 student004Bradley0005 student005MiriamPetersen0006 student006KimmyEllis0007 student007EmilyTerry0008 student008RickHunt0009 student009MagnusParks0010 student010TedBarrett0011 teacher000LuRussell teacher001NathanAlvarez teacher002SophiaCastro teacher003ZofiaLeclercq School Year Descriptionart_aArt ATerm Section Title Art A (0)art_a_2006-fall_teacher010_000CoursesStudents Instructors Art A (1)art_a_2006-fall_teacher010_001ÿ g‡ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ½Æ`kìPðHðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý ý ý ý ý ý ý ý ½Æ`cìPðH ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” 7ÿÿÿÿÿÿÿÿÿ ÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿý ý  ý  ý  ý  ý  ý ý ý ý ý ý ý ý ý ý ý ý ý ý ¾~ r@ÿÿý ý ý ¾ ý  ý  ý   ý  !ý  "ý #ý $ý %ý &ý '¾ ý ( ý  )ý   ý  !ý  "ý #ÿÿý *ý +ý ,¾ ý ( ý  -ý   ý  !ý  "ý #ý .ý /ý 0ý 1¾ ý  ý  2ý   ý  !ý  "ý #ý 3ý 0ý 4¾ ý ( ý  5ý   ý  !ý  "ý #ý 6ý 7ý 8¾ ý ( ý  9ý   ý  !ý  "ý #ý :ý ;ý <¾ ý  ý  =ý   ý  !ý  "ý #ý > ý ? ý @¾ ý ( ý Aý  ý !ý "ý #ý B ý C ý D¾ ý  ý Eý  ý !ý "ý #ý F ý G ý H¾ ý ( ý Iý  ý !ý "ý #ý J ý K ý L¾ ý  ý Mý  ý !ý "ý #ý N ý O ý P¾ ý Qý Rý S¾ý Tý Uý V¾ý Wý Xý Y¾¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$¾$ ÿ!ÿ"ÿ#ÿ$ÿ%ÿ&ÿ'ÿ(ÿ)ÿ*ÿ+ÿ,ÿ-ÿ.ÿ/ÿ0ÿ1ÿ2ÿ3ÿ4ÿ5ÿ6ÿ¾$ ¾$!¾$"¾$#¾$$¾$%¾$&¾$'¾$(¾$)¾$*¾$+¾$,¾$-¾$.¾$/¾$0¾$1¾$2¾$3¾$4¾$5¾$6ìPðH0ð ð0ð( ð ð >¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” ÿÿý Zý ý ý [ý ý \ý ]ìPðH@ðð0ð( ð ð>¶@ggÿÿÿÿ » Ì dü©ñÒMbP?_€%ÿÁ*+‚# &C&"Times New Roman,Normal"&12&A(%&C&"Times New Roman,Normal"&12Page &Pƒ„&333333é?'333333é?(ƒ-Ø‚-Øð?)ƒ-Ø‚-Øð?¡" d,,333333é?333333é?U } ” ÿÿÿÿÿÿ ÿ ÿ ÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿý Zý ý ^ý ý _ý `ý ý aý [ý bý \ý c ý * ý 3 ý : ý dý Q¾ ý _ý eý ý fý [ý bý \ý cý Bý Fý dý Wå2 ìPðHPðð0ð( ð ð>¶@ggÿÿÿÿ þÿÿÿþÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner13@=-á@@@î1ç ÍþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@Workbookÿÿÿÿ4-CompObjÿÿÿÿÿÿÿÿIOle ÿÿÿÿÿÿÿÿÿÿÿÿSummaryInformation(ÿÿÿÿÿÿÿÿÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿtÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/courses.txt0000644000175000017500000000225412270520475025114 0ustar menesismenesis00000000000000Test for Courses sheet ---------------------- Log in as manager: >>> manager = browsers.manager >>> manager.ui.login('manager', 'schooltool') Let's import a file containing the Courses sheet: >>> import os >>> dirname = os.path.abspath(os.path.dirname(__file__)) >>> filename = os.path.join(dirname, 'courses.xls') >>> manager.ui.import_xls(filename) There should be no errors so we should be back at the School tab view: >>> manager.url u'http://localhost/manage' We see that there are two courses as specified in the spreadsheet. >>> manager.query.link('School').click() >>> manager.query.link('Courses').click() >>> print manager.query_all.css('.data a').text Art A Art B The first one has no optional cells filled in. >>> manager.query.link('Art A').click() >>> print manager.query_all.css('.viewspace .widget span').text art_a Art A The second one has all optional cells filled in. >>> manager.query.link('Done').click() >>> manager.query.link('Art B').click() >>> print manager.query_all.css('.viewspace .widget span').text art_b Art B Art B Desc local_artb state_artb 3.5 schooltool-2.6.3/src/schooltool/export/stests/errant_persons.xls0000644000175000017500000001500012270520475026455 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿ þÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ  !"#$%&'()*+þÿÿÿ-þÿÿÿþÿÿÿ012þÿÿÿ4þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8ø@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL ¥MM/DD/YY¦"TRUE";"TRUE";"FALSE"à¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ठøÀ ॠÀ ঠÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`…LPersonsŒÁÁTëZðRð3 ð¿ À@@ñ  ÷ü;  User NamePrefix First Name Middle Name Last NameSuffixPreferred Name Birth DateGenderPasswordID EthnicityLanguagePlace of birth Citizenship Required Text Required Date Required Bool student000textgrétaGréta Olafsdóttir IcelandicOneWaytrueÿ î cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ” }  } ” ÿÿÿÿÿý ý ý ý ý ý ý ý ý ý  ý  ý  ý  ý  ý ý ý ý ý ~ ~ ½Bý ~ ~ ý ý ý ý ý ý ý  ý ~ ‚y ~ ý ý ý ~ ‚yý ìPðHðð0ð( ð ð>¶ @ggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner21@€ÝÆp\@@@€EÓ†ÌþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@ Workbookÿÿÿÿå CompObjÿÿÿÿÿÿÿÿ,IOle ÿÿÿÿÿÿÿÿÿÿÿÿ.SummaryInformation(ÿÿÿÿÿÿÿÿ/ÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ3tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/stests/errant_years.xls0000644000175000017500000001400012270520475026106 0ustar menesismenesis00000000000000ÐÏࡱá;þÿ  þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿþÿÿÿ þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿRoot Entryÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿ  !"#þÿÿÿ%þÿÿÿþÿÿÿ()*þÿÿÿ,þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ » Ìá°Áâ\pCalc B°aÀ=œ¯¼=@ 8X@"·Ú1ÈÿArial1ÈÿArial1ÈÿArial1ÈÿArial1Èÿ¼Arial ¤GENERAL¥ YYYY/MM/DDà¤õÿ À àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ àõÿ ôÀ ठÀ à+õÿ ðÀ à)õÿ ðÀ à,õÿ ðÀ à*õÿ ðÀ à õÿ ðÀ ठø ॠüÀ ठøÀ “€ÿ“€ÿ“€ÿ“€ÿ“€ÿ“€ÿ`… School YearsŒÁÁTëZðRð3 ð¿ À@@ñ  ÷ü8IDTitleStartEnd200620072005ÿ ¿ cc » Ì dü©ñÒMbP?_€%ÿÁ*+‚&C&P&C&Fƒ„&333333Ó?'333333Ó?(-Ø‚-Ø‚ã?)[°[°×?¡" dƒ,,š™™™™™¹?š™™™™™¹?U } ”  ÿÿÿÿÿÿÿÿ ÿý ý ý ý ý ý ¾ ý ý ½ªb¦bý ý ½ú\ªbý ý ½ªb^hý ý ½FWú\½bbbhný ý ½ú\ªb ìPðHðð0ð( ð ð>¶@ggÿÿÿÿ þÿ ÿÿÿÿÀFMicrosoft Excel 97-TabelleBiff8þÿà…ŸòùOh«‘+'³Ù0˜@H \ h t € Œéý Alan Elkner12@ˆ H@@@€£yu ËþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®\éýéýRoot EntryÿÿÿÿÿÿÿÿÀF@ WorkbookÿÿÿÿöCompObjÿÿÿÿÿÿÿÿ$IOle ÿÿÿÿÿÿÿÿÿÿÿÿ&SummaryInformation(ÿÿÿÿÿÿÿÿ'ÈDocumentSummaryInformation8ÿÿÿÿÿÿÿÿÿÿÿÿ+tÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿschooltool-2.6.3/src/schooltool/export/templates/0000755000175000017500000000000012322062007023324 5ustar menesismenesis00000000000000schooltool-2.6.3/src/schooltool/export/templates/f_import_progress.pt0000644000175000017500000000444312270520475027453 0ustar menesismenesis00000000000000

Import scheduled.

Importing

Committing to database.

Finished importing.

Download

Server Error

Additional Info

schooltool-2.6.3/src/schooltool/export/templates/f_import.pt0000644000175000017500000000406312270520475025525 0ustar menesismenesis00000000000000