commit d0d1fc2be18c4cc289278c66efa373561342ac09 Author: Antonio Cañas Vargas Date: Mon Dec 1 23:55:08 2014 +0100 Version 14.30.1 diff --git a/.cproject b/.cproject new file mode 100644 index 00000000..b9fd4bf7 --- /dev/null +++ b/.cproject @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 00000000..e02ad1cb --- /dev/null +++ b/.project @@ -0,0 +1,26 @@ + + + swad-core + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml new file mode 100644 index 00000000..97e833c0 --- /dev/null +++ b/.settings/language.settings.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000..370ae2c6 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=ISO-8859-1 diff --git a/Makefile b/Makefile new file mode 100644 index 00000000..4b65c6ba --- /dev/null +++ b/Makefile @@ -0,0 +1,112 @@ +########################################################################## +# +# Makefile to compile SWAD core +# +############################################################################### +# # +# SWAD (Shared Workspace At a Distance), # +# is a web platform developed at the University of Granada (Spain), # +# and used to support university teaching. # +# # +# This file is part of SWAD core. # +# Copyright (C) 1999-2014 Antonio Cañas Vargas # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU Affero General Public License as # +# published by the Free Software Foundation, either version 3 of the # +# License, or (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU Affero General Public License for more details. # +# # +# You should have received a copy of the GNU Affero General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +OBJS = swad_action.o swad_announcement.o swad_assignment.o swad_attendance.o \ + swad_banner.o \ + swad_centre.o swad_chat.o swad_config.o swad_connected.o swad_country.o swad_course.o swad_cryptography.o \ + swad_database.o swad_date.o swad_degree.o swad_department.o \ + swad_exam.o \ + swad_file.o swad_file_browser.o swad_forum.o \ + swad_global.o swad_group.o \ + swad_holiday.o \ + swad_icon.o swad_ID.o swad_import.o swad_indicator.o swad_info.o swad_institution.o \ + swad_layout.o swad_link.o \ + swad_mail.o swad_main.o swad_mark.o swad_message.o \ + swad_network.o swad_nickname.o swad_notice.o swad_notification.o \ + swad_pagination.o swad_parameter.o swad_password.o swad_photo.o swad_place.o swad_plugin.o swad_preference.o \ + swad_QR.o \ + swad_record.o swad_RSS.o \ + swad_scope.o swad_search.o swad_session.o swad_setup.o swad_statistic.o swad_string.o swad_survey.o swad_syllabus.o \ + swad_test.o swad_test_import.o swad_theme.o swad_timetable.o \ + swad_user.o \ + swad_web_service.o \ + swad_xml.o \ + swad_zip.o +SOAPOBJS = soap/soapC.o soap/soapServer.o +SHAOBJS = sha2/sha2.o +CC = gcc + +# LIBS when using MySQL: +#LIBS = -lmysqlclient -lz -L/usr/lib64/mysql -lm -lgsoap + +# LIBS when using MariaDB (also valid with MySQL): +LIBS = -lssl -lcrypto -lpthread -lrt -lmysqlclient -lz -L/usr/lib64/mysql -lm -lgsoap + +CFLAGS = -Wall -Wextra -O2 -s + +all: swad_ca swad_de swad_en swad_es swad_fr swad_gn swad_it swad_pl swad_pt + +swad_ca: $(OBJS) $(SOAPOBJS) $(SHAOBJS) + $(CC) $(CFLAGS) -c -D L=0 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_de: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=1 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_en: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=2 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_es: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=3 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_fr: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=4 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_gn: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=5 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_it: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=6 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_pl: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=7 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +swad_pt: $(OBJS) $(SOAPOBJS) + $(CC) $(CFLAGS) -c -D L=8 swad_text.c + $(CC) $(CFLAGS) -o $@ $(OBJS) swad_text.o $(SOAPOBJS) $(SHAOBJS) $(LIBS) + chmod a+x $@ + +.PHONY: clean + +clean: + rm -f swad swad_ca swad_de swad_en swad_es swad_fr swad_gn swad_it swad_pl swad_pt swad_text.o $(OBJS) diff --git a/chat/chat.html b/chat/chat.html new file mode 100644 index 00000000..f3c4f967 --- /dev/null +++ b/chat/chat.html @@ -0,0 +1,31 @@ + + + +SWAD Chat + + + + + +SWAD
+ + + + diff --git a/chat/swad_chat.jar b/chat/swad_chat.jar new file mode 100644 index 00000000..0c211acd Binary files /dev/null and b/chat/swad_chat.jar differ diff --git a/css/swad_desktop.css b/css/swad_desktop.css new file mode 100644 index 00000000..536b3aaa --- /dev/null +++ b/css/swad_desktop.css @@ -0,0 +1,846 @@ +/* swad_desktop.css:style-sheet for desktop layout of SWAD */ + +/* + SWAD (Shared Workspace At a Distance), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + Copyright (C) 1999-2012 Antonio Cañas-Vargas + & Daniel J. Calandria-Hernández, + University of Granada (SPAIN) (acanas@ugr.es) + + This program is free software:you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +A:link {text-decoration:none;} +A:visited {text-decoration:none;} +A:active {text-decoration:none;} +A:hover {text-decoration:underline;} +body {margin:0px;} +input {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; font-size:10pt;} +select {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; font-size:10pt;} +textarea {font-size:8pt;} +table {border-width:0px; border-style:none;} +img {border-width:0px; border-style:none;} +form {margin:0px; display:inline;} +p {margin:0px;} +hr.WHITE_SEPARA {height:0px; border-top:0px; border-bottom:#707070 dotted 1px;} +hr.GREY_SEPARA {height:0px; border-top:0px; border-bottom:#707070 dotted 1px;} +hr.BLUE_SEPARA {height:0px; border-top:0px; border-bottom:#4D88A1 dotted 1px;} +hr.YELLOW_SEPARA {height:0px; border-top:0px; border-bottom:#BD4815 dotted 1px;} + +/****************** Title of current action in main block ********************/ +#action_title + { + width:50%; + min-height:54px; + clear:both; + margin:0 auto; + background-repeat:no-repeat; + background-position:10px 0px; + padding:10px 10px 10px 84px; + overflow:hidden; + } + +.WHITE_TITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:16pt;} +.GREY_TITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:16pt;} +.BLUE_TITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt;} +.YELLOW_TITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BD4815; font-size:16pt;} + +.WHITE_SUBTITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:10pt;} +.GREY_SUBTITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:10pt;} +.BLUE_SUBTITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.YELLOW_SUBTITLE_ACTION {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BD4815; font-size:10pt;} + +/************************* Users connected globally **************************/ +.CONNECTED + { + margin:0; + border-style:solid; + border-width:1px; + border-color:#80C040; + padding:4px; + border-radius:4px; + -moz-border-radius:4px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#398000; + overflow:hidden; + } + +/*************************** Most frequent actions ***************************/ +#MFU_actions + { + width:110px; + margin:0; + border-style:solid; + border-width:1px; + border-color:#8CBCCE; + padding:4px; + border-radius:4px; + -moz-border-radius:4px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#4D88A1; + overflow:hidden; + } +.MFU_ACT + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#4D88A1; + font-size:9pt; + } + +/*********************************** Month ***********************************/ +.MONTH_CONTAINER + { + width:110px; + margin:0; + padding:4px; + border-style:solid; + border-width:1px; + border-color:#8CBCCE; + border-radius:4px; + -moz-border-radius:4px; + text-align:center; + overflow:hidden; + } +.MONTH_TABLE_DAYS + { + width:110px; + margin-top:2px; + padding-top:2px; + border-style:solid; + border-width:1px 0 0 0; + border-color:#DDECF1; + } +.MONTH {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:8pt; white-space:nowrap;} +.DAY_WRK_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:8pt;} +.DAY_NO_WRK_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:8pt;} +.DAY_WRK {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#202020; font-size:8pt;} +.DAY_NO_WORK {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#C04080; font-size:8pt;} +.DAY_HLD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:8pt;} +.DAY_WRK_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:8pt;} +.DAY_NO_WORK_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE0FF; font-size:8pt;} +.DAY_HLD_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE0E0; font-size:8pt;} +.DAY {border:solid 1px; border-color:#FFFFFF;} +.TODAY {border:solid 1px; border-color:#50B800;} +.DAY_EVENT {border:solid 1px; border-color:#FFFFFF; background-color:#FFF080;} +.TODAY_EVENT {border:solid 1px; border-color:#50B800; background-color:#FFF080;} + +/********************************** Notice ***********************************/ + +.NOTICE_CONTAINER + { + margin:8px 0 8px 0; + padding:8px; + background-color:#FAF098; + + background-image:linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-o-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-moz-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-webkit-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-ms-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, #FAF098), + color-stop(0.85, #FEED95), + color-stop(1, #EED86C) + ); + + -moz-box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + -webkit-box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + + text-align:left; + overflow:hidden; + } +.NOTICE_DATE + { + float:right; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#404040; + text-align:right; + overflow:hidden; + display:inline-block; + } +.NOTICE_SUBJECT + { + margin:10px auto; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:12pt; + font-weight:bold; + color:#404040; + text-align:center; + overflow:hidden; + } +.NOTICE_TEXT + { + clear:both; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#000080; + overflow:hidden; + } +.NOTICE_AUTHOR + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#404040; + text-align:right; + overflow:hidden; + } + +/**************************** Institutional links ****************************/ +#institutional_links + { + width:110px; + margin:0; + border-style:solid; + border-width:1px; + border-color:#8CBCCE; + padding:4px; + border-radius:4px; + -moz-border-radius:4px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#4D88A1; + overflow:hidden; + } +.INS_LNK + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#4D88A1; + } + +/***************************** Tabs and main zone ****************************/ +#tabs_container + { + width:540px; /* 90 px * 6 visible tabs */ + height:56px; + margin:0 auto; + } +.TAB_OFF + { + float:left; + width:86px;height:61px; + margin:1px 1px 0px 1px; + padding:0px 1px 0 1px; + border-radius:6px 6px 0 0; + -moz-border-radius:6px 6px 0 0; + box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -moz-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -webkit-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + text-align:center; + overflow:hidden; + display:inline-block; + } +.TAB_ON + { + float:left; + width:88px;height:62px; + margin:0; + padding:1px 1px 0 1px; + border-radius:6px 6px 0 0; + -moz-border-radius:6px 6px 0 0; + box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -moz-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -webkit-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + text-align:center; + overflow:hidden; + display:inline-block; + } +.WHITE_TAB_OFF + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#707070; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.GREY_TAB_OFF + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#505050; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.BLUE_TAB_OFF + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#365E6E; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.YELLOW_TAB_OFF + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#7C4D2A; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.WHITE_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#4D88A1; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.GREY_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#606060; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.BLUE_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#4D88A1; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +.YELLOW_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#BD4815; + font-size:7.5pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + overflow:hidden; + } +#CENTRAL_ZONE + { + min-width:740px; + width:100%; + margin:-7px 0 0 0; + padding:10px 0; + border-radius:6px; + -moz-border-radius:6px; + box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -moz-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -webkit-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + text-align:center; + overflow:hidden; + vertical-align:top; + valign:top; + position:relative; + display:inline-block; + } + +/*********************************** Alerts **********************************/ +.ALERT + { + margin:4px auto; + background-color:#FFFDB9; + background-repeat:no-repeat; + background-position:10px 10px; + padding:10px 10px 10px 36px; + border-radius:4px; + -moz-border-radius:4px; + box-shadow:1px 1px 1px #CCC; + -moz-box-shadow:1px 1px 1px #CCC; + -webkit-box-shadow:1px 1px 1px #CCC; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#632921; + text-align:justify; + overflow:hidden; + display:inline-block; + } + +/*********************************** Icons ***********************************/ +.ICON16x16 {width:16px; height:16px; vertical-align:middle;} +.ICON32x32 {width:32px; height:32px; vertical-align:middle;} +.ICON64x64 {width:64px; height:64px; vertical-align:middle;} + +/********************************* Frame 10 **********************************/ +.FRAME10 + { + margin:4px 0; + padding:10px 0; + background-color:white; + border-radius:4px; + -moz-border-radius:4px; + box-shadow:1px 1px 1px #CCC; + -moz-box-shadow:1px 1px 1px #CCC; + -webkit-box-shadow:1px 1px 1px #CCC; + text-align:center; + overflow:hidden; + display:inline-block; + } +.FRAME10_SHADOW + { + margin:4px 0 14px 0; + padding:10px 0; + background-color:rgba(255,255,255,0.95); + border-width:1px; + border-style:solid; + border-color:#C0C0C0; + border-radius:4px; + -moz-border-radius:4px; + box-shadow:2px 4px 12px #888; + -moz-box-shadow:2px 4px 12px #888; + -webkit-box-shadow:2px 4px 12px #888; + text-align:center; + overflow:hidden; + display:inline-block; + } +.TABLE10 + { + padding:0 10px; + width:100%; + } +.TIT_TBL_10 + { + margin:0 10px 10px 10px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#808080; + font-size:16pt; + font-weight:bold; + } + +/*********************************** Title ***********************************/ +.TIT + { + margin:11px auto 0 auto; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:11pt; + font-weight:bold; + color:#94745C; + text-align:center; + } + +/********** Title of country, institution, centre, degree, course ************/ +.TITLE_LOCATION + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:20pt; + font-weight:bold; + color:#808080; + } + +/******************************* Map of country ******************************/ +.COUNTRY_MAP_SMALL + { + width:50px; height:50px; + } +.COUNTRY_MAP_SHOW + { + width:250px; height:250px; + margin:8px; + } +.COUNTRY_MAP_PRINT + { + width:500px; height:500px; + margin:10px; + } + +/****************************** Photo of centre ******************************/ +.CENTRE_PHOTO_SHOW + { + width:384px; height:256px; + padding:5px; margin:8px; + border:solid 1px #EEE; + } +a:hover img.CENTRE_PHOTO_SHOW + { + border:solid 1px #CCC; + -moz-box-shadow:1px 1px 5px #999; + -webkit-box-shadow:1px 1px 5px #999; + box-shadow:1px 1px 5px #999; + } +.CENTRE_PHOTO_PRINT + { + width:576px; height:384px; + padding:8px; margin:10px; + border:solid 1px #EEE; + -moz-box-shadow:1px 1px 5px #999; + -webkit-box-shadow:1px 1px 5px #999; + box-shadow:1px 1px 5px #999; + } + +/**************** Attribution (author and license) of images *****************/ +.ATTRIBUTION + { + font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; + color:#A0A0A0; + font-size:7pt; + max-width:400px; + } + +/******************************* User's photo ********************************/ +.F12x16 {width: 12px; height: 16px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F15x20 {width: 15px; height: 20px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F18x24 {width: 18px; height: 24px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F24x32 {width: 24px; height: 32px; vertical-align:middle; border-radius:3px; -moz-border-radius:3px;} +.F36x48 {width: 36px; height: 48px; vertical-align:middle; border-radius:4px; -moz-border-radius:4px;} +.F75x100 {width: 75px; height:100px; vertical-align:middle; border-radius:5px; -moz-border-radius:5px;} +.F90x120 {width: 90px; height:120px; vertical-align:middle; border-radius:6px; -moz-border-radius:6px;} +.F120x160 {width:120px; height:160px; vertical-align:middle; border-radius:7px; -moz-border-radius:7px;} +.F150x200 {width:150px; height:200px; vertical-align:middle; border-radius:8px; -moz-border-radius:8px;} +.IMG_USR + { + width:150px; + height:200px; + border-radius:5px; + -moz-border-radius:5px; + } +.ZOOM + { + position:absolute; + z-index:1000; + left:-162px; + top:-300px; + padding:5px; + background-color:rgba(255,255,255,0.8); + border-width:1px; + border-style:solid; + border-color:#C0C0C0; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:2px 4px 12px #888; + -moz-box-shadow:2px 4px 12px #888; + -webkit-box-shadow:2px 4px 12px #888; + } +.ZOOM_TXT + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#202020; + font-size:10pt; + } + +.NO_BR {white-space:nowrap;} + +.BG_MSG_BLUE {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x;} +.BG_MSG_GREEN {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x;} + +.WHITE_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:12pt; font-weight:bold; white-space:nowrap;} +.GREY_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFB42E; font-size:12pt; font-weight:bold; white-space:nowrap;} +.BLUE_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE880; font-size:12pt; font-weight:bold; white-space:nowrap;} +.YELLOW_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFC040; font-size:12pt; font-weight:bold; white-space:nowrap;} + +.WHITE_COURSE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:20pt; white-space:nowrap;} +.GREY_COURSE {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#F7F6F5; font-size:20pt; white-space:nowrap;} +.BLUE_COURSE {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#FFFFFF; font-size:20pt; white-space:nowrap;} +.YELLOW_COURSE {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#FFFFFF; font-size:20pt; white-space:nowrap;} + +.WHITE_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:10pt; white-space:nowrap;} +.GREY_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:10pt; white-space:nowrap;} +.BLUE_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFFFFF; font-size:10pt; white-space:nowrap;} +.YELLOW_HEAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:10pt; white-space:nowrap;} + +.WHITE_CUR_TIME {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#808080; font-size:12pt; font-weight:bold;} +.GREY_CUR_TIME {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:12pt; font-weight:bold;} +.BLUE_CUR_TIME {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BAD2DA; font-size:12pt; font-weight:bold;} +.YELLOW_CUR_TIME {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:12pt; font-weight:bold;} + +.WHITE_NOTIF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:10pt; white-space:nowrap;} +.GREY_NOTIF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:10pt; white-space:nowrap;} +.BLUE_NOTIF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFFFFF; font-size:10pt; white-space:nowrap;} +.YELLOW_NOTIF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:10pt; white-space:nowrap;} + +.WHITE_USR {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:12pt; font-weight:bold; white-space:nowrap;} +.GREY_USR {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:12pt; font-weight:bold; white-space:nowrap;} +.BLUE_USR {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFFFFF; font-size:12pt; font-weight:bold; white-space:nowrap;} +.YELLOW_USR {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:12pt; font-weight:bold; white-space:nowrap;} + +.WHITE_CONNECTED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.GREY_CONNECTED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.BLUE_CONNECTED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.YELLOW_CONNECTED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} + +.WHITE_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#505050; font-size:14pt;} +.GREY_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#505050; font-size:14pt;} +.BLUE_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:14pt;} +.YELLOW_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BD4815; font-size:14pt;} + +/**************************** Icon highlighting ******************************/ +.ICON_HIDDEN + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=20); + -moz-opacity:0.2; + opacity:0.2; + } +.ICON_HIGHLIGHT + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80); + -moz-opacity:0.8; + opacity:0.8; + } +.ICON_HIGHLIGHT:hover + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100); + -moz-opacity:1; + opacity:1; + } + +/******************************** Menu options *******************************/ +#menu + { + list-style-type:none; + padding:0px; + margin:0px; + } +.MENU_OPTION + { + height:32px; + clear:both; + margin:0 auto; + text-align:left; + vertical-align:middle; + background-repeat:no-repeat; + background-position:2px 2px; + padding:2px 2px 2px 40px; + overflow:hidden; + } +.MENU_TEXT + { + height:32px; + + /* Internet Explorer 10 */ + display:-ms-flexbox; + -ms-flex-align:center; + + /* Firefox */ + display:-moz-box; + -moz-box-align:center; + + /* Safari, Opera, and Chrome */ + display:-webkit-box; + -webkit-box-align:center; + + /* W3C */ + display:box; + box-align:center; + } +.WHITE_MENU_OFF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:11pt; font-weight:bold; line-height:110%;} +.GREY_MENU_OFF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:11pt; font-weight:bold; line-height:110%;} +.BLUE_MENU_OFF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold; line-height:110%;} +.YELLOW_MENU_OFF {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BD4815; font-size:11pt; font-weight:bold; line-height:110%;} + +.WHITE_MENU_ON {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold; line-height:110%; text-decoration:underline;} +.GREY_MENU_ON {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:11pt; font-weight:bold; line-height:110%; text-decoration:underline;} +.BLUE_MENU_ON {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold; line-height:110%; text-decoration:underline;} +.YELLOW_MENU_ON {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BD4815; font-size:11pt; font-weight:bold; line-height:110%; text-decoration:underline;} + +.WHITE_MENU_ON:link {text-decoration:underline;} +.GREY_MENU_ON:link {text-decoration:underline;} +.BLUE_MENU_ON:link {text-decoration:underline;} +.YELLOW_MENU_ON:link {text-decoration:underline;} + +.WHITE_FORMUL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt;} +.GREY_FORMUL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt;} +.BLUE_FORMUL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt;} +.YELLOW_FORMUL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#7C4D2A; font-size:11pt;} + +.WHITE_FORMUL_NB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; white-space:nowrap;} +.GREY_FORMUL_NB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; white-space:nowrap;} +.BLUE_FORMUL_NB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; white-space:nowrap;} +.YELLOW_FORMUL_NB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#7C4D2A; font-size:11pt; white-space:nowrap;} + +.WHITE_FORMULB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold;} +.GREY_FORMULB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold;} +.BLUE_FORMULB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:11pt; font-weight:bold;} +.YELLOW_FORMULB {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#7C4D2A; font-size:11pt; font-weight:bold;} + +.FILENAME {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt; font-weight:bold;} + +.BROWSER_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#94745C; font-size:11pt; font-weight:bold;} +.BROWSER_TITLE_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#D5C6BB; font-size:11pt; font-weight:bold;} +.BROWSER_SUBTITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#94745C; font-size:10pt;} + +.T1 {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:12pt;} +.T2 {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:11pt;} +.T3 {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:10pt;} + +.LST {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:9pt; white-space:nowrap;} +.LST_HID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-size:9pt; white-space:nowrap;} +.LST_REC {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:9pt; white-space:nowrap;} +.LST_REC_HID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:9pt; white-space:nowrap;} +.LST_EDIT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_HID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_REC {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_REC_HID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} + +.USR_ID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt; font-weight:bold;} + +.DAT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:10pt;} +.DAT_GREEN {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:10pt;} +.DAT_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-size:10pt;} +.DAT_NOBR {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:10pt; white-space:nowrap;} +.DAT_N {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:10pt;} +.DAT_NOBR_N {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:10pt; white-space:nowrap;} + +.DAT_SMALL {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#707070; font-size:10pt;} +.DAT_SMALL_LIGHT {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#A0A0A0; font-size:10pt;} +.DAT_SMALL_NOBR {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#707070; font-size:10pt; white-space:nowrap;} +.DAT_SMALL_N {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#404040; font-size:10pt;} +.DAT_SMALL_NOBR_N {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#404040; font-size:10pt; white-space:nowrap;} +.DAT_SMALL_RED {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#FF0000; font-size:10pt;} +.DAT_SMALL_GREEN {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#008000; font-size:10pt;} +.DAT_SMALL_BLUE {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#0080FF; font-size:10pt;} +.DAT_SMALL_YELLOW {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#C0C000; font-size:10pt;} + +.HEAD_REC {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#808080; font-size:10pt;} +.HEAD_REC_SMALL {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#808080; font-size:9pt;} +.HEAD_REC_BIG {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#808080; font-size:16pt; font-weight:bold;} +.DAT_REC {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:9pt; line-height:110%;} +.DAT_REC_SMALL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#808080; font-size:9pt; line-height:110%;} +.DAT_REC_SMALL_BOLD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#202020; font-size:9pt; line-height:110%;} +.MSJ_AVISO {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#632921; font-size:10pt;} +.TIT_TBL {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.TIT_CLASSPHOTO {font-family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#606060; font-size:11pt;} +.CLASSPHOTO {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:8pt; line-height:100%; letter-spacing:0px; white-space:nowrap;} + +.GRP_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:12pt; font-weight:bold;} + +.ASG_TITLE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:12pt; font-weight:bold;} +.ASG_TITLE_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:12pt; font-weight:bold;} +.ASG_GRP {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.ASG_GRP_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:10pt;} +.DATE_GREEN {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:11pt;} +.DATE_GREEN_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:11pt;} +.DATE_RED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:11pt;} +.DATE_RED_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#F98A8A; font-size:11pt;} + +.ASG_LST_DATE_GREEN {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:9pt; white-space:nowrap;} +.ASG_LST_DATE_RED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:9pt; white-space:nowrap;} + +.STATUS_GREEN {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:10pt;} +.STATUS_GREEN_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:10pt;} +.STATUS_RED {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:10pt;} +.STATUS_RED_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#F98A8A; font-size:10pt;} + +.ANS {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:12pt; font-weight:bold;} +.ANS_OK {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:12pt; font-weight:bold;} +.ANS_BAD {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:12pt; font-weight:bold;} +.TST_TIT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt;} +.TEST {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:10pt;} +.TEST_EXA {font-family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:10pt;} +.TEST_EXA_LIGHT {font-family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#A0A0A0; font-size:10pt;} +.TEST_EDI {font-family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:10pt;} +.TEST_EDI_LIGHT {font-family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#A0A0A0; font-size:10pt;} + +.HOR {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#345C6C; font-size:8pt; line-height:110%; letter-spacing:0px;} +.FREE0 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;} +.FREE1 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;} +.FREE2 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;} +.FREE3 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;} +.THEO {background-color:#C0DAE4; border:solid 2px; border-color:#C9E3ED #B5CFD9 #B5CFD9 #C9E3ED;} +.PRAC {background-color:#DBE5E9; border:solid 2px; border-color:#E4EEF2 #D0DADE #D0DADE #E4EEF2;} +.TUTO {background-color:#D6E9C3; border:solid 2px; border-color:#DFEEE0 #CAE3B1 #CAE3B1 #DFEEE0;} + +.USR_LIST_TYPE_OFF {border:solid 1px; border-color:#FFFFFF;} +.USR_LIST_TYPE_ON {border:solid 1px; border-color:#50B800;} + +.LAYOUT_OFF {border:solid; border-width:0px;} +.LAYOUT_ON {border:solid; border-width:1px; border-color:#80E000;} + +.LOG {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#606060; font-size:9pt;} +.LOG_R {font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#FF0000; font-size:9pt;} + +.MSG_TXT {font-family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:10pt;} + +.MSG_TIT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.MSG_TIT_NEW {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt; font-weight:bold;} +.MSG_TIT_REM {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:10pt;} +.MSG_TIT_BG {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.MSG_TIT_BG_NEW {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt; font-weight:bold;} +.MSG_TIT_BG_REM {background-image:url('/swad/icon/lightblue1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:10pt;} + +.MSG_AUT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_AUT_LIGHT {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:9pt;} +.MSG_AUT_NEW {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.MSG_AUT_BG {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_AUT_BG_NEW {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.MSG_AUT_BG_REM {background-image:url('/swad/icon/lightblue1x36.gif'); background-repeat:repeat-x; font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:9pt;} +.MSG_DATE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_DATE_NEW {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.BT {width:16px; text-align:left; vertical-align:top;} +.BT0 {width:16px; text-align:left; vertical-align:top; background-color:#F4F2EA;} +.BT1 {width:16px; text-align:left; vertical-align:top; background-color:#FBFAF7;} +.BM {width:16px; text-align:left; vertical-align:middle;} +.BM_SEL {width:16px; text-align:left; vertical-align:middle; background-color:#C0FF40;} +.BM0 {width:16px; text-align:left; vertical-align:middle; background-color:#F4F2EA;} +.BM1 {width:16px; text-align:left; vertical-align:middle; background-color:#FBFAF7;} + +.CONV_TIT {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-weight:bold; font-size:14pt;} +.CONV_TIT_IMPR {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-weight:bold; font-size:14pt;} +.CONV_NEG {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-weight:bold; font-size:11pt; white-space:nowrap;} +.CONV_NEG_IMPR {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-weight:bold; font-size:11pt; white-space:nowrap;} +.CONV {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-size:11pt;} +.CONV_IMPR {font-family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-size:11pt;} + +.CON {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B8D070; font-size:9pt; line-height:110%; white-space:nowrap;} +.CON_CRS {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:9pt; line-height:110%; white-space:nowrap;} + +.FOOT_LIST_CONTAINER + { + position:relative; + float:left; + } +.FOOT_LIST_TITLE + { + color:#666; + font-family:Arial,DejaVu LGC Sans,Bitstream Vera Sans,sans-serif; + font-size:1em; + font-weight:bold; + white-space:nowrap; + } +.FOOT_LIST + { + list-style-type:none; + margin:0; + padding:0; + border-width:0; + font-family:Arial,DejaVu LGC Sans,Bitstream Vera Sans,sans-serif; + font-size:0.9em; + white-space:nowrap; + line-height:140%; + } +.FOOT_LINK + { + color:#2C90C9; + } +.FOOT + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#A0A0A0; + font-size:8pt; + } diff --git a/css/swad_mobile.css b/css/swad_mobile.css new file mode 100644 index 00000000..531aa943 --- /dev/null +++ b/css/swad_mobile.css @@ -0,0 +1,644 @@ +/* swad_mobile.css:style-sheet for mobile layout of SWAD */ + +/* + SWAD (Shared Workspace At a Distance), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + Copyright (C) 1999-2012 Antonio Cañas-Vargas + & Daniel J. Calandria-Hernández, + University of Granada (SPAIN) (acanas@ugr.es) + + This program is free software:you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +A:link {text-decoration:none;} +A:visited {text-decoration:none;} +A:active {text-decoration:none;} +A:hover {text-decoration:underline;} +body {margin:0px;} +input {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; font-size:16pt;} +select {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; font-size:16pt;} +textarea {font-size:12pt;} +table {border-width:0px; border-style:none;} +img {border-width:0px; border-style:none;} +form {margin:0px; display:inline;} +p {margin:0px;} + +/************************* Users connected globally **************************/ +.CONNECTED + { + margin:0; + border-style:solid; + border-width:1px; + border-color:#398000; + padding:4px; + border-radius:4px; + -moz-border-radius:4px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#398000; + overflow:hidden; + } + +/*********************************** Month ***********************************/ +.MONTH_CONTAINER + { + width:110px; + margin:0; + padding:4px; + border-style:solid; + border-width:1px; + border-color:#8CBCCE; + border-radius:4px; + -moz-border-radius:4px; + text-align:center; + overflow:hidden; + } +.MONTH_TABLE_DAYS + { + width:110px; + margin-top:2px; + padding-top:2px; + border-style:solid; + border-width:1px 0 0 0; + border-color:#DDECF1; + } +.MONTH {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:8pt; white-space:nowrap;} +.DAY_WRK_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:8pt;} +.DAY_NO_WRK_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:8pt;} +.DAY_WRK {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#202020; font-size:8pt;} +.DAY_NO_WORK {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#C04080; font-size:8pt;} +.DAY_HLD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:8pt;} +.DAY_WRK_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:8pt;} +.DAY_NO_WORK_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE0FF; font-size:8pt;} +.DAY_HLD_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE0E0; font-size:8pt;} +.DAY {border:solid 1px; border-color:#FFFFFF;} +.TODAY {border:solid 1px; border-color:#50B800;} +.DAY_EVENT {border:solid 1px; border-color:#FFFFFF; background-color:#FFF080;} +.TODAY_EVENT {border:solid 1px; border-color:#50B800; background-color:#FFF080;} + +/********************************** Notice ***********************************/ + +.NOTICE_CONTAINER + { + margin:8px 0 8px 0; + padding:8px; + background-color:#FAF098; + + background-image:linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-o-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-moz-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-webkit-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-ms-linear-gradient(bottom, #FAF098 0%, #FEED95 85%, #EED86C 100%); + background-image:-webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, #FAF098), + color-stop(0.85, #FEED95), + color-stop(1, #EED86C) + ); + + -moz-box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + -webkit-box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + box-shadow:0px 6px 8px -4px rgba(125, 113, 0, 0.8); + + text-align:center; + overflow:hidden; + } +.NOTICE_DATE + { + float:right; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#404040; + overflow:hidden; + } +.NOTICE_SUBJECT + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:12pt; + font-weight:bold; + color:#404040; + text-align:center; + overflow:hidden; + display:inline-block; + } +.NOTICE_TEXT + { + clear:both; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:10pt; + color:#000080; + overflow:hidden; + } +.NOTICE_AUTHOR + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#404040; + font-size:10pt; + overflow:hidden; + } + +/**************************** Institutional links ****************************/ +#institutional_links + { + width:110px; + margin:0; + border-style:solid; + border-width:1px; + border-color:#4D88A1; + padding:4px; + border-radius:4px; + -moz-border-radius:4px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#4D88A1; + overflow:hidden; + } +.INS_LNK + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:9pt; + color:#4D88A1; + } + +/***************************** Tabs and main zone ****************************/ +#tabs_container + { + height:56px; + margin:0 auto; + } +.TAB_ON + { + height:62px; + margin:0; + padding:0 20px; + border-radius:8px 10px 0 0; + -moz-border-radius:8px 10px 0 0; + box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -moz-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -webkit-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + text-align:center; + vertical-align:middle; + overflow:hidden; + display:table-cell; + } +#CENTRAL_ZONE + { + min-width:740px; + width:100%; + margin:-6px 0 0 0; + padding:10px 0; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -moz-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + -webkit-box-shadow:inset -2px -2px 1px 0px rgba(50, 50, 50, 0.2); + text-align:center; + overflow:hidden; + display:inline-block; + } + +/********************************** Alerts ***********************************/ +.ALERT + { + margin:4px auto; + background-color:#FFFDB9; + background-repeat:no-repeat; + background-position:10px 10px; + padding:10px 10px 10px 36px; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:1px 1px 1px #CCC; + -moz-box-shadow:1px 1px 1px #CCC; + -webkit-box-shadow:1px 1px 1px #CCC; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:16pt; + color:#632921; + text-align:justify; + overflow:hidden; + display:inline-block; + } + +/*********************************** Icons ***********************************/ +.ICON16x16 {width:16px; height:16px; vertical-align:middle;} +.ICON32x32 {width:32px; height:32px; vertical-align:middle;} +.ICON64x64 {width:64px; height:64px; vertical-align:middle;} + +/********************************* Frame 10 **********************************/ +.FRAME10 + { + margin:4px 0; + padding:10px 0; + background-color:white; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:1px 1px 1px #CCC; + -moz-box-shadow:1px 1px 1px #CCC; + -webkit-box-shadow:1px 1px 1px #CCC; + text-align:center; + overflow:hidden; + display:inline-block; + } +.FRAME10_SHADOW + { + margin:4px 0 14px 0; + padding:10px 0; + background-color:rgba(255,255,255,0.95); + border-width:1px; + border-style:solid; + border-color:#C0C0C0; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:2px 4px 12px #888; + -moz-box-shadow:2px 4px 12px #888; + -webkit-box-shadow:2px 4px 12px #888; + text-align:center; + overflow:hidden; + display:inline-block; + } +.TABLE10 + { + padding:0 10px; + width:100%; + } +.TIT_TBL_10 + { + margin:0 10px 10px 10px; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#808080; + font-size:20pt; + font-weight:bold; + } + +/*********************************** Title ***********************************/ +.TIT { + margin:16px auto 0 auto; + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:16pt; + font-weight:bold; + color:#94745C; + text-align:center; + } + +/********** Title of country, institution, centre, degree, course ************/ +.TITLE_LOCATION + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + font-size:20pt; + font-weight:bold; + color:#808080; + } + +/******************************* Map of country ******************************/ +.COUNTRY_MAP_SMALL + { + width:50px; height:50px; + } +.COUNTRY_MAP_SHOW + { + width:250px; height:250px; + margin:8px; + } +.COUNTRY_MAP_PRINT + { + width:500px; height:500px; + margin:10px; + } + +/****************************** Photo of centre ******************************/ +.CENTRE_PHOTO_SHOW + { + width:384px; height:256px; + padding:5px; margin:8px; + border:solid 1px #EEE; + } +a:hover img.CENTRE_PHOTO_SHOW + { + border:solid 1px #CCC; + -moz-box-shadow:1px 1px 5px #999; + -webkit-box-shadow:1px 1px 5px #999; + box-shadow:1px 1px 5px #999; + } +.CENTRE_PHOTO_PRINT + { + width:576px; height:384px; + padding:8px; margin:10px; + border:solid 1px #EEE; + -moz-box-shadow:1px 1px 5px #999; + -webkit-box-shadow:1px 1px 5px #999; + box-shadow:1px 1px 5px #999; + } + +/**************** Attribution (author and license) of images *****************/ +.ATTRIBUTION + { + font-family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; + color:#A0A0A0; + font-size:7pt; + max-width:400px; + } + +/******************************* User's photo ********************************/ +.F12x16 {width: 12px; height: 16px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F15x20 {width: 15px; height: 20px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F18x24 {width: 18px; height: 24px; vertical-align:middle; border-radius:2px; -moz-border-radius:2px;} +.F24x32 {width: 24px; height: 32px; vertical-align:middle; border-radius:3px; -moz-border-radius:3px;} +.F36x48 {width: 36px; height: 48px; vertical-align:middle; border-radius:4px; -moz-border-radius:4px;} +.F75x100 {width: 75px; height:100px; vertical-align:middle; border-radius:5px; -moz-border-radius:5px;} +.F90x120 {width: 90px; height:120px; vertical-align:middle; border-radius:6px; -moz-border-radius:6px;} +.F120x160 {width:120px; height:160px; vertical-align:middle; border-radius:7px; -moz-border-radius:7px;} +.F150x200 {width:150px; height:200px; vertical-align:middle; border-radius:8px; -moz-border-radius:8px;} +.IMG_USR + { + width:150px; + height:200px; + border-radius:5px; + -moz-border-radius:5px; + } +.ZOOM + { + position:absolute; + z-index:1000; + left:-162px; + top:-300px; + padding:5px; + background-color:rgba(255,255,255,0.8); + border-width:1px; + border-style:solid; + border-color:#C0C0C0; + border-radius:8px; + -moz-border-radius:8px; + box-shadow:2px 4px 12px #888; + -moz-box-shadow:2px 4px 12px #888; + -webkit-box-shadow:2px 4px 12px #888; + } +.ZOOM_TXT + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#202020; + font-size:10pt; + } + +.NO_BR {white-space:nowrap;} + +.BG_MSG_BLUE {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x;} +.BG_MSG_GREEN {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x;} + +.WHITE_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:14pt; font-weight:bold; white-space:nowrap;} +.GREY_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFB42E; font-size:14pt; font-weight:bold; white-space:nowrap;} +.BLUE_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFE880; font-size:14pt; font-weight:bold; white-space:nowrap;} +.YELLOW_DEGREE {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFC040; font-size:14pt; font-weight:bold; white-space:nowrap;} + +.WHITE_COURSE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:14pt; white-space:nowrap;} +.GREY_COURSE {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#F7F6F5; font-size:14pt; white-space:nowrap;} +.BLUE_COURSE {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#FFFFFF; font-size:14pt; white-space:nowrap;} +.YELLOW_COURSE {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#FFFFFF; font-size:14pt; white-space:nowrap;} + +.WHITE_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:16pt; white-space:nowrap;} +.GREY_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:16pt; white-space:nowrap;} +.BLUE_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFFFFF; font-size:16pt; white-space:nowrap;} +.YELLOW_HEAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:16pt; white-space:nowrap;} + +.WHITE_USR {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:16pt; font-weight:bold; white-space:nowrap;} +.GREY_USR {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#E0E0E0; font-size:16pt; font-weight:bold; white-space:nowrap;} +.BLUE_USR {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FFFFFF; font-size:16pt; font-weight:bold; white-space:nowrap;} +.YELLOW_USR {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B3B0B3; font-size:16pt; font-weight:bold; white-space:nowrap;} + +.WHITE_CONNECTED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.GREY_CONNECTED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.BLUE_CONNECTED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} +.YELLOW_CONNECTED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:10pt;} + +.WHITE_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#505050; font-size:16pt;} +.GREY_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#505050; font-size:16pt;} +.BLUE_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt;} +.YELLOW_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:16pt;} + +/**************************** Icon highlighting ******************************/ +.ICON_HIDDEN + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=20); + -moz-opacity:0.2; + opacity:0.2; + } +.ICON_HIGHLIGHT + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80); + -moz-opacity:0.8; + opacity:0.8; + } +.ICON_HIGHLIGHT:hover + { + filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100); + -moz-opacity:1; + opacity:1; + } + +/********************************* Tabs **************************************/ +.WHITE_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#4D88A1; + font-size:20pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + } +.GREY_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#606060; + font-size:20pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + } +.BLUE_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#4D88A1; + font-size:20pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + } +.YELLOW_TAB_ON + { + font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; + color:#BD4815; + font-size:20pt; + font-weight:bold; + line-height:100%; + white-space:nowrap; + } + +.WHITE_MENU_OFF {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:20pt; line-height:110%;} +.GREY_MENU_OFF {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:20pt; line-height:110%;} +.BLUE_MENU_OFF {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:20pt; line-height:110%;} +.YELLOW_MENU_OFF {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:20pt; line-height:110%;} + +.WHITE_MENU_ON {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:20pt; font-weight:bold; line-height:110%;} +.GREY_MENU_ON {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:20pt; font-weight:bold; line-height:110%;} +.BLUE_MENU_ON {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:20pt; font-weight:bold; line-height:110%;} +.YELLOW_MENU_ON {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:20pt; font-weight:bold; line-height:110%;} + +.WHITE_FORMUL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt;} +.GREY_FORMUL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt;} +.BLUE_FORMUL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt;} +.YELLOW_FORMUL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:16pt;} + +.WHITE_FORMUL_NB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; white-space:nowrap;} +.GREY_FORMUL_NB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; white-space:nowrap;} +.BLUE_FORMUL_NB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; white-space:nowrap;} +.YELLOW_FORMUL_NB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:16pt; white-space:nowrap;} + +.WHITE_FORMULB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; font-weight:bold;} +.GREY_FORMULB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; font-weight:bold;} +.BLUE_FORMULB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; font-weight:bold;} +.YELLOW_FORMULB {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF4301; font-size:16pt; font-weight:bold;} + +.FILENAME {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:18pt; font-weight:bold;} + +.BROWSER_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#94745C; font-size:16pt; font-weight:bold;} +.BROWSER_TITLE_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#D5C6BB; font-size:16pt; font-weight:bold;} +.BROWSER_SUBTITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#94745C; font-size:14pt;} + +.T1 {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:16pt;} +.T2 {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt;} +.T3 {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:12pt;} + +.LST {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:12pt; white-space:nowrap;} +.LST_HID {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-size:12pt; white-space:nowrap;} +.LST_REC {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:12pt; white-space:nowrap;} +.LST_REC_HID {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:12pt; white-space:nowrap;} +.LST_EDIT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_HID {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_REC {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} +.LST_EDIT_REC_HID {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-weight:bold; font-size:9pt; height:16px; padding-top:0px; padding-bottom:0px; margin-top:-1px; margin-bottom:-1px; border-width:1px; border-style:solid; border-color:#ECE9D8;} + +.USR_ID {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:16pt; font-weight:bold;} + +.DAT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:16pt;} +.DAT_GREEN {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:16pt;} +.DAT_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#A0A0A0; font-size:16pt;} +.DAT_NOBR {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#707070; font-size:16pt; white-space:nowrap;} +.DAT_N {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:16pt;} +.DAT_NOBR_N {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:16pt; white-space:nowrap;} + +.DAT_SMALL {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#707070; font-size:14pt;} +.DAT_SMALL_LIGHT {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#A0A0A0; font-size:14pt;} +.DAT_SMALL_NOBR {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#707070; font-size:14pt; white-space:nowrap;} +.DAT_SMALL_N {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#404040; font-size:14pt;} +.DAT_SMALL_NOBR_N {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#404040; font-size:14pt; white-space:nowrap;} +.DAT_SMALL_RED {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#FF0000; font-size:14pt;} +.DAT_SMALL_GREEN {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#008000; font-size:14pt;} +.DAT_SMALL_BLUE {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#0080FF; font-size:14pt;} +.DAT_SMALL_YELLOW {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#C0C000; font-size:14pt;} + +.HEAD_REC {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#808080; font-size:16pt;} +.HEAD_REC_SMALL {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#808080; font-size:12pt;} +.HEAD_REC_BIG {font-family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#808080; font-size:20pt; font-weight:bold;} +.DAT_REC {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt; line-height:110%;} +.DAT_REC_SMALL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#808080; font-size:14pt; line-height:110%;} +.DAT_REC_SMALL_BOLD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#202020; font-size:14pt; line-height:110%;} +.MSJ_AVISO {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#632921; font-size:12pt;} +.TIT_TBL {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:14pt;} +.TIT_CLASSPHOTO {font-Family:Georgia, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#606060; font-size:11pt;} +.CLASSPHOTO {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#606060; font-size:11pt; line-height:100%; letter-spacing:0px; white-space:nowrap;} + +.GRP_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; font-weight:bold;} + +.ASG_TITLE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:16pt; font-weight:bold;} +.ASG_TITLE_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:16pt; font-weight:bold;} +.ASG_GRP {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:12pt;} +.ASG_GRP_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:12pt;} +.DATE_GREEN {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:14pt;} +.DATE_GREEN_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:14pt;} +.DATE_RED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:14pt;} +.DATE_RED_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#F98A8A; font-size:14pt;} + +.ASG_LST_DATE_GREEN {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:12pt; white-space:nowrap;} +.ASG_LST_DATE_RED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:12pt; white-space:nowrap;} + +.STATUS_GREEN {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:14pt;} +.STATUS_GREEN_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#89BE87; font-size:14pt;} +.STATUS_RED {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:14pt;} +.STATUS_RED_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#F98A8A; font-size:14pt;} + +.ANS {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:16pt; font-weight:bold;} +.ANS_OK {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#008000; font-size:16pt; font-weight:bold;} +.ANS_BAD {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#FF0000; font-size:16pt; font-weight:bold;} +.TST_TIT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:20pt;} +.TEST {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#404040; font-size:14pt;} +.TEST_EXA {font-Family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:14pt;} +.TEST_EXA_LIGHT {font-Family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#A0A0A0; font-size:14pt;} +.TEST_EDI {font-Family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:14pt;} +.TEST_EDI_LIGHT {font-Family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#A0A0A0; font-size:14pt;} + +.HOR {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#345C6C; font-size:12pt; line-height:110%; letter-spacing:0px;} +.FREE0 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #EEEADC #F4F2EA;} +.FREE1 {background-color:#F4F2EA; border:solid 1px; border-color:#F4F2EA #E0D9C2 #E0D9C2 #F4F2EA;} +.FREE2 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #F5F2E9 #FBFAF7;} +.FREE3 {background-color:#FBFAF7; border:solid 1px; border-color:#FBFAF7 #E0D9C2 #E0D9C2 #FBFAF7;} +.THEO {background-color:#C0DAE4; border:solid 2px; border-color:#C9E3ED #B5CFD9 #B5CFD9 #C9E3ED;} +.PRAC {background-color:#DBE5E9; border:solid 2px; border-color:#E4EEF2 #D0DADE #D0DADE #E4EEF2;} +.TUTO {background-color:#D6E9C3; border:solid 2px; border-color:#DFEEE0 #CAE3B1 #CAE3B1 #DFEEE0;} + +.CUR_TIME {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#BAD2DA; font-size:12pt; font-weight:bold;} + +.USR_LIST_TYPE_OFF {border:solid 1px; border-color:#FFFFFF;} +.USR_LIST_TYPE_ON {border:solid 1px; border-color:#50B800;} + +.LAYOUT_OFF {border:solid; border-width:0px;} +.LAYOUT_ON {border:solid; border-width:1px; border-color:#80E000;} + +.LOG {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#606060; font-size:9pt;} +.LOG_R {font-Family:Arial Narrow, Nimbus Sans L, DejaVu LGC Sans Condensed, sans-serif; color:#FF0000; font-size:9pt;} + +.MSG_TXT {font-Family:Courier New, DejaVu LGC Sans Mono, Bitstream Vera Sans Mono, monospace; color:#404040; font-size:10pt;} + +.MSG_TIT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.MSG_TIT_NEW {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt; font-weight:bold;} +.MSG_TIT_REM {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:10pt;} +.MSG_TIT_BG {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt;} +.MSG_TIT_BG_NEW {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:10pt; font-weight:bold;} +.MSG_TIT_BG_REM {background-image:url('/swad/icon/lightblue1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:10pt;} + +.MSG_AUT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_AUT_LIGHT {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:9pt;} +.MSG_AUT_NEW {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.MSG_AUT_BG {background-image:url('/swad/icon/blue1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_AUT_BG_NEW {background-image:url('/swad/icon/green1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.MSG_AUT_BG_REM {background-image:url('/swad/icon/lightblue1x36.gif'); background-repeat:repeat-x; font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#AFC4CC; font-size:9pt;} +.MSG_DATE {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt;} +.MSG_DATE_NEW {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#4D88A1; font-size:9pt; font-weight:bold;} +.BT {width:16px; text-align:left; vertical-align:top;} +.BT0 {width:16px; text-align:left; vertical-align:top; background-color:#F4F2EA;} +.BT1 {width:16px; text-align:left; vertical-align:top; background-color:#FBFAF7;} +.BM {width:16px; text-align:left; vertical-align:middle;} +.BM_SEL {width:16px; text-align:left; vertical-align:middle; background-color:#C0FF40;} +.BM0 {width:16px; text-align:left; vertical-align:middle; background-color:#F4F2EA;} +.BM1 {width:16px; text-align:left; vertical-align:middle; background-color:#FBFAF7;} + +.CONV_TIT {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-weight:bold; font-size:14pt;} +.CONV_TIT_IMPR {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-weight:bold; font-size:14pt;} +.CONV_NEG {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-weight:bold; font-size:11pt; white-space:nowrap;} +.CONV_NEG_IMPR {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-weight:bold; font-size:11pt; white-space:nowrap;} +.CONV {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#404040; font-size:11pt;} +.CONV_IMPR {font-Family:Garamond, DejaVu LGC Serif, Bitstream Vera Serif, serif; color:#202020; font-size:11pt;} + +.CON {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#B8D070; font-size:9pt; line-height:110%; white-space:nowrap;} +.CON_CRS {font-Family:Arial, Nimbus Sans L, DejaVu LGC Sans, Bitstream Vera Sans, sans-serif; color:#398000; font-size:9pt; line-height:110%; white-space:nowrap;} diff --git a/dropzone/css/dropzone.css b/dropzone/css/dropzone.css new file mode 100644 index 00000000..cc20394f --- /dev/null +++ b/dropzone/css/dropzone.css @@ -0,0 +1,397 @@ +/* The MIT License */ +.dropzone, +.dropzone *, +.dropzone-previews, +.dropzone-previews * { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.dropzone { + position: relative; + border: 1px solid rgba(0,0,0,0.08); + background: rgba(0,0,0,0.02); + padding: 1em; +} +.dropzone.dz-clickable { + cursor: pointer; +} +.dropzone.dz-clickable .dz-message, +.dropzone.dz-clickable .dz-message span { + cursor: pointer; +} +.dropzone.dz-clickable * { + cursor: default; +} +.dropzone .dz-message { + opacity: 1; + -ms-filter: none; + filter: none; +} +.dropzone.dz-drag-hover { + border-color: rgba(0,0,0,0.15); + background: rgba(0,0,0,0.04); +} +.dropzone.dz-started .dz-message { + display: none; +} +.dropzone .dz-preview, +.dropzone-previews .dz-preview { + background: rgba(255,255,255,0.8); + position: relative; + display: inline-block; + margin: 17px; + vertical-align: top; + border: 1px solid #acacac; + padding: 6px 6px 6px 6px; +} +.dropzone .dz-preview.dz-file-preview [data-dz-thumbnail], +.dropzone-previews .dz-preview.dz-file-preview [data-dz-thumbnail] { + display: none; +} +.dropzone .dz-preview .dz-details, +.dropzone-previews .dz-preview .dz-details { + width: 100px; + height: 100px; + position: relative; + background: #ebebeb; + padding: 5px; + margin-bottom: 22px; +} +.dropzone .dz-preview .dz-details .dz-filename, +.dropzone-previews .dz-preview .dz-details .dz-filename { + overflow: hidden; + height: 100%; +} +.dropzone .dz-preview .dz-details img, +.dropzone-previews .dz-preview .dz-details img { + position: absolute; + top: 0; + left: 0; + width: 100px; + height: 100px; +} +.dropzone .dz-preview .dz-details .dz-size, +.dropzone-previews .dz-preview .dz-details .dz-size { + position: absolute; + bottom: -28px; + left: 3px; + height: 28px; + line-height: 28px; +} +.dropzone .dz-preview.dz-error .dz-error-mark, +.dropzone-previews .dz-preview.dz-error .dz-error-mark { + display: block; +} +.dropzone .dz-preview.dz-success .dz-success-mark, +.dropzone-previews .dz-preview.dz-success .dz-success-mark { + display: block; +} +.dropzone .dz-preview:hover .dz-details img, +.dropzone-previews .dz-preview:hover .dz-details img { + display: none; +} +.dropzone .dz-preview .dz-success-mark, +.dropzone-previews .dz-preview .dz-success-mark, +.dropzone .dz-preview .dz-error-mark, +.dropzone-previews .dz-preview .dz-error-mark { + display: none; + position: absolute; + width: 40px; + height: 40px; + font-size: 30px; + text-align: center; + right: -10px; + top: -10px; +} +.dropzone .dz-preview .dz-success-mark, +.dropzone-previews .dz-preview .dz-success-mark { + color: #8cc657; +} +.dropzone .dz-preview .dz-error-mark, +.dropzone-previews .dz-preview .dz-error-mark { + color: #ee162d; +} +.dropzone .dz-preview .dz-progress, +.dropzone-previews .dz-preview .dz-progress { + position: absolute; + top: 100px; + left: 6px; + right: 6px; + height: 6px; + background: #d7d7d7; + display: none; +} +.dropzone .dz-preview .dz-progress .dz-upload, +.dropzone-previews .dz-preview .dz-progress .dz-upload { + display: block; + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 0%; + background-color: #8cc657; +} +.dropzone .dz-preview.dz-processing .dz-progress, +.dropzone-previews .dz-preview.dz-processing .dz-progress { + display: block; +} +.dropzone .dz-preview .dz-error-message, +.dropzone-previews .dz-preview .dz-error-message { + display: none; + position: absolute; + top: -5px; + left: -20px; + background: rgba(245,245,245,0.8); + padding: 8px 10px; + color: #800; + min-width: 140px; + max-width: 500px; + z-index: 500; +} +.dropzone .dz-preview:hover.dz-error .dz-error-message, +.dropzone-previews .dz-preview:hover.dz-error .dz-error-message { + display: block; +} +.dropzone { + border: 1px solid rgba(0,0,0,0.03); + min-height: 360px; + -webkit-border-radius: 3px; + border-radius: 3px; + background: rgba(0,0,0,0.03); + padding: 23px; +} +.dropzone .dz-default.dz-message { + opacity: 1; + -ms-filter: none; + filter: none; + -webkit-transition: opacity 0.3s ease-in-out; + -moz-transition: opacity 0.3s ease-in-out; + -o-transition: opacity 0.3s ease-in-out; + -ms-transition: opacity 0.3s ease-in-out; + transition: opacity 0.3s ease-in-out; + background-image: url("../images/spritemap.png"); + background-repeat: no-repeat; + background-position: 0 0; + position: absolute; + width: 428px; + height: 123px; + margin-left: -214px; + margin-top: -61.5px; + top: 50%; + left: 50%; +} +@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) { + .dropzone .dz-default.dz-message { + background-image: url("../images/spritemap@2x.png"); + -webkit-background-size: 428px 406px; + -moz-background-size: 428px 406px; + background-size: 428px 406px; + } +} +.dropzone .dz-default.dz-message span { + display: none; +} +.dropzone.dz-square .dz-default.dz-message { + background-position: 0 -123px; + width: 268px; + margin-left: -134px; + height: 174px; + margin-top: -87px; +} +.dropzone.dz-drag-hover .dz-message { + opacity: 0.15; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)"; + filter: alpha(opacity=15); +} +.dropzone.dz-started .dz-message { + display: block; + opacity: 0; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); +} +.dropzone .dz-preview, +.dropzone-previews .dz-preview { + -webkit-box-shadow: 1px 1px 4px rgba(0,0,0,0.16); + box-shadow: 1px 1px 4px rgba(0,0,0,0.16); + font-size: 14px; +} +.dropzone .dz-preview.dz-image-preview:hover .dz-details img, +.dropzone-previews .dz-preview.dz-image-preview:hover .dz-details img { + display: block; + opacity: 0.1; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; + filter: alpha(opacity=10); +} +.dropzone .dz-preview.dz-success .dz-success-mark, +.dropzone-previews .dz-preview.dz-success .dz-success-mark { + opacity: 1; + -ms-filter: none; + filter: none; +} +.dropzone .dz-preview.dz-error .dz-error-mark, +.dropzone-previews .dz-preview.dz-error .dz-error-mark { + opacity: 1; + -ms-filter: none; + filter: none; +} +.dropzone .dz-preview.dz-error .dz-progress .dz-upload, +.dropzone-previews .dz-preview.dz-error .dz-progress .dz-upload { + background: #ee1e2d; +} +.dropzone .dz-preview .dz-error-mark, +.dropzone-previews .dz-preview .dz-error-mark, +.dropzone .dz-preview .dz-success-mark, +.dropzone-previews .dz-preview .dz-success-mark { + display: block; + opacity: 0; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + -webkit-transition: opacity 0.4s ease-in-out; + -moz-transition: opacity 0.4s ease-in-out; + -o-transition: opacity 0.4s ease-in-out; + -ms-transition: opacity 0.4s ease-in-out; + transition: opacity 0.4s ease-in-out; + background-image: url("../images/spritemap.png"); + background-repeat: no-repeat; +} +@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) { + .dropzone .dz-preview .dz-error-mark, + .dropzone-previews .dz-preview .dz-error-mark, + .dropzone .dz-preview .dz-success-mark, + .dropzone-previews .dz-preview .dz-success-mark { + background-image: url("../images/spritemap@2x.png"); + -webkit-background-size: 428px 406px; + -moz-background-size: 428px 406px; + background-size: 428px 406px; + } +} +.dropzone .dz-preview .dz-error-mark span, +.dropzone-previews .dz-preview .dz-error-mark span, +.dropzone .dz-preview .dz-success-mark span, +.dropzone-previews .dz-preview .dz-success-mark span { + display: none; +} +.dropzone .dz-preview .dz-error-mark, +.dropzone-previews .dz-preview .dz-error-mark { + background-position: -268px -123px; +} +.dropzone .dz-preview .dz-success-mark, +.dropzone-previews .dz-preview .dz-success-mark { + background-position: -268px -163px; +} +.dropzone .dz-preview .dz-progress .dz-upload, +.dropzone-previews .dz-preview .dz-progress .dz-upload { + -webkit-animation: loading 0.4s linear infinite; + -moz-animation: loading 0.4s linear infinite; + -o-animation: loading 0.4s linear infinite; + -ms-animation: loading 0.4s linear infinite; + animation: loading 0.4s linear infinite; + -webkit-transition: width 0.3s ease-in-out; + -moz-transition: width 0.3s ease-in-out; + -o-transition: width 0.3s ease-in-out; + -ms-transition: width 0.3s ease-in-out; + transition: width 0.3s ease-in-out; + -webkit-border-radius: 2px; + border-radius: 2px; + position: absolute; + top: 0; + left: 0; + width: 0%; + height: 100%; + background-image: url("../images/spritemap.png"); + background-repeat: repeat-x; + background-position: 0px -400px; +} +@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) { + .dropzone .dz-preview .dz-progress .dz-upload, + .dropzone-previews .dz-preview .dz-progress .dz-upload { + background-image: url("../images/spritemap@2x.png"); + -webkit-background-size: 428px 406px; + -moz-background-size: 428px 406px; + background-size: 428px 406px; + } +} +.dropzone .dz-preview.dz-success .dz-progress, +.dropzone-previews .dz-preview.dz-success .dz-progress { + display: block; + opacity: 0; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + -webkit-transition: opacity 0.4s ease-in-out; + -moz-transition: opacity 0.4s ease-in-out; + -o-transition: opacity 0.4s ease-in-out; + -ms-transition: opacity 0.4s ease-in-out; + transition: opacity 0.4s ease-in-out; +} +.dropzone .dz-preview .dz-error-message, +.dropzone-previews .dz-preview .dz-error-message { + display: block; + opacity: 0; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + -webkit-transition: opacity 0.3s ease-in-out; + -moz-transition: opacity 0.3s ease-in-out; + -o-transition: opacity 0.3s ease-in-out; + -ms-transition: opacity 0.3s ease-in-out; + transition: opacity 0.3s ease-in-out; +} +.dropzone .dz-preview:hover.dz-error .dz-error-message, +.dropzone-previews .dz-preview:hover.dz-error .dz-error-message { + opacity: 1; + -ms-filter: none; + filter: none; +} +.dropzone a.dz-remove, +.dropzone-previews a.dz-remove { + background-image: -webkit-linear-gradient(top, #fafafa, #eee); + background-image: -moz-linear-gradient(top, #fafafa, #eee); + background-image: -o-linear-gradient(top, #fafafa, #eee); + background-image: -ms-linear-gradient(top, #fafafa, #eee); + background-image: linear-gradient(to bottom, #fafafa, #eee); + -webkit-border-radius: 2px; + border-radius: 2px; + border: 1px solid #eee; + text-decoration: none; + display: block; + padding: 4px 5px; + text-align: center; + color: #aaa; + margin-top: 26px; +} +.dropzone a.dz-remove:hover, +.dropzone-previews a.dz-remove:hover { + color: #666; +} +@-moz-keyframes loading { + from { + background-position: 0 -400px; + } + to { + background-position: -7px -400px; + } +} +@-webkit-keyframes loading { + from { + background-position: 0 -400px; + } + to { + background-position: -7px -400px; + } +} +@-o-keyframes loading { + from { + background-position: 0 -400px; + } + to { + background-position: -7px -400px; + } +} +@keyframes loading { + from { + background-position: 0 -400px; + } + to { + background-position: -7px -400px; + } +} diff --git a/dropzone/custom-dropzone.js b/dropzone/custom-dropzone.js new file mode 100644 index 00000000..0b825d8c --- /dev/null +++ b/dropzone/custom-dropzone.js @@ -0,0 +1,35 @@ +// "myAwesomeDropzone" is the camelized version of the HTML element's ID +Dropzone.options.myAwesomeDropzone = + { + maxFiles: 10, + parallelUploads: 10, + //forceFallback: true, + init: function() + { + var filesAdded = 0; + + this.on("addedfile", function(file) + { + filesAdded++; + //alert("Added file."); + }); + + // If you don't want to automatically close if there was an error, you can handle + // the success and error events separately + this.on("complete", function(file) + { + filesAdded--; + if (filesAdded == 0) + { + // Do what you have to do. + //alert ("Hecho"); + //setTimeout(function(){document.getElementById("form_upload_done").submit();}, 2000); + } + }); + }, + fallback: function() + { + document.getElementById('dropzone-upload').style.display='none'; + document.getElementById('classic-upload').style.display='block'; + } +}; diff --git a/dropzone/dropzone.js b/dropzone/dropzone.js new file mode 100644 index 00000000..499f4e0e --- /dev/null +++ b/dropzone/dropzone.js @@ -0,0 +1,1874 @@ + +;(function(){ + +/** + * Require the module at `name`. + * + * @param {String} name + * @return {Object} exports + * @api public + */ + +function require(name) { + var module = require.modules[name]; + if (!module) throw new Error('failed to require "' + name + '"'); + + if (!('exports' in module) && typeof module.definition === 'function') { + module.client = module.component = true; + module.definition.call(this, module.exports = {}, module); + delete module.definition; + } + + return module.exports; +} + +/** + * Registered modules. + */ + +require.modules = {}; + +/** + * Register module at `name` with callback `definition`. + * + * @param {String} name + * @param {Function} definition + * @api private + */ + +require.register = function (name, definition) { + require.modules[name] = { + definition: definition + }; +}; + +/** + * Define a module's exports immediately with `exports`. + * + * @param {String} name + * @param {Generic} exports + * @api private + */ + +require.define = function (name, exports) { + require.modules[name] = { + exports: exports + }; +}; +require.register("component~emitter@1.1.2", function (exports, module) { + +/** + * Expose `Emitter`. + */ + +module.exports = Emitter; + +/** + * Initialize a new `Emitter`. + * + * @api public + */ + +function Emitter(obj) { + if (obj) return mixin(obj); +}; + +/** + * Mixin the emitter properties. + * + * @param {Object} obj + * @return {Object} + * @api private + */ + +function mixin(obj) { + for (var key in Emitter.prototype) { + obj[key] = Emitter.prototype[key]; + } + return obj; +} + +/** + * Listen on the given `event` with `fn`. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.on = +Emitter.prototype.addEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + (this._callbacks[event] = this._callbacks[event] || []) + .push(fn); + return this; +}; + +/** + * Adds an `event` listener that will be invoked a single + * time then automatically removed. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.once = function(event, fn){ + var self = this; + this._callbacks = this._callbacks || {}; + + function on() { + self.off(event, on); + fn.apply(this, arguments); + } + + on.fn = fn; + this.on(event, on); + return this; +}; + +/** + * Remove the given callback for `event` or all + * registered callbacks. + * + * @param {String} event + * @param {Function} fn + * @return {Emitter} + * @api public + */ + +Emitter.prototype.off = +Emitter.prototype.removeListener = +Emitter.prototype.removeAllListeners = +Emitter.prototype.removeEventListener = function(event, fn){ + this._callbacks = this._callbacks || {}; + + // all + if (0 == arguments.length) { + this._callbacks = {}; + return this; + } + + // specific event + var callbacks = this._callbacks[event]; + if (!callbacks) return this; + + // remove all handlers + if (1 == arguments.length) { + delete this._callbacks[event]; + return this; + } + + // remove specific handler + var cb; + for (var i = 0; i < callbacks.length; i++) { + cb = callbacks[i]; + if (cb === fn || cb.fn === fn) { + callbacks.splice(i, 1); + break; + } + } + return this; +}; + +/** + * Emit `event` with the given args. + * + * @param {String} event + * @param {Mixed} ... + * @return {Emitter} + */ + +Emitter.prototype.emit = function(event){ + this._callbacks = this._callbacks || {}; + var args = [].slice.call(arguments, 1) + , callbacks = this._callbacks[event]; + + if (callbacks) { + callbacks = callbacks.slice(0); + for (var i = 0, len = callbacks.length; i < len; ++i) { + callbacks[i].apply(this, args); + } + } + + return this; +}; + +/** + * Return array of callbacks for `event`. + * + * @param {String} event + * @return {Array} + * @api public + */ + +Emitter.prototype.listeners = function(event){ + this._callbacks = this._callbacks || {}; + return this._callbacks[event] || []; +}; + +/** + * Check if this emitter has `event` handlers. + * + * @param {String} event + * @return {Boolean} + * @api public + */ + +Emitter.prototype.hasListeners = function(event){ + return !! this.listeners(event).length; +}; + +}); + +require.register("dropzone", function (exports, module) { + + +/** + * Exposing dropzone + */ +module.exports = require("dropzone/lib/dropzone.js"); + +}); + +require.register("dropzone/lib/dropzone.js", function (exports, module) { + +/* + * + * More info at [www.dropzonejs.com](http://www.dropzonejs.com) + * + * Copyright (c) 2012, Matias Meno + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +(function() { + var Dropzone, Em, camelize, contentLoaded, detectVerticalSquash, drawImageIOSFix, noop, without, + __hasProp = {}.hasOwnProperty, + __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, + __slice = [].slice; + + Em = typeof Emitter !== "undefined" && Emitter !== null ? Emitter : require("component~emitter@1.1.2"); + + noop = function() {}; + + Dropzone = (function(_super) { + var extend; + + __extends(Dropzone, _super); + + + /* + This is a list of all available events you can register on a dropzone object. + + You can register an event handler like this: + + dropzone.on("dragEnter", function() { }); + */ + + Dropzone.prototype.events = ["drop", "dragstart", "dragend", "dragenter", "dragover", "dragleave", "addedfile", "removedfile", "thumbnail", "error", "errormultiple", "processing", "processingmultiple", "uploadprogress", "totaluploadprogress", "sending", "sendingmultiple", "success", "successmultiple", "canceled", "canceledmultiple", "complete", "completemultiple", "reset", "maxfilesexceeded", "maxfilesreached"]; + + Dropzone.prototype.defaultOptions = { + url: null, + method: "post", + withCredentials: false, + parallelUploads: 2, + uploadMultiple: false, + maxFilesize: 256, + paramName: "file", + createImageThumbnails: true, + maxThumbnailFilesize: 10, + thumbnailWidth: 100, + thumbnailHeight: 100, + maxFiles: null, + params: {}, + clickable: true, + ignoreHiddenFiles: true, + acceptedFiles: null, + acceptedMimeTypes: null, + autoProcessQueue: true, + autoQueue: true, + addRemoveLinks: false, + previewsContainer: null, + dictDefaultMessage: "Drop files here to upload", + dictFallbackMessage: "Your browser does not support drag'n'drop file uploads.", + dictFallbackText: "Please use the fallback form below to upload your files like in the olden days.", + dictFileTooBig: "File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.", + dictInvalidFileType: "You can't upload files of this type.", + dictResponseError: "Server responded with {{statusCode}} code.", + dictCancelUpload: "Cancel upload", + dictCancelUploadConfirmation: "Are you sure you want to cancel this upload?", + dictRemoveFile: "Remove file", + dictRemoveFileConfirmation: null, + dictMaxFilesExceeded: "You can not upload any more files.", + accept: function(file, done) { + return done(); + }, + init: function() { + return noop; + }, + forceFallback: false, + fallback: function() { + var child, messageElement, span, _i, _len, _ref; + this.element.className = "" + this.element.className + " dz-browser-not-supported"; + _ref = this.element.getElementsByTagName("div"); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + child = _ref[_i]; + if (/(^| )dz-message($| )/.test(child.className)) { + messageElement = child; + child.className = "dz-message"; + continue; + } + } + if (!messageElement) { + messageElement = Dropzone.createElement("
"); + this.element.appendChild(messageElement); + } + span = messageElement.getElementsByTagName("span")[0]; + if (span) { + span.textContent = this.options.dictFallbackMessage; + } + return this.element.appendChild(this.getFallbackForm()); + }, + resize: function(file) { + var info, srcRatio, trgRatio; + info = { + srcX: 0, + srcY: 0, + srcWidth: file.width, + srcHeight: file.height + }; + srcRatio = file.width / file.height; + info.optWidth = this.options.thumbnailWidth; + info.optHeight = this.options.thumbnailHeight; + if ((info.optWidth == null) && (info.optHeight == null)) { + info.optWidth = info.srcWidth; + info.optHeight = info.srcHeight; + } else if (info.optWidth == null) { + info.optWidth = srcRatio * info.optHeight; + } else if (info.optHeight == null) { + info.optHeight = (1 / srcRatio) * info.optWidth; + } + trgRatio = info.optWidth / info.optHeight; + if (file.height < info.optHeight || file.width < info.optWidth) { + info.trgHeight = info.srcHeight; + info.trgWidth = info.srcWidth; + } else { + if (srcRatio > trgRatio) { + info.srcHeight = file.height; + info.srcWidth = info.srcHeight * trgRatio; + } else { + info.srcWidth = file.width; + info.srcHeight = info.srcWidth / trgRatio; + } + } + info.srcX = (file.width - info.srcWidth) / 2; + info.srcY = (file.height - info.srcHeight) / 2; + return info; + }, + + /* + Those functions register themselves to the events on init and handle all + the user interface specific stuff. Overwriting them won't break the upload + but can break the way it's displayed. + You can overwrite them if you don't like the default behavior. If you just + want to add an additional event handler, register it on the dropzone object + and don't overwrite those options. + */ + drop: function(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragstart: noop, + dragend: function(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragenter: function(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragover: function(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragleave: function(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + paste: noop, + reset: function() { + return this.element.classList.remove("dz-started"); + }, + addedfile: function(file) { + var node, removeFileEvent, removeLink, _i, _j, _k, _len, _len1, _len2, _ref, _ref1, _ref2, _results; + if (this.element === this.previewsContainer) { + this.element.classList.add("dz-started"); + } + if (this.previewsContainer) { + file.previewElement = Dropzone.createElement(this.options.previewTemplate.trim()); + file.previewTemplate = file.previewElement; + this.previewsContainer.appendChild(file.previewElement); + _ref = file.previewElement.querySelectorAll("[data-dz-name]"); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + node = _ref[_i]; + node.textContent = file.name; + } + _ref1 = file.previewElement.querySelectorAll("[data-dz-size]"); + for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) { + node = _ref1[_j]; + node.innerHTML = this.filesize(file.size); + } + if (this.options.addRemoveLinks) { + file._removeLink = Dropzone.createElement("" + this.options.dictRemoveFile + ""); + file.previewElement.appendChild(file._removeLink); + } + removeFileEvent = (function(_this) { + return function(e) { + e.preventDefault(); + e.stopPropagation(); + if (file.status === Dropzone.UPLOADING) { + return Dropzone.confirm(_this.options.dictCancelUploadConfirmation, function() { + return _this.removeFile(file); + }); + } else { + if (_this.options.dictRemoveFileConfirmation) { + return Dropzone.confirm(_this.options.dictRemoveFileConfirmation, function() { + return _this.removeFile(file); + }); + } else { + return _this.removeFile(file); + } + } + }; + })(this); + _ref2 = file.previewElement.querySelectorAll("[data-dz-remove]"); + _results = []; + for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) { + removeLink = _ref2[_k]; + _results.push(removeLink.addEventListener("click", removeFileEvent)); + } + return _results; + } + }, + removedfile: function(file) { + var _ref; + if (file.previewElement) { + if ((_ref = file.previewElement) != null) { + _ref.parentNode.removeChild(file.previewElement); + } + } + return this._updateMaxFilesReachedClass(); + }, + thumbnail: function(file, dataUrl) { + var thumbnailElement, _i, _len, _ref, _results; + if (file.previewElement) { + file.previewElement.classList.remove("dz-file-preview"); + file.previewElement.classList.add("dz-image-preview"); + _ref = file.previewElement.querySelectorAll("[data-dz-thumbnail]"); + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + thumbnailElement = _ref[_i]; + thumbnailElement.alt = file.name; + _results.push(thumbnailElement.src = dataUrl); + } + return _results; + } + }, + error: function(file, message) { + var node, _i, _len, _ref, _results; + if (file.previewElement) { + file.previewElement.classList.add("dz-error"); + if (typeof message !== "String" && message.error) { + message = message.error; + } + _ref = file.previewElement.querySelectorAll("[data-dz-errormessage]"); + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + node = _ref[_i]; + _results.push(node.textContent = message); + } + return _results; + } + }, + errormultiple: noop, + processing: function(file) { + if (file.previewElement) { + file.previewElement.classList.add("dz-processing"); + if (file._removeLink) { + return file._removeLink.textContent = this.options.dictCancelUpload; + } + } + }, + processingmultiple: noop, + uploadprogress: function(file, progress, bytesSent) { + var node, _i, _len, _ref, _results; + if (file.previewElement) { + _ref = file.previewElement.querySelectorAll("[data-dz-uploadprogress]"); + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + node = _ref[_i]; + _results.push(node.style.width = "" + progress + "%"); + } + return _results; + } + }, + totaluploadprogress: noop, + sending: noop, + sendingmultiple: noop, + success: function(file) { + if (file.previewElement) { + return file.previewElement.classList.add("dz-success"); + } + }, + successmultiple: noop, + canceled: function(file) { + return this.emit("error", file, "Upload canceled."); + }, + canceledmultiple: noop, + complete: function(file) { + if (file._removeLink) { + return file._removeLink.textContent = this.options.dictRemoveFile; + } + }, + completemultiple: noop, + maxfilesexceeded: noop, + maxfilesreached: noop, + previewTemplate: "
\n
\n
\n
\n \n
\n
\n
✔
\n
✘
\n
\n
" + }; + + extend = function() { + var key, object, objects, target, val, _i, _len; + target = arguments[0], objects = 2 <= arguments.length ? __slice.call(arguments, 1) : []; + for (_i = 0, _len = objects.length; _i < _len; _i++) { + object = objects[_i]; + for (key in object) { + val = object[key]; + target[key] = val; + } + } + return target; + }; + + function Dropzone(element, options) { + var elementOptions, fallback, _ref; + this.element = element; + this.version = Dropzone.version; + this.defaultOptions.previewTemplate = this.defaultOptions.previewTemplate.replace(/\n*/g, ""); + this.clickableElements = []; + this.listeners = []; + this.files = []; + if (typeof this.element === "string") { + this.element = document.querySelector(this.element); + } + if (!(this.element && (this.element.nodeType != null))) { + throw new Error("Invalid dropzone element."); + } + if (this.element.dropzone) { + throw new Error("Dropzone already attached."); + } + Dropzone.instances.push(this); + this.element.dropzone = this; + elementOptions = (_ref = Dropzone.optionsForElement(this.element)) != null ? _ref : {}; + this.options = extend({}, this.defaultOptions, elementOptions, options != null ? options : {}); + if (this.options.forceFallback || !Dropzone.isBrowserSupported()) { + return this.options.fallback.call(this); + } + if (this.options.url == null) { + this.options.url = this.element.getAttribute("action"); + } + if (!this.options.url) { + throw new Error("No URL provided."); + } + if (this.options.acceptedFiles && this.options.acceptedMimeTypes) { + throw new Error("You can't provide both 'acceptedFiles' and 'acceptedMimeTypes'. 'acceptedMimeTypes' is deprecated."); + } + if (this.options.acceptedMimeTypes) { + this.options.acceptedFiles = this.options.acceptedMimeTypes; + delete this.options.acceptedMimeTypes; + } + this.options.method = this.options.method.toUpperCase(); + if ((fallback = this.getExistingFallback()) && fallback.parentNode) { + fallback.parentNode.removeChild(fallback); + } + if (this.options.previewsContainer !== false) { + if (this.options.previewsContainer) { + this.previewsContainer = Dropzone.getElement(this.options.previewsContainer, "previewsContainer"); + } else { + this.previewsContainer = this.element; + } + } + if (this.options.clickable) { + if (this.options.clickable === true) { + this.clickableElements = [this.element]; + } else { + this.clickableElements = Dropzone.getElements(this.options.clickable, "clickable"); + } + } + this.init(); + } + + Dropzone.prototype.getAcceptedFiles = function() { + var file, _i, _len, _ref, _results; + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (file.accepted) { + _results.push(file); + } + } + return _results; + }; + + Dropzone.prototype.getRejectedFiles = function() { + var file, _i, _len, _ref, _results; + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (!file.accepted) { + _results.push(file); + } + } + return _results; + }; + + Dropzone.prototype.getFilesWithStatus = function(status) { + var file, _i, _len, _ref, _results; + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (file.status === status) { + _results.push(file); + } + } + return _results; + }; + + Dropzone.prototype.getQueuedFiles = function() { + return this.getFilesWithStatus(Dropzone.QUEUED); + }; + + Dropzone.prototype.getUploadingFiles = function() { + return this.getFilesWithStatus(Dropzone.UPLOADING); + }; + + Dropzone.prototype.getActiveFiles = function() { + var file, _i, _len, _ref, _results; + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (file.status === Dropzone.UPLOADING || file.status === Dropzone.QUEUED) { + _results.push(file); + } + } + return _results; + }; + + Dropzone.prototype.init = function() { + var eventName, noPropagation, setupHiddenFileInput, _i, _len, _ref, _ref1; + if (this.element.tagName === "form") { + this.element.setAttribute("enctype", "multipart/form-data"); + } + if (this.element.classList.contains("dropzone") && !this.element.querySelector(".dz-message")) { + this.element.appendChild(Dropzone.createElement("
" + this.options.dictDefaultMessage + "
")); + } + if (this.clickableElements.length) { + setupHiddenFileInput = (function(_this) { + return function() { + if (_this.hiddenFileInput) { + document.body.removeChild(_this.hiddenFileInput); + } + _this.hiddenFileInput = document.createElement("input"); + _this.hiddenFileInput.setAttribute("type", "file"); + if ((_this.options.maxFiles == null) || _this.options.maxFiles > 1) { + _this.hiddenFileInput.setAttribute("multiple", "multiple"); + } + _this.hiddenFileInput.className = "dz-hidden-input"; + if (_this.options.acceptedFiles != null) { + _this.hiddenFileInput.setAttribute("accept", _this.options.acceptedFiles); + } + _this.hiddenFileInput.style.visibility = "hidden"; + _this.hiddenFileInput.style.position = "absolute"; + _this.hiddenFileInput.style.top = "0"; + _this.hiddenFileInput.style.left = "0"; + _this.hiddenFileInput.style.height = "0"; + _this.hiddenFileInput.style.width = "0"; + document.body.appendChild(_this.hiddenFileInput); + return _this.hiddenFileInput.addEventListener("change", function() { + var file, files, _i, _len; + files = _this.hiddenFileInput.files; + if (files.length) { + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + _this.addFile(file); + } + } + return setupHiddenFileInput(); + }); + }; + })(this); + setupHiddenFileInput(); + } + this.URL = (_ref = window.URL) != null ? _ref : window.webkitURL; + _ref1 = this.events; + for (_i = 0, _len = _ref1.length; _i < _len; _i++) { + eventName = _ref1[_i]; + this.on(eventName, this.options[eventName]); + } + this.on("uploadprogress", (function(_this) { + return function() { + return _this.updateTotalUploadProgress(); + }; + })(this)); + this.on("removedfile", (function(_this) { + return function() { + return _this.updateTotalUploadProgress(); + }; + })(this)); + this.on("canceled", (function(_this) { + return function(file) { + return _this.emit("complete", file); + }; + })(this)); + this.on("complete", (function(_this) { + return function(file) { + if (_this.getUploadingFiles().length === 0 && _this.getQueuedFiles().length === 0) { + return setTimeout((function() { + return _this.emit("queuecomplete"); + }), 0); + } + }; + })(this)); + noPropagation = function(e) { + e.stopPropagation(); + if (e.preventDefault) { + return e.preventDefault(); + } else { + return e.returnValue = false; + } + }; + this.listeners = [ + { + element: this.element, + events: { + "dragstart": (function(_this) { + return function(e) { + return _this.emit("dragstart", e); + }; + })(this), + "dragenter": (function(_this) { + return function(e) { + noPropagation(e); + return _this.emit("dragenter", e); + }; + })(this), + "dragover": (function(_this) { + return function(e) { + var efct; + try { + efct = e.dataTransfer.effectAllowed; + } catch (_error) {} + e.dataTransfer.dropEffect = 'move' === efct || 'linkMove' === efct ? 'move' : 'copy'; + noPropagation(e); + return _this.emit("dragover", e); + }; + })(this), + "dragleave": (function(_this) { + return function(e) { + return _this.emit("dragleave", e); + }; + })(this), + "drop": (function(_this) { + return function(e) { + noPropagation(e); + return _this.drop(e); + }; + })(this), + "dragend": (function(_this) { + return function(e) { + return _this.emit("dragend", e); + }; + })(this) + } + } + ]; + this.clickableElements.forEach((function(_this) { + return function(clickableElement) { + return _this.listeners.push({ + element: clickableElement, + events: { + "click": function(evt) { + if ((clickableElement !== _this.element) || (evt.target === _this.element || Dropzone.elementInside(evt.target, _this.element.querySelector(".dz-message")))) { + return _this.hiddenFileInput.click(); + } + } + } + }); + }; + })(this)); + this.enable(); + return this.options.init.call(this); + }; + + Dropzone.prototype.destroy = function() { + var _ref; + this.disable(); + this.removeAllFiles(true); + if ((_ref = this.hiddenFileInput) != null ? _ref.parentNode : void 0) { + this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput); + this.hiddenFileInput = null; + } + delete this.element.dropzone; + return Dropzone.instances.splice(Dropzone.instances.indexOf(this), 1); + }; + + Dropzone.prototype.updateTotalUploadProgress = function() { + var activeFiles, file, totalBytes, totalBytesSent, totalUploadProgress, _i, _len, _ref; + totalBytesSent = 0; + totalBytes = 0; + activeFiles = this.getActiveFiles(); + if (activeFiles.length) { + _ref = this.getActiveFiles(); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + totalBytesSent += file.upload.bytesSent; + totalBytes += file.upload.total; + } + totalUploadProgress = 100 * totalBytesSent / totalBytes; + } else { + totalUploadProgress = 100; + } + return this.emit("totaluploadprogress", totalUploadProgress, totalBytes, totalBytesSent); + }; + + Dropzone.prototype._getParamName = function(n) { + if (typeof this.options.paramName === "function") { + return this.options.paramName(n); + } else { + return "" + this.options.paramName + (this.options.uploadMultiple ? "[" + n + "]" : ""); + } + }; + + Dropzone.prototype.getFallbackForm = function() { + var existingFallback, fields, fieldsString, form; + if (existingFallback = this.getExistingFallback()) { + return existingFallback; + } + fieldsString = "
"; + if (this.options.dictFallbackText) { + fieldsString += "

" + this.options.dictFallbackText + "

"; + } + fieldsString += "
"; + fields = Dropzone.createElement(fieldsString); + if (this.element.tagName !== "FORM") { + form = Dropzone.createElement("
"); + form.appendChild(fields); + } else { + this.element.setAttribute("enctype", "multipart/form-data"); + this.element.setAttribute("method", this.options.method); + } + return form != null ? form : fields; + }; + + Dropzone.prototype.getExistingFallback = function() { + var fallback, getFallback, tagName, _i, _len, _ref; + getFallback = function(elements) { + var el, _i, _len; + for (_i = 0, _len = elements.length; _i < _len; _i++) { + el = elements[_i]; + if (/(^| )fallback($| )/.test(el.className)) { + return el; + } + } + }; + _ref = ["div", "form"]; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + tagName = _ref[_i]; + if (fallback = getFallback(this.element.getElementsByTagName(tagName))) { + return fallback; + } + } + }; + + Dropzone.prototype.setupEventListeners = function() { + var elementListeners, event, listener, _i, _len, _ref, _results; + _ref = this.listeners; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + elementListeners = _ref[_i]; + _results.push((function() { + var _ref1, _results1; + _ref1 = elementListeners.events; + _results1 = []; + for (event in _ref1) { + listener = _ref1[event]; + _results1.push(elementListeners.element.addEventListener(event, listener, false)); + } + return _results1; + })()); + } + return _results; + }; + + Dropzone.prototype.removeEventListeners = function() { + var elementListeners, event, listener, _i, _len, _ref, _results; + _ref = this.listeners; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + elementListeners = _ref[_i]; + _results.push((function() { + var _ref1, _results1; + _ref1 = elementListeners.events; + _results1 = []; + for (event in _ref1) { + listener = _ref1[event]; + _results1.push(elementListeners.element.removeEventListener(event, listener, false)); + } + return _results1; + })()); + } + return _results; + }; + + Dropzone.prototype.disable = function() { + var file, _i, _len, _ref, _results; + this.clickableElements.forEach(function(element) { + return element.classList.remove("dz-clickable"); + }); + this.removeEventListeners(); + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + _results.push(this.cancelUpload(file)); + } + return _results; + }; + + Dropzone.prototype.enable = function() { + this.clickableElements.forEach(function(element) { + return element.classList.add("dz-clickable"); + }); + return this.setupEventListeners(); + }; + + Dropzone.prototype.filesize = function(size) { + var string; + if (size >= 1024 * 1024 * 1024 * 1024 / 10) { + size = size / (1024 * 1024 * 1024 * 1024 / 10); + string = "TiB"; + } else if (size >= 1024 * 1024 * 1024 / 10) { + size = size / (1024 * 1024 * 1024 / 10); + string = "GiB"; + } else if (size >= 1024 * 1024 / 10) { + size = size / (1024 * 1024 / 10); + string = "MiB"; + } else if (size >= 1024 / 10) { + size = size / (1024 / 10); + string = "KiB"; + } else { + size = size * 10; + string = "b"; + } + return "" + (Math.round(size) / 10) + " " + string; + }; + + Dropzone.prototype._updateMaxFilesReachedClass = function() { + if ((this.options.maxFiles != null) && this.getAcceptedFiles().length >= this.options.maxFiles) { + if (this.getAcceptedFiles().length === this.options.maxFiles) { + this.emit('maxfilesreached', this.files); + } + return this.element.classList.add("dz-max-files-reached"); + } else { + return this.element.classList.remove("dz-max-files-reached"); + } + }; + + Dropzone.prototype.drop = function(e) { + var files, items; + if (!e.dataTransfer) { + return; + } + this.emit("drop", e); + files = e.dataTransfer.files; + if (files.length) { + items = e.dataTransfer.items; + if (items && items.length && (items[0].webkitGetAsEntry != null)) { + this._addFilesFromItems(items); + } else { + this.handleFiles(files); + } + } + }; + + Dropzone.prototype.paste = function(e) { + var items, _ref; + if ((e != null ? (_ref = e.clipboardData) != null ? _ref.items : void 0 : void 0) == null) { + return; + } + this.emit("paste", e); + items = e.clipboardData.items; + if (items.length) { + return this._addFilesFromItems(items); + } + }; + + Dropzone.prototype.handleFiles = function(files) { + var file, _i, _len, _results; + _results = []; + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + _results.push(this.addFile(file)); + } + return _results; + }; + + Dropzone.prototype._addFilesFromItems = function(items) { + var entry, item, _i, _len, _results; + _results = []; + for (_i = 0, _len = items.length; _i < _len; _i++) { + item = items[_i]; + if ((item.webkitGetAsEntry != null) && (entry = item.webkitGetAsEntry())) { + if (entry.isFile) { + _results.push(this.addFile(item.getAsFile())); + } else if (entry.isDirectory) { + _results.push(this._addFilesFromDirectory(entry, entry.name)); + } else { + _results.push(void 0); + } + } else if (item.getAsFile != null) { + if ((item.kind == null) || item.kind === "file") { + _results.push(this.addFile(item.getAsFile())); + } else { + _results.push(void 0); + } + } else { + _results.push(void 0); + } + } + return _results; + }; + + Dropzone.prototype._addFilesFromDirectory = function(directory, path) { + var dirReader, entriesReader; + dirReader = directory.createReader(); + entriesReader = (function(_this) { + return function(entries) { + var entry, _i, _len; + for (_i = 0, _len = entries.length; _i < _len; _i++) { + entry = entries[_i]; + if (entry.isFile) { + entry.file(function(file) { + if (_this.options.ignoreHiddenFiles && file.name.substring(0, 1) === '.') { + return; + } + file.fullPath = "" + path + "/" + file.name; + return _this.addFile(file); + }); + } else if (entry.isDirectory) { + _this._addFilesFromDirectory(entry, "" + path + "/" + entry.name); + } + } + }; + })(this); + return dirReader.readEntries(entriesReader, function(error) { + return typeof console !== "undefined" && console !== null ? typeof console.log === "function" ? console.log(error) : void 0 : void 0; + }); + }; + + Dropzone.prototype.accept = function(file, done) { + if (file.size > this.options.maxFilesize * 1024 * 1024) { + return done(this.options.dictFileTooBig.replace("{{filesize}}", Math.round(file.size / 1024 / 10.24) / 100).replace("{{maxFilesize}}", this.options.maxFilesize)); + } else if (!Dropzone.isValidFile(file, this.options.acceptedFiles)) { + return done(this.options.dictInvalidFileType); + } else if ((this.options.maxFiles != null) && this.getAcceptedFiles().length >= this.options.maxFiles) { + done(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}", this.options.maxFiles)); + return this.emit("maxfilesexceeded", file); + } else { + return this.options.accept.call(this, file, done); + } + }; + + Dropzone.prototype.addFile = function(file) { + file.upload = { + progress: 0, + total: file.size, + bytesSent: 0 + }; + this.files.push(file); + file.status = Dropzone.ADDED; + this.emit("addedfile", file); + this._enqueueThumbnail(file); + return this.accept(file, (function(_this) { + return function(error) { + if (error) { + file.accepted = false; + _this._errorProcessing([file], error); + } else { + file.accepted = true; + if (_this.options.autoQueue) { + _this.enqueueFile(file); + } + } + return _this._updateMaxFilesReachedClass(); + }; + })(this)); + }; + + Dropzone.prototype.enqueueFiles = function(files) { + var file, _i, _len; + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + this.enqueueFile(file); + } + return null; + }; + + Dropzone.prototype.enqueueFile = function(file) { + if (file.status === Dropzone.ADDED && file.accepted === true) { + file.status = Dropzone.QUEUED; + if (this.options.autoProcessQueue) { + return setTimeout(((function(_this) { + return function() { + return _this.processQueue(); + }; + })(this)), 0); + } + } else { + throw new Error("This file can't be queued because it has already been processed or was rejected."); + } + }; + + Dropzone.prototype._thumbnailQueue = []; + + Dropzone.prototype._processingThumbnail = false; + + Dropzone.prototype._enqueueThumbnail = function(file) { + if (this.options.createImageThumbnails && file.type.match(/image.*/) && file.size <= this.options.maxThumbnailFilesize * 1024 * 1024) { + this._thumbnailQueue.push(file); + return setTimeout(((function(_this) { + return function() { + return _this._processThumbnailQueue(); + }; + })(this)), 0); + } + }; + + Dropzone.prototype._processThumbnailQueue = function() { + if (this._processingThumbnail || this._thumbnailQueue.length === 0) { + return; + } + this._processingThumbnail = true; + return this.createThumbnail(this._thumbnailQueue.shift(), (function(_this) { + return function() { + _this._processingThumbnail = false; + return _this._processThumbnailQueue(); + }; + })(this)); + }; + + Dropzone.prototype.removeFile = function(file) { + if (file.status === Dropzone.UPLOADING) { + this.cancelUpload(file); + } + this.files = without(this.files, file); + this.emit("removedfile", file); + if (this.files.length === 0) { + return this.emit("reset"); + } + }; + + Dropzone.prototype.removeAllFiles = function(cancelIfNecessary) { + var file, _i, _len, _ref; + if (cancelIfNecessary == null) { + cancelIfNecessary = false; + } + _ref = this.files.slice(); + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (file.status !== Dropzone.UPLOADING || cancelIfNecessary) { + this.removeFile(file); + } + } + return null; + }; + + Dropzone.prototype.createThumbnail = function(file, callback) { + var fileReader; + fileReader = new FileReader; + fileReader.onload = (function(_this) { + return function() { + var img; + img = document.createElement("img"); + img.onload = function() { + var canvas, ctx, resizeInfo, thumbnail, _ref, _ref1, _ref2, _ref3; + file.width = img.width; + file.height = img.height; + resizeInfo = _this.options.resize.call(_this, file); + if (resizeInfo.trgWidth == null) { + resizeInfo.trgWidth = resizeInfo.optWidth; + } + if (resizeInfo.trgHeight == null) { + resizeInfo.trgHeight = resizeInfo.optHeight; + } + canvas = document.createElement("canvas"); + ctx = canvas.getContext("2d"); + canvas.width = resizeInfo.trgWidth; + canvas.height = resizeInfo.trgHeight; + drawImageIOSFix(ctx, img, (_ref = resizeInfo.srcX) != null ? _ref : 0, (_ref1 = resizeInfo.srcY) != null ? _ref1 : 0, resizeInfo.srcWidth, resizeInfo.srcHeight, (_ref2 = resizeInfo.trgX) != null ? _ref2 : 0, (_ref3 = resizeInfo.trgY) != null ? _ref3 : 0, resizeInfo.trgWidth, resizeInfo.trgHeight); + thumbnail = canvas.toDataURL("image/png"); + _this.emit("thumbnail", file, thumbnail); + if (callback != null) { + return callback(); + } + }; + return img.src = fileReader.result; + }; + })(this); + return fileReader.readAsDataURL(file); + }; + + Dropzone.prototype.processQueue = function() { + var i, parallelUploads, processingLength, queuedFiles; + parallelUploads = this.options.parallelUploads; + processingLength = this.getUploadingFiles().length; + i = processingLength; + if (processingLength >= parallelUploads) { + return; + } + queuedFiles = this.getQueuedFiles(); + if (!(queuedFiles.length > 0)) { + return; + } + if (this.options.uploadMultiple) { + return this.processFiles(queuedFiles.slice(0, parallelUploads - processingLength)); + } else { + while (i < parallelUploads) { + if (!queuedFiles.length) { + return; + } + this.processFile(queuedFiles.shift()); + i++; + } + } + }; + + Dropzone.prototype.processFile = function(file) { + return this.processFiles([file]); + }; + + Dropzone.prototype.processFiles = function(files) { + var file, _i, _len; + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + file.processing = true; + file.status = Dropzone.UPLOADING; + this.emit("processing", file); + } + if (this.options.uploadMultiple) { + this.emit("processingmultiple", files); + } + return this.uploadFiles(files); + }; + + Dropzone.prototype._getFilesWithXhr = function(xhr) { + var file, files; + return files = (function() { + var _i, _len, _ref, _results; + _ref = this.files; + _results = []; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + file = _ref[_i]; + if (file.xhr === xhr) { + _results.push(file); + } + } + return _results; + }).call(this); + }; + + Dropzone.prototype.cancelUpload = function(file) { + var groupedFile, groupedFiles, _i, _j, _len, _len1, _ref; + if (file.status === Dropzone.UPLOADING) { + groupedFiles = this._getFilesWithXhr(file.xhr); + for (_i = 0, _len = groupedFiles.length; _i < _len; _i++) { + groupedFile = groupedFiles[_i]; + groupedFile.status = Dropzone.CANCELED; + } + file.xhr.abort(); + for (_j = 0, _len1 = groupedFiles.length; _j < _len1; _j++) { + groupedFile = groupedFiles[_j]; + this.emit("canceled", groupedFile); + } + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", groupedFiles); + } + } else if ((_ref = file.status) === Dropzone.ADDED || _ref === Dropzone.QUEUED) { + file.status = Dropzone.CANCELED; + this.emit("canceled", file); + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", [file]); + } + } + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + }; + + Dropzone.prototype.uploadFile = function(file) { + return this.uploadFiles([file]); + }; + + Dropzone.prototype.uploadFiles = function(files) { + var file, formData, handleError, headerName, headerValue, headers, i, input, inputName, inputType, key, option, progressObj, response, updateProgress, value, xhr, _i, _j, _k, _l, _len, _len1, _len2, _len3, _m, _ref, _ref1, _ref2, _ref3, _ref4, _ref5; + xhr = new XMLHttpRequest(); + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + file.xhr = xhr; + } + xhr.open(this.options.method, this.options.url, true); + xhr.withCredentials = !!this.options.withCredentials; + response = null; + handleError = (function(_this) { + return function() { + var _j, _len1, _results; + _results = []; + for (_j = 0, _len1 = files.length; _j < _len1; _j++) { + file = files[_j]; + _results.push(_this._errorProcessing(files, response || _this.options.dictResponseError.replace("{{statusCode}}", xhr.status), xhr)); + } + return _results; + }; + })(this); + updateProgress = (function(_this) { + return function(e) { + var allFilesFinished, progress, _j, _k, _l, _len1, _len2, _len3, _results; + if (e != null) { + progress = 100 * e.loaded / e.total; + for (_j = 0, _len1 = files.length; _j < _len1; _j++) { + file = files[_j]; + file.upload = { + progress: progress, + total: e.total, + bytesSent: e.loaded + }; + } + } else { + allFilesFinished = true; + progress = 100; + for (_k = 0, _len2 = files.length; _k < _len2; _k++) { + file = files[_k]; + if (!(file.upload.progress === 100 && file.upload.bytesSent === file.upload.total)) { + allFilesFinished = false; + } + file.upload.progress = progress; + file.upload.bytesSent = file.upload.total; + } + if (allFilesFinished) { + return; + } + } + _results = []; + for (_l = 0, _len3 = files.length; _l < _len3; _l++) { + file = files[_l]; + _results.push(_this.emit("uploadprogress", file, progress, file.upload.bytesSent)); + } + return _results; + }; + })(this); + xhr.onload = (function(_this) { + return function(e) { + var _ref; + if (files[0].status === Dropzone.CANCELED) { + return; + } + if (xhr.readyState !== 4) { + return; + } + response = xhr.responseText; + if (xhr.getResponseHeader("content-type") && ~xhr.getResponseHeader("content-type").indexOf("application/json")) { + try { + response = JSON.parse(response); + } catch (_error) { + e = _error; + response = "Invalid JSON response from server."; + } + } + updateProgress(); + if (!((200 <= (_ref = xhr.status) && _ref < 300))) { + return handleError(); + } else { + return _this._finished(files, response, e); + } + }; + })(this); + xhr.onerror = (function(_this) { + return function() { + if (files[0].status === Dropzone.CANCELED) { + return; + } + return handleError(); + }; + })(this); + progressObj = (_ref = xhr.upload) != null ? _ref : xhr; + progressObj.onprogress = updateProgress; + headers = { + "Accept": "application/json", + "Cache-Control": "no-cache", + "X-Requested-With": "XMLHttpRequest" + }; + if (this.options.headers) { + extend(headers, this.options.headers); + } + for (headerName in headers) { + headerValue = headers[headerName]; + xhr.setRequestHeader(headerName, headerValue); + } + formData = new FormData(); + if (this.options.params) { + _ref1 = this.options.params; + for (key in _ref1) { + value = _ref1[key]; + formData.append(key, value); + } + } + for (_j = 0, _len1 = files.length; _j < _len1; _j++) { + file = files[_j]; + this.emit("sending", file, xhr, formData); + } + if (this.options.uploadMultiple) { + this.emit("sendingmultiple", files, xhr, formData); + } + if (this.element.tagName === "FORM") { + _ref2 = this.element.querySelectorAll("input, textarea, select, button"); + for (_k = 0, _len2 = _ref2.length; _k < _len2; _k++) { + input = _ref2[_k]; + inputName = input.getAttribute("name"); + inputType = input.getAttribute("type"); + if (input.tagName === "SELECT" && input.hasAttribute("multiple")) { + _ref3 = input.options; + for (_l = 0, _len3 = _ref3.length; _l < _len3; _l++) { + option = _ref3[_l]; + if (option.selected) { + formData.append(inputName, option.value); + } + } + } else if (!inputType || ((_ref4 = inputType.toLowerCase()) !== "checkbox" && _ref4 !== "radio") || input.checked) { + formData.append(inputName, input.value); + } + } + } + for (i = _m = 0, _ref5 = files.length - 1; 0 <= _ref5 ? _m <= _ref5 : _m >= _ref5; i = 0 <= _ref5 ? ++_m : --_m) { + formData.append(this._getParamName(i), files[i], files[i].name); + } + return xhr.send(formData); + }; + + Dropzone.prototype._finished = function(files, responseText, e) { + var file, _i, _len; + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + file.status = Dropzone.SUCCESS; + this.emit("success", file, responseText, e); + this.emit("complete", file); + } + if (this.options.uploadMultiple) { + this.emit("successmultiple", files, responseText, e); + this.emit("completemultiple", files); + } + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + }; + + Dropzone.prototype._errorProcessing = function(files, message, xhr) { + var file, _i, _len; + for (_i = 0, _len = files.length; _i < _len; _i++) { + file = files[_i]; + file.status = Dropzone.ERROR; + this.emit("error", file, message, xhr); + this.emit("complete", file); + } + if (this.options.uploadMultiple) { + this.emit("errormultiple", files, message, xhr); + this.emit("completemultiple", files); + } + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + }; + + return Dropzone; + + })(Em); + + Dropzone.version = "3.10.2"; + + Dropzone.options = {}; + + Dropzone.optionsForElement = function(element) { + if (element.getAttribute("id")) { + return Dropzone.options[camelize(element.getAttribute("id"))]; + } else { + return void 0; + } + }; + + Dropzone.instances = []; + + Dropzone.forElement = function(element) { + if (typeof element === "string") { + element = document.querySelector(element); + } + if ((element != null ? element.dropzone : void 0) == null) { + throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone."); + } + return element.dropzone; + }; + + Dropzone.autoDiscover = true; + + Dropzone.discover = function() { + var checkElements, dropzone, dropzones, _i, _len, _results; + if (document.querySelectorAll) { + dropzones = document.querySelectorAll(".dropzone"); + } else { + dropzones = []; + checkElements = function(elements) { + var el, _i, _len, _results; + _results = []; + for (_i = 0, _len = elements.length; _i < _len; _i++) { + el = elements[_i]; + if (/(^| )dropzone($| )/.test(el.className)) { + _results.push(dropzones.push(el)); + } else { + _results.push(void 0); + } + } + return _results; + }; + checkElements(document.getElementsByTagName("div")); + checkElements(document.getElementsByTagName("form")); + } + _results = []; + for (_i = 0, _len = dropzones.length; _i < _len; _i++) { + dropzone = dropzones[_i]; + if (Dropzone.optionsForElement(dropzone) !== false) { + _results.push(new Dropzone(dropzone)); + } else { + _results.push(void 0); + } + } + return _results; + }; + + Dropzone.blacklistedBrowsers = [/opera.*Macintosh.*version\/12/i]; + + Dropzone.isBrowserSupported = function() { + var capableBrowser, regex, _i, _len, _ref; + capableBrowser = true; + if (window.File && window.FileReader && window.FileList && window.Blob && window.FormData && document.querySelector) { + if (!("classList" in document.createElement("a"))) { + capableBrowser = false; + } else { + _ref = Dropzone.blacklistedBrowsers; + for (_i = 0, _len = _ref.length; _i < _len; _i++) { + regex = _ref[_i]; + if (regex.test(navigator.userAgent)) { + capableBrowser = false; + continue; + } + } + } + } else { + capableBrowser = false; + } + return capableBrowser; + }; + + without = function(list, rejectedItem) { + var item, _i, _len, _results; + _results = []; + for (_i = 0, _len = list.length; _i < _len; _i++) { + item = list[_i]; + if (item !== rejectedItem) { + _results.push(item); + } + } + return _results; + }; + + camelize = function(str) { + return str.replace(/[\-_](\w)/g, function(match) { + return match.charAt(1).toUpperCase(); + }); + }; + + Dropzone.createElement = function(string) { + var div; + div = document.createElement("div"); + div.innerHTML = string; + return div.childNodes[0]; + }; + + Dropzone.elementInside = function(element, container) { + if (element === container) { + return true; + } + while (element = element.parentNode) { + if (element === container) { + return true; + } + } + return false; + }; + + Dropzone.getElement = function(el, name) { + var element; + if (typeof el === "string") { + element = document.querySelector(el); + } else if (el.nodeType != null) { + element = el; + } + if (element == null) { + throw new Error("Invalid `" + name + "` option provided. Please provide a CSS selector or a plain HTML element."); + } + return element; + }; + + Dropzone.getElements = function(els, name) { + var e, el, elements, _i, _j, _len, _len1, _ref; + if (els instanceof Array) { + elements = []; + try { + for (_i = 0, _len = els.length; _i < _len; _i++) { + el = els[_i]; + elements.push(this.getElement(el, name)); + } + } catch (_error) { + e = _error; + elements = null; + } + } else if (typeof els === "string") { + elements = []; + _ref = document.querySelectorAll(els); + for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) { + el = _ref[_j]; + elements.push(el); + } + } else if (els.nodeType != null) { + elements = [els]; + } + if (!((elements != null) && elements.length)) { + throw new Error("Invalid `" + name + "` option provided. Please provide a CSS selector, a plain HTML element or a list of those."); + } + return elements; + }; + + Dropzone.confirm = function(question, accepted, rejected) { + if (window.confirm(question)) { + return accepted(); + } else if (rejected != null) { + return rejected(); + } + }; + + Dropzone.isValidFile = function(file, acceptedFiles) { + var baseMimeType, mimeType, validType, _i, _len; + if (!acceptedFiles) { + return true; + } + acceptedFiles = acceptedFiles.split(","); + mimeType = file.type; + baseMimeType = mimeType.replace(/\/.*$/, ""); + for (_i = 0, _len = acceptedFiles.length; _i < _len; _i++) { + validType = acceptedFiles[_i]; + validType = validType.trim(); + if (validType.charAt(0) === ".") { + if (file.name.toLowerCase().indexOf(validType.toLowerCase(), file.name.length - validType.length) !== -1) { + return true; + } + } else if (/\/\*$/.test(validType)) { + if (baseMimeType === validType.replace(/\/.*$/, "")) { + return true; + } + } else { + if (mimeType === validType) { + return true; + } + } + } + return false; + }; + + if (typeof jQuery !== "undefined" && jQuery !== null) { + jQuery.fn.dropzone = function(options) { + return this.each(function() { + return new Dropzone(this, options); + }); + }; + } + + if (typeof module !== "undefined" && module !== null) { + module.exports = Dropzone; + } else { + window.Dropzone = Dropzone; + } + + Dropzone.ADDED = "added"; + + Dropzone.QUEUED = "queued"; + + Dropzone.ACCEPTED = Dropzone.QUEUED; + + Dropzone.UPLOADING = "uploading"; + + Dropzone.PROCESSING = Dropzone.UPLOADING; + + Dropzone.CANCELED = "canceled"; + + Dropzone.ERROR = "error"; + + Dropzone.SUCCESS = "success"; + + + /* + + Bugfix for iOS 6 and 7 + Source: http://stackoverflow.com/questions/11929099/html5-canvas-drawimage-ratio-bug-ios + based on the work of https://github.com/stomita/ios-imagefile-megapixel + */ + + detectVerticalSquash = function(img) { + var alpha, canvas, ctx, data, ey, ih, iw, py, ratio, sy; + iw = img.naturalWidth; + ih = img.naturalHeight; + canvas = document.createElement("canvas"); + canvas.width = 1; + canvas.height = ih; + ctx = canvas.getContext("2d"); + ctx.drawImage(img, 0, 0); + data = ctx.getImageData(0, 0, 1, ih).data; + sy = 0; + ey = ih; + py = ih; + while (py > sy) { + alpha = data[(py - 1) * 4 + 3]; + if (alpha === 0) { + ey = py; + } else { + sy = py; + } + py = (ey + sy) >> 1; + } + ratio = py / ih; + if (ratio === 0) { + return 1; + } else { + return ratio; + } + }; + + drawImageIOSFix = function(ctx, img, sx, sy, sw, sh, dx, dy, dw, dh) { + var vertSquashRatio; + vertSquashRatio = detectVerticalSquash(img); + return ctx.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh / vertSquashRatio); + }; + + + /* + * contentloaded.js + * + * Author: Diego Perini (diego.perini at gmail.com) + * Summary: cross-browser wrapper for DOMContentLoaded + * Updated: 20101020 + * License: MIT + * Version: 1.2 + * + * URL: + * http://javascript.nwbox.com/ContentLoaded/ + * http://javascript.nwbox.com/ContentLoaded/MIT-LICENSE + */ + + contentLoaded = function(win, fn) { + var add, doc, done, init, poll, pre, rem, root, top; + done = false; + top = true; + doc = win.document; + root = doc.documentElement; + add = (doc.addEventListener ? "addEventListener" : "attachEvent"); + rem = (doc.addEventListener ? "removeEventListener" : "detachEvent"); + pre = (doc.addEventListener ? "" : "on"); + init = function(e) { + if (e.type === "readystatechange" && doc.readyState !== "complete") { + return; + } + (e.type === "load" ? win : doc)[rem](pre + e.type, init, false); + if (!done && (done = true)) { + return fn.call(win, e.type || e); + } + }; + poll = function() { + var e; + try { + root.doScroll("left"); + } catch (_error) { + e = _error; + setTimeout(poll, 50); + return; + } + return init("poll"); + }; + if (doc.readyState !== "complete") { + if (doc.createEventObject && root.doScroll) { + try { + top = !win.frameElement; + } catch (_error) {} + if (top) { + poll(); + } + } + doc[add](pre + "DOMContentLoaded", init, false); + doc[add](pre + "readystatechange", init, false); + return win[add](pre + "load", init, false); + } + }; + + Dropzone._autoDiscoverFunction = function() { + if (Dropzone.autoDiscover) { + return Dropzone.discover(); + } + }; + + contentLoaded(window, Dropzone._autoDiscoverFunction); + +}).call(this); + +}); + +if (typeof exports == "object") { + module.exports = require("dropzone"); +} else if (typeof define == "function" && define.amd) { + define([], function(){ return require("dropzone"); }); +} else { + this["Dropzone"] = require("dropzone"); +} +})() diff --git a/dropzone/images/spritemap.png b/dropzone/images/spritemap.png new file mode 100644 index 00000000..9f213145 Binary files /dev/null and b/dropzone/images/spritemap.png differ diff --git a/dropzone/images/spritemap@2x.png b/dropzone/images/spritemap@2x.png new file mode 100644 index 00000000..e877eea6 Binary files /dev/null and b/dropzone/images/spritemap@2x.png differ diff --git a/fotomaton_data/options b/fotomaton_data/options new file mode 100644 index 00000000..813d5e25 --- /dev/null +++ b/fotomaton_data/options @@ -0,0 +1,24832 @@ +29 243.2699585 21.43593788 13.08315659 +7 2.189726353 1 +1.60775888 + -12.44906521 -1 + 2 24 24 576 + 1 4 6 19 8 + -1 4 9 19 11 + +1.502977848 + -15.02904415 -1 + 2 24 24 576 + 1 0 0 5 4 + -1 6 0 11 4 + +1.087867975 + -3.684902191 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +1.06337142 + 24.7965641 1 + 2 24 24 576 + 1 16 0 19 14 + -1 20 0 23 14 + +0.8430469632 + 2.371661901 1 + 2 24 24 576 + 1 9 2 13 8 + -1 14 2 18 8 + +0.6867483854 + 3.354611874 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.6726299524 + -1.042714715 -1 + 3 24 24 576 + 1 8 17 23 20 + -2 16 17 23 18 + -2 8 19 15 20 + + +17 4.182641983 1 +1.335809708 + 35.38222885 1 + 2 24 24 576 + 1 5 1 18 12 + -2 5 5 18 8 + +1.049999356 + -6.528369427 -1 + 3 24 24 576 + 1 5 3 12 14 + -2 9 3 12 8 + -2 5 9 8 14 + +0.8712562323 + 2.516282797 1 + 2 24 24 576 + 1 12 2 13 9 + -1 14 2 15 9 + +0.8511465788 + 6.5815835 1 + 2 24 24 576 + 1 16 9 19 12 + -1 20 9 23 12 + +0.7971076965 + -3.704728842 -1 + 2 24 24 576 + 1 16 5 23 7 + -1 16 8 23 10 + +0.6727406383 + 1.530826688 1 + 2 24 24 576 + 1 8 20 15 21 + -1 8 22 15 23 + +0.5741833448 + -16.26726913 -1 + 2 24 24 576 + 1 16 12 19 22 + -1 20 12 23 22 + +0.6471619606 + 0.2359302342 1 + 2 24 24 576 + 1 6 10 10 13 + -1 6 14 10 17 + +0.5655707717 + 1.317279458 1 + 3 24 24 576 + 1 4 17 11 20 + -2 8 17 11 18 + -2 4 19 7 20 + +0.5134094954 + -2.291475296 -1 + 2 24 24 576 + 1 8 2 9 11 + -1 10 2 11 11 + +0.5232805014 + -7.464395046 -1 + 2 24 24 576 + 1 0 8 2 13 + -1 3 8 5 13 + +0.5366355181 + -1.866916776 -1 + 2 24 24 576 + 1 1 6 13 8 + -1 1 9 13 11 + +0.649946332 + 27.33065033 1 + 2 24 24 576 + 1 0 11 4 23 + -1 5 11 9 23 + +0.6329366565 + -59.69477844 1 + 2 24 24 576 + 1 0 4 13 9 + -1 0 10 13 15 + +0.5778627992 + 22.84745979 1 + 2 24 24 576 + 1 9 18 15 22 + -1 16 18 22 22 + +0.5318611264 + -0.9909299612 -1 + 2 24 24 576 + 1 0 1 4 5 + -1 0 6 4 10 + +0.5328894854 + 6.517348289 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + + +27 6.789980412 1 +1.046488285 + -4.900272369 -1 + 2 24 24 576 + 1 1 9 3 14 + -1 4 9 6 14 + +0.954906106 + 4.335098267 1 + 3 24 24 576 + 1 12 4 17 15 + -2 15 4 17 9 + -2 12 10 14 15 + +0.8859325051 + 9.437047958 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.8183198571 + -1.301995397 -1 + 3 24 24 576 + 1 1 3 8 6 + -2 5 3 8 4 + -2 1 5 4 6 + +0.7775657773 + -3.639801979 -1 + 2 24 24 576 + 1 12 6 18 8 + -1 12 9 18 11 + +0.7766319513 + 1.216302514 1 + 2 24 24 576 + 1 13 19 15 22 + -1 16 19 18 22 + +0.7184380293 + -2.695829868 -1 + 2 24 24 576 + 1 8 3 9 9 + -1 10 3 11 9 + +0.676091671 + 13.49700356 1 + 2 24 24 576 + 1 0 11 3 23 + -1 4 11 7 23 + +0.6296637058 + -2.596421957 -1 + 2 24 24 576 + 1 0 5 6 7 + -1 0 8 6 10 + +0.6558045745 + 2.012049198 1 + 3 24 24 576 + 1 5 18 12 21 + -2 9 18 12 19 + -2 5 20 8 21 + +0.549153924 + 1.421949387 1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.4712710977 + 0.8694388866 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.5321414471 + -25.96169472 1 + 2 24 24 576 + 1 9 4 16 10 + -1 9 11 16 17 + +0.5248985291 + -18.75376892 -1 + 2 24 24 576 + 1 12 19 17 23 + -1 18 19 23 23 + +0.5186476111 + 3.152172327 1 + 2 24 24 576 + 1 16 15 19 19 + -1 20 15 23 19 + +0.5634955168 + 27.50434494 -1 + 2 24 24 576 + 1 3 2 21 22 + -2 3 9 21 15 + +0.5402325392 + -4.388964176 -1 + 2 24 24 576 + 1 16 14 19 17 + -1 20 14 23 17 + +0.4850526452 + -2.171885729 -1 + 2 24 24 576 + 1 4 19 6 23 + -1 7 19 9 23 + +0.5281636119 + 1.199706793 1 + 2 24 24 576 + 1 12 0 13 12 + -1 14 0 15 12 + +0.4504517317 + 5.111145973 1 + 2 24 24 576 + 1 3 20 8 23 + -1 9 20 14 23 + +0.4616327882 + -0.6228820086 -1 + 2 24 24 576 + 1 6 7 13 8 + -1 6 9 13 10 + +0.5117502809 + 19.27917671 1 + 2 24 24 576 + 1 16 7 19 17 + -1 20 7 23 17 + +0.4549611807 + -0.3159214258 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.4308318198 + 0.6697784066 1 + 3 24 24 576 + 1 6 13 11 16 + -2 9 13 11 14 + -2 6 15 8 16 + +0.4527443051 + -33.27145767 1 + 3 24 24 576 + 1 3 3 18 16 + -2 11 3 18 9 + -2 3 10 10 16 + +0.4818036556 + 38.04964447 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.4209466577 + -10.50192928 1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + + +37 7.515573025 1 +0.9036548138 + 2.857674122 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.8781870008 + -3.684902191 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +0.800191164 + -11.43650341 -1 + 2 24 24 576 + 1 0 0 3 6 + -1 4 0 7 6 + +0.7836226225 + -6.11835289 -1 + 2 24 24 576 + 1 4 6 9 8 + -1 4 9 9 11 + +0.680359602 + -0.6745189428 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.6279224157 + 5.868354321 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.5959283113 + 1.503267407 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.5516713858 + -1.320324183 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.5021849871 + -1.142757058 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.4811511338 + 4.282935619 1 + 2 24 24 576 + 1 5 4 19 5 + -1 5 6 19 7 + +0.4519633055 + -1.622634292 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.4213128388 + -0.8311462998 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.4423943162 + -27.81843758 1 + 2 24 24 576 + 1 9 4 17 11 + -1 9 12 17 19 + +0.488348186 + -10.37080097 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.4691537917 + -33.41193008 1 + 3 24 24 576 + 1 2 3 19 16 + -2 11 3 19 9 + -2 2 10 10 16 + +0.5073951483 + 11.86195564 1 + 2 24 24 576 + 1 20 1 21 18 + -1 22 1 23 18 + +0.4201647937 + 0.3204751909 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.4287850857 + 7.944122791 -1 + 3 24 24 576 + 1 0 10 21 13 + -2 11 10 21 11 + -2 0 12 10 13 + +0.4657364488 + 117.734108 1 + 2 24 24 576 + 1 0 7 10 23 + -1 11 7 21 23 + +0.4393977821 + -2.78473711 -1 + 2 24 24 576 + 1 11 5 21 8 + -1 11 9 21 12 + +0.4133845568 + -58.59971237 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.4256559014 + 81.38430786 -1 + 2 24 24 576 + 1 7 9 23 14 + -1 7 15 23 20 + +0.5043514967 + -22.77321815 -1 + 2 24 24 576 + 1 12 18 17 23 + -1 18 18 23 23 + +0.4326112866 + 9.703892708 -1 + 2 24 24 576 + 1 6 0 7 21 + -1 8 0 9 21 + +0.4317902327 + 0.6882357001 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.3849427402 + 4.118377209 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.3769564033 + -2.665982008 -1 + 2 24 24 576 + 1 2 6 10 7 + -1 2 8 10 9 + +0.3923535943 + 2.819212914 1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.3585571647 + -0.5482999682 -1 + 3 24 24 576 + 1 4 2 7 5 + -2 6 2 7 3 + -2 4 4 5 5 + +0.3768526316 + -16.79064751 1 + 2 24 24 576 + 1 8 4 14 12 + -1 8 13 14 21 + +0.4328100085 + -5.966132164 -1 + 2 24 24 576 + 1 5 3 10 16 + -2 7 3 8 16 + +0.3489255607 + 2.266574144 1 + 2 24 24 576 + 1 13 0 14 7 + -1 15 0 16 7 + +0.3384918272 + 25.21159363 -1 + 2 24 24 576 + 1 11 3 14 14 + -1 15 3 18 14 + +0.4236792624 + -9.504296303 -1 + 2 24 24 576 + 1 1 19 4 22 + -1 5 19 8 22 + +0.3418581486 + -16.94450951 1 + 2 24 24 576 + 1 0 9 23 23 + -2 0 14 23 18 + +0.4154781103 + 19.89140129 1 + 2 24 24 576 + 1 0 20 6 23 + -1 7 20 13 23 + +0.3747553527 + -7.984161377 1 + 2 24 24 576 + 1 5 11 10 15 + -1 5 16 10 20 + + +47 8.172260284 1 +0.9563977718 + 42.19148254 1 + 2 24 24 576 + 1 5 1 18 12 + -2 5 5 18 8 + +0.7488291264 + -22.2736702 -1 + 2 24 24 576 + 1 0 0 2 17 + -1 3 0 5 17 + +0.6832164526 + 2.235133648 1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.6020050645 + 2.167277098 1 + 2 24 24 576 + 1 7 20 18 21 + -1 7 22 18 23 + +0.5835332274 + -32.80136108 -1 + 2 24 24 576 + 1 2 0 22 5 + -2 9 0 15 5 + +0.5000870824 + 11.60249329 1 + 2 24 24 576 + 1 18 0 20 10 + -1 21 0 23 10 + +0.5321363211 + -15.85781384 -1 + 2 24 24 576 + 1 1 6 18 8 + -1 1 9 18 11 + +0.4717562199 + 5.275272846 1 + 2 24 24 576 + 1 0 13 2 18 + -1 3 13 5 18 + +0.5051890612 + -7.144610882 1 + 2 24 24 576 + 1 10 6 13 9 + -1 10 10 13 13 + +0.4826920331 + -1.618379951 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.4071435928 + -12.80333996 -1 + 2 24 24 576 + 1 18 11 20 20 + -1 21 11 23 20 + +0.5157040954 + 4.878465176 -1 + 3 24 24 576 + 1 11 8 22 11 + -2 17 8 22 9 + -2 11 10 16 11 + +0.461522907 + -47.45781708 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.4213101864 + -16.99926186 1 + 2 24 24 576 + 1 2 8 22 11 + -2 9 8 15 11 + +0.4304614067 + -70.47142792 -1 + 2 24 24 576 + 1 6 2 14 22 + -1 15 2 23 22 + +0.4239175618 + 22.72576714 -1 + 3 24 24 576 + 1 4 4 19 17 + -2 12 4 19 10 + -2 4 11 11 17 + +0.4587869048 + 27.77305222 1 + 2 24 24 576 + 1 16 10 19 19 + -1 20 10 23 19 + +0.3990732729 + 2.811039209 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.3798722029 + -3.4301157 -1 + 2 24 24 576 + 1 16 5 19 9 + -1 16 10 19 14 + +0.3707179427 + -25.1218586 -1 + 2 24 24 576 + 1 0 0 5 17 + -2 0 6 5 11 + +0.3521222472 + 53.53899765 1 + 2 24 24 576 + 1 0 3 7 23 + -1 8 3 15 23 + +0.4359172583 + -24.14710426 1 + 2 24 24 576 + 1 10 8 16 15 + -1 10 16 16 23 + +0.3804900944 + 10.42566967 1 + 2 24 24 576 + 1 0 6 1 23 + -1 2 6 3 23 + +0.3757040799 + 0.9770140052 1 + 3 24 24 576 + 1 0 7 7 10 + -2 4 7 7 8 + -2 0 9 3 10 + +0.3316836953 + -5.647912502 -1 + 3 24 24 576 + 1 1 0 10 13 + -2 6 0 10 6 + -2 1 7 5 13 + +0.3612843156 + -6.858047009 -1 + 2 24 24 576 + 1 7 6 20 7 + -1 7 8 20 9 + +0.3317763805 + -6.594757557 -1 + 2 24 24 576 + 1 0 18 4 22 + -1 5 18 9 22 + +0.3240692019 + 2.329184771 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.3621691465 + 1.970546007 1 + 2 24 24 576 + 1 5 10 9 14 + -1 5 15 9 19 + +0.341752708 + -11.05226803 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.3858899474 + 16.55566406 -1 + 3 24 24 576 + 1 5 7 18 20 + -2 12 7 18 13 + -2 5 14 11 20 + +0.3346199989 + -49.7269249 -1 + 2 24 24 576 + 1 4 14 11 23 + -1 12 14 19 23 + +0.3523190916 + -0.9481970072 -1 + 2 24 24 576 + 1 7 2 8 8 + -1 9 2 10 8 + +0.3436526358 + -7.611616135 -1 + 2 24 24 576 + 1 21 1 23 15 + -2 22 1 22 15 + +0.3379884958 + 23.22499847 -1 + 2 24 24 576 + 1 8 4 13 11 + -1 8 12 13 19 + +0.3160767555 + 6.53153801 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.3045808971 + 0.8927270174 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.2892938256 + 0.3254933357 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.3300250173 + 0.1191368178 1 + 3 24 24 576 + 1 19 20 22 23 + -2 21 20 22 21 + -2 19 22 20 23 + +0.322542578 + 5.420724869 1 + 3 24 24 576 + 1 18 5 21 16 + -2 20 5 21 10 + -2 18 11 19 16 + +0.3627540767 + 5.829523563 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.3438130021 + 12.89655972 1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.3744007945 + -6.498498917 1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.3128483891 + -10.23209858 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.3368905187 + -16.77436638 1 + 3 24 24 576 + 1 3 5 22 14 + -2 13 5 22 9 + -2 3 10 12 14 + +0.3230880797 + -9.60356617 -1 + 2 24 24 576 + 1 7 5 19 6 + -1 7 7 19 8 + +0.3163973093 + -5.740058899 -1 + 2 24 24 576 + 1 0 8 19 9 + -1 0 10 19 11 + + +57 9.119967461 1 +1.020654202 + -7.36716032 -1 + 2 24 24 576 + 1 15 5 19 8 + -1 15 9 19 12 + +0.8359851241 + 2.522393227 1 + 3 24 24 576 + 1 4 17 11 20 + -2 8 17 11 18 + -2 4 19 7 20 + +0.717723608 + 52.2899704 1 + 2 24 24 576 + 1 5 1 18 12 + -2 5 5 18 8 + +0.6084480882 + -4.608808994 -1 + 3 24 24 576 + 1 5 4 14 13 + -2 10 4 14 8 + -2 5 9 9 13 + +0.5305166245 + 2.852346182 1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.4864948392 + 2.896943569 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.4792109728 + 0.2066604495 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.4293156564 + -2.102958918 -1 + 3 24 24 576 + 1 2 3 9 6 + -2 6 3 9 4 + -2 2 5 5 6 + +0.4364224672 + 11.86178207 1 + 2 24 24 576 + 1 18 0 20 10 + -1 21 0 23 10 + +0.3983974457 + 1.232605934 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.3727222383 + -18.69662285 -1 + 2 24 24 576 + 1 18 9 20 22 + -1 21 9 23 22 + +0.4637132883 + 22.95471382 -1 + 3 24 24 576 + 1 2 6 21 17 + -2 12 6 21 11 + -2 2 12 11 17 + +0.3866980076 + -1.664767861 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.3283075988 + -17.37124825 -1 + 2 24 24 576 + 1 0 0 11 13 + -2 4 0 7 13 + +0.3561277688 + 19.21297073 -1 + 2 24 24 576 + 1 5 9 22 12 + -2 11 9 16 12 + +0.4091887474 + 10.71865845 1 + 2 24 24 576 + 1 0 13 2 18 + -1 3 13 5 18 + +0.3874853253 + -5.65760994 1 + 3 24 24 576 + 1 1 8 12 11 + -2 7 8 12 9 + -2 1 10 6 11 + +0.3662482798 + 18.52721214 1 + 2 24 24 576 + 1 4 6 9 22 + -2 6 6 7 22 + +0.3736223578 + 1.421949387 1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.3075656891 + -2.034491777 -1 + 2 24 24 576 + 1 0 1 5 5 + -1 0 6 5 10 + +0.3136125505 + 1.208082199 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.3096440434 + 18.79131126 -1 + 2 24 24 576 + 1 13 10 17 14 + -1 13 15 17 19 + +0.3829943538 + -18.54607582 -1 + 2 24 24 576 + 1 1 10 3 16 + -1 4 10 6 16 + +0.3315480947 + 3.123427153 1 + 2 24 24 576 + 1 15 9 19 14 + -1 15 15 19 20 + +0.3449122012 + -23.64287758 -1 + 2 24 24 576 + 1 6 6 17 20 + -2 10 6 13 20 + +0.3798737526 + 10.98490906 -1 + 2 24 24 576 + 1 6 0 7 21 + -1 8 0 9 21 + +0.3290859163 + 3.393871784 1 + 3 24 24 576 + 1 0 16 7 21 + -2 4 16 7 18 + -2 0 19 3 21 + +0.3273636699 + -3.298791647 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.3436067402 + -33.3696022 1 + 2 24 24 576 + 1 0 7 20 11 + -2 7 7 13 11 + +0.3330842853 + -23.83768082 -1 + 2 24 24 576 + 1 17 10 19 22 + -1 20 10 22 22 + +0.3451339006 + -13.04082394 1 + 3 24 24 576 + 1 5 6 18 17 + -2 12 6 18 11 + -2 5 12 11 17 + +0.299513936 + 3.998938084 1 + 2 24 24 576 + 1 16 16 18 19 + -1 19 16 21 19 + +0.300903976 + -4.765114307 -1 + 3 24 24 576 + 1 9 5 12 20 + -2 11 5 12 12 + -2 9 13 10 20 + +0.3236088157 + -9.101639748 1 + 3 24 24 576 + 1 3 13 20 18 + -2 12 13 20 15 + -2 3 16 11 18 + +0.289108187 + 1.579367757 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.2955945432 + 5.825768948 -1 + 3 24 24 576 + 1 8 7 23 10 + -2 16 7 23 8 + -2 8 9 15 10 + +0.3132407069 + 19.21230125 1 + 2 24 24 576 + 1 2 19 22 22 + -2 9 19 15 22 + +0.3106356263 + -0.0350256376 -1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.3257161975 + -0.3429379165 -1 + 2 24 24 576 + 1 18 4 23 6 + -1 18 7 23 9 + +0.2851018906 + -0.9501712322 -1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.2871433198 + -12.37670517 1 + 2 24 24 576 + 1 9 4 17 11 + -1 9 12 17 19 + +0.3275773525 + -39.16028976 -1 + 2 24 24 576 + 1 0 10 3 21 + -1 4 10 7 21 + +0.2837513685 + 12.42607784 -1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.3363457024 + 6.430215836 1 + 2 24 24 576 + 1 0 3 1 11 + -1 2 3 3 11 + +0.2958016396 + -12.03807545 1 + 2 24 24 576 + 1 10 14 16 17 + -1 10 18 16 21 + +0.2911463976 + -8.241746902 -1 + 2 24 24 576 + 1 2 5 9 6 + -1 2 7 9 8 + +0.2944189906 + -0.4642202258 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.2724127471 + 1.347017765 1 + 3 24 24 576 + 1 20 19 23 22 + -2 22 19 23 20 + -2 20 21 21 22 + +0.3753928244 + 15.09554195 -1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.2946619987 + 8.910149574 1 + 3 24 24 576 + 1 18 0 23 5 + -2 21 0 23 2 + -2 18 3 20 5 + +0.3269197345 + -11.6060667 1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.2862811387 + 3.946760654 1 + 2 24 24 576 + 1 4 4 11 5 + -1 4 6 11 7 + +0.2563479245 + -0.7225746512 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2674328685 + 0.3925290406 -1 + 3 24 24 576 + 1 20 15 23 18 + -2 22 15 23 16 + -2 20 17 21 18 + +0.2664458454 + -114.960968 -1 + 2 24 24 576 + 1 2 0 12 18 + -1 13 0 23 18 + +0.3292267323 + -9.549004555 1 + 2 24 24 576 + 1 12 9 15 12 + -1 16 9 19 12 + +0.3077944219 + -34.62617493 -1 + 2 24 24 576 + 1 19 0 23 23 + -2 19 8 23 15 + + +67 10.09063911 1 +0.9554007053 + -17.72841644 -1 + 2 24 24 576 + 1 0 0 5 4 + -1 6 0 11 4 + +0.7538668513 + 5.775004864 1 + 2 24 24 576 + 1 16 9 19 12 + -1 20 9 23 12 + +0.5527569652 + 3.412308693 1 + 2 24 24 576 + 1 5 20 17 21 + -1 5 22 17 23 + +0.509619534 + 3.671520948 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.4724518657 + -3.542165279 -1 + 3 24 24 576 + 1 8 17 23 20 + -2 16 17 23 18 + -2 8 19 15 20 + +0.4325566888 + -3.3855443 -1 + 3 24 24 576 + 1 7 5 12 14 + -2 10 5 12 9 + -2 7 10 9 14 + +0.452586472 + -38.24864578 -1 + 2 24 24 576 + 1 12 11 17 23 + -1 18 11 23 23 + +0.4364044964 + 0.5754176974 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.4222609699 + -4.519569874 -1 + 2 24 24 576 + 1 0 9 2 12 + -1 3 9 5 12 + +0.3752411008 + 0.337605536 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.3755320013 + -9.893547058 -1 + 2 24 24 576 + 1 6 6 20 7 + -1 6 8 20 9 + +0.3385001719 + 0.4692752659 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.3812191784 + 43.31397247 1 + 2 24 24 576 + 1 0 6 3 23 + -1 4 6 7 23 + +0.423070401 + 12.4341011 -1 + 3 24 24 576 + 1 3 13 20 18 + -2 12 13 20 15 + -2 3 16 11 18 + +0.3770385087 + -50.03409958 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.3456926346 + 0.2765506208 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.3147267997 + -62.94262314 -1 + 2 24 24 576 + 1 5 0 13 22 + -1 14 0 22 22 + +0.395478189 + -4.957380295 -1 + 2 24 24 576 + 1 0 6 15 8 + -1 0 9 15 11 + +0.3371892869 + 40.08773041 1 + 2 24 24 576 + 1 0 14 9 23 + -1 10 14 19 23 + +0.3317121863 + 20.30417061 -1 + 2 24 24 576 + 1 13 10 17 14 + -1 13 15 17 19 + +0.3770614266 + 55.41518402 1 + 2 24 24 576 + 1 16 2 19 17 + -1 20 2 23 17 + +0.3516994715 + 0.5833292007 1 + 2 24 24 576 + 1 13 11 18 13 + -1 13 14 18 16 + +0.3480819166 + -19.9571209 -1 + 2 24 24 576 + 1 18 4 20 22 + -1 21 4 23 22 + +0.3725239336 + -21.35070229 1 + 3 24 24 576 + 1 3 4 20 17 + -2 12 4 20 10 + -2 3 11 11 17 + +0.3270827234 + -2.28568244 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.3103483021 + 12.69876575 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2988932133 + 6.828709602 -1 + 2 24 24 576 + 1 6 2 7 15 + -1 8 2 9 15 + +0.3889842629 + -13.57075882 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.3327559829 + 0.5851014853 1 + 2 24 24 576 + 1 11 10 22 11 + -1 11 12 22 13 + +0.2978925705 + 2.309047222 1 + 2 24 24 576 + 1 2 15 5 18 + -1 2 19 5 22 + +0.2865828574 + -3.369865417 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.3715466857 + 116.5774689 1 + 2 24 24 576 + 1 0 0 10 19 + -1 11 0 21 19 + +0.3206729293 + 27.49258804 -1 + 2 24 24 576 + 1 9 4 16 10 + -1 9 11 16 17 + +0.3463900387 + 4.084321022 1 + 2 24 24 576 + 1 20 21 23 23 + -2 20 22 23 22 + +0.3169501126 + 1.003198504 -1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.26936391 + -0.8671665788 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.2824525535 + 2.075623035 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.3232005537 + -8.909752846 -1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.3026813269 + -6.702646732 1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.3161922097 + -9.321405411 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.3146348 + 1.971702456 1 + 2 24 24 576 + 1 5 10 9 14 + -1 5 15 9 19 + +0.2664824128 + -9.87115097 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.329321444 + -9.957657814 1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.2940541208 + -0.5900447369 -1 + 2 24 24 576 + 1 14 10 15 13 + -1 16 10 17 13 + +0.2825469375 + 15.62514591 1 + 2 24 24 576 + 1 4 20 10 23 + -1 11 20 17 23 + +0.308360815 + 1.010235071 -1 + 2 24 24 576 + 1 10 8 14 9 + -1 10 10 14 11 + +0.3051253557 + -4.011127949 -1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.2729294598 + -15.24378967 -1 + 2 24 24 576 + 1 8 2 16 23 + -2 11 2 13 23 + +0.2665256858 + 1.024041653 1 + 2 24 24 576 + 1 16 17 17 20 + -1 18 17 19 20 + +0.2772126496 + 4.136976242 -1 + 3 24 24 576 + 1 11 14 14 23 + -2 13 14 14 18 + -2 11 19 12 23 + +0.3108357787 + -24.66061592 -1 + 2 24 24 576 + 1 6 19 14 22 + -1 15 19 23 22 + +0.2868720293 + -0.05645857751 1 + 3 24 24 576 + 1 10 7 17 10 + -2 14 7 17 8 + -2 10 9 13 10 + +0.2635869384 + 8.602458 1 + 2 24 24 576 + 1 2 3 21 4 + -1 2 5 21 6 + +0.2651291192 + 17.32261848 1 + 2 24 24 576 + 1 6 8 17 14 + -2 10 8 13 14 + +0.3037063479 + -16.12534904 1 + 2 24 24 576 + 1 0 6 5 8 + -1 0 9 5 11 + +0.2928743064 + -0.2985813022 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.2425095886 + 5.284821987 -1 + 2 24 24 576 + 1 9 16 14 20 + -2 11 16 12 20 + +0.294729054 + 14.00187874 1 + 2 24 24 576 + 1 1 10 21 15 + -2 1 12 21 13 + +0.2509461641 + -6.502534866 1 + 2 24 24 576 + 1 11 0 16 7 + -1 11 8 16 15 + +0.2481336296 + -50.43790054 -1 + 2 24 24 576 + 1 0 0 6 23 + -2 0 8 6 15 + +0.2397037446 + -8.347981453 -1 + 2 24 24 576 + 1 12 0 23 13 + -2 16 0 19 13 + +0.2782901824 + 1.883122325 -1 + 2 24 24 576 + 1 7 1 9 17 + -1 10 1 12 17 + +0.2670293152 + 17.89634705 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.285577774 + 4.901632786 -1 + 2 24 24 576 + 1 19 10 23 11 + -1 19 12 23 13 + +0.2623992562 + -8.714272499 -1 + 2 24 24 576 + 1 20 6 21 13 + -1 22 6 23 13 + +0.2993974984 + 2.914772034 1 + 2 24 24 576 + 1 15 10 20 13 + -1 15 14 20 17 + +0.2321697026 + -0.8040983081 -1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + + +77 10.11391735 1 +0.7054726481 + 31.7919693 1 + 2 24 24 576 + 1 16 0 19 14 + -1 20 0 23 14 + +0.5777970552 + 35.57807159 1 + 2 24 24 576 + 1 4 2 21 10 + -2 4 5 21 7 + +0.5642336607 + -3.976551056 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +0.5075954795 + -27.48815536 -1 + 2 24 24 576 + 1 0 0 2 17 + -1 3 0 5 17 + +0.4656750262 + -1.148816228 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.3965549767 + 6.222279072 1 + 3 24 24 576 + 1 6 0 21 15 + -2 14 0 21 7 + -2 6 8 13 15 + +0.3617413044 + -2.343758821 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.3980899751 + -15.23079014 -1 + 2 24 24 576 + 1 18 10 20 20 + -1 21 10 23 20 + +0.4154357612 + -2.169132233 -1 + 2 24 24 576 + 1 3 5 6 8 + -1 3 9 6 12 + +0.3626448512 + -47.61818314 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.3474540114 + 0.3444179296 1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.3447234631 + -6.421117783 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.3161951602 + -0.3308635056 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2902582288 + -0.7741738558 -1 + 2 24 24 576 + 1 1 1 4 5 + -1 1 6 4 10 + +0.3611170948 + 22.41891289 1 + 2 24 24 576 + 1 0 11 2 23 + -1 3 11 5 23 + +0.3490021825 + 6.324177742 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.3102438152 + 4.047426224 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.2974131107 + -0.2711162269 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.2793149054 + -5.323133469 -1 + 2 24 24 576 + 1 9 3 10 12 + -1 11 3 12 12 + +0.3096257448 + -1.599565744 1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.3485458493 + 8.200676918 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.3477806747 + -4.593941689 -1 + 2 24 24 576 + 1 11 5 21 8 + -1 11 9 21 12 + +0.3208049238 + -75.61290741 -1 + 2 24 24 576 + 1 0 15 11 23 + -1 12 15 23 23 + +0.3442697525 + 21.74351311 -1 + 3 24 24 576 + 1 3 4 20 17 + -2 12 4 20 10 + -2 3 11 11 17 + +0.3081601858 + 192.3476868 1 + 2 24 24 576 + 1 0 3 11 21 + -1 12 3 23 21 + +0.3560382426 + -5.825763226 1 + 3 24 24 576 + 1 0 9 23 12 + -2 12 9 23 10 + -2 0 11 11 12 + +0.261564225 + -0.8996318579 -1 + 3 24 24 576 + 1 2 14 9 17 + -2 6 14 9 15 + -2 2 16 5 17 + +0.2617760599 + -2.919031143 -1 + 2 24 24 576 + 1 0 20 4 22 + -2 0 21 4 21 + +0.2811813056 + -13.2466774 1 + 3 24 24 576 + 1 5 11 20 18 + -2 13 11 20 14 + -2 5 15 12 18 + +0.3155127764 + -36.76564026 -1 + 2 24 24 576 + 1 16 12 19 22 + -1 20 12 23 22 + +0.3170644343 + 7.517541885 -1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.2710550725 + -5.408186913 -1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.260846585 + 1.2231071 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.2703674138 + 4.245675564 1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.2591531873 + 15.13494968 -1 + 2 24 24 576 + 1 13 6 17 12 + -1 13 13 17 19 + +0.2828937173 + 49.22139359 1 + 2 24 24 576 + 1 6 1 20 9 + -2 6 4 20 6 + +0.3009338379 + 5.666562557 -1 + 3 24 24 576 + 1 0 10 21 13 + -2 11 10 21 11 + -2 0 12 10 13 + +0.262899965 + -11.4042244 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2989415228 + 2.818884134 -1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.251226604 + -23.58023453 -1 + 2 24 24 576 + 1 6 0 20 3 + -1 6 4 20 7 + +0.2720943093 + -6.702288151 1 + 3 24 24 576 + 1 10 9 23 12 + -2 17 9 23 10 + -2 10 11 16 12 + +0.2786255479 + 9.790070534 1 + 2 24 24 576 + 1 19 0 21 17 + -2 20 0 20 17 + +0.2615421414 + -4.16058588 1 + 3 24 24 576 + 1 1 7 12 10 + -2 7 7 12 8 + -2 1 9 6 10 + +0.2576728761 + -15.58506012 1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.421580106 + 9.038371086 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.264858216 + -10.46125603 1 + 2 24 24 576 + 1 2 15 12 17 + -1 2 18 12 20 + +0.2645423412 + 17.48761368 1 + 2 24 24 576 + 1 20 6 23 14 + -1 20 15 23 23 + +0.2186634243 + 0.2864743471 1 + 3 24 24 576 + 1 10 7 17 10 + -2 14 7 17 8 + -2 10 9 13 10 + +0.2397229075 + 124.1750031 1 + 2 24 24 576 + 1 4 8 13 22 + -1 14 8 23 22 + +0.2805055678 + -3.142358541 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.234946534 + -21.04041672 -1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.2692404687 + 1.008624792 -1 + 2 24 24 576 + 1 10 8 14 9 + -1 10 10 14 11 + +0.2423652709 + 6.935910702 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2457954288 + -4.750580788 1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.2486232519 + -3.596917391 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2488969862 + 2.229005337 1 + 2 24 24 576 + 1 11 3 12 10 + -1 13 3 14 10 + +0.2211045325 + 1.484026074 1 + 3 24 24 576 + 1 13 14 20 17 + -2 17 14 20 15 + -2 13 16 16 17 + +0.2529928088 + 2.554142952 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2855795324 + 15.83092308 1 + 2 24 24 576 + 1 6 5 17 12 + -2 10 5 13 12 + +0.264944911 + 13.35007477 -1 + 2 24 24 576 + 1 11 12 15 16 + -1 11 17 15 21 + +0.2358101308 + 2.784986973 1 + 3 24 24 576 + 1 17 16 20 19 + -2 19 16 20 17 + -2 17 18 18 19 + +0.2555290461 + -1.725554585 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.2417489588 + -4.820908546 1 + 3 24 24 576 + 1 17 6 22 13 + -2 20 6 22 9 + -2 17 10 19 13 + +0.274274677 + -3.399604797 1 + 3 24 24 576 + 1 17 5 20 20 + -2 19 5 20 12 + -2 17 13 18 20 + +0.3950003088 + -13.09595776 -1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.2139382213 + 14.77165127 1 + 2 24 24 576 + 1 4 3 19 5 + -1 4 6 19 8 + +0.2101953179 + -2.924884796 1 + 2 24 24 576 + 1 18 16 22 17 + -1 18 18 22 19 + +0.2745797634 + -10.31753063 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.2483340949 + 0.02100689523 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.2334386706 + -95.66239166 -1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.2629910111 + 2.85474658 -1 + 2 24 24 576 + 1 10 21 13 23 + -2 10 22 13 22 + +0.240252316 + -1.463240981 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2093649507 + 0.6869848967 1 + 2 24 24 576 + 1 14 13 18 14 + -1 14 15 18 16 + +0.2334131449 + -4.75248909 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.2406041324 + -16.10860443 1 + 2 24 24 576 + 1 8 17 20 19 + -1 8 20 20 22 + +0.2404409796 + 14.00060558 1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.2146875113 + -3.842119932 -1 + 2 24 24 576 + 1 6 6 10 7 + -1 6 8 10 9 + + +87 10.70129204 1 +0.6722196341 + 19.26244545 1 + 2 24 24 576 + 1 13 0 17 4 + -1 18 0 22 4 + +0.5472157001 + -36.37922668 -1 + 2 24 24 576 + 1 0 0 3 16 + -1 4 0 7 16 + +0.5401808619 + -2.505843401 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.4113354683 + -1.67820406 -1 + 2 24 24 576 + 1 7 17 14 18 + -1 7 19 14 20 + +0.3951472044 + -4.477719784 -1 + 3 24 24 576 + 1 6 5 11 12 + -2 9 5 11 8 + -2 6 9 8 12 + +0.3756946921 + 12.15714264 1 + 2 24 24 576 + 1 11 6 19 12 + -2 14 6 16 12 + +0.3668788671 + 16.84144402 1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.3282111883 + -0.3200286329 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.3812789619 + 4.063074112 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.2786109149 + 18.683321 1 + 2 24 24 576 + 1 0 9 2 22 + -1 3 9 5 22 + +0.3899864852 + 21.26159096 -1 + 3 24 24 576 + 1 5 4 18 17 + -2 12 4 18 10 + -2 5 11 11 17 + +0.351244688 + -58.46783829 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.3370469809 + 1.715714455 1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.3225620687 + 5.495421886 1 + 2 24 24 576 + 1 21 15 23 20 + -2 22 15 22 20 + +0.3577763736 + -7.298523903 1 + 3 24 24 576 + 1 3 10 20 15 + -2 12 10 20 12 + -2 3 13 11 15 + +0.304852128 + 21.09747887 1 + 2 24 24 576 + 1 18 2 20 12 + -1 21 2 23 12 + +0.3214729428 + -2.054547548 -1 + 2 24 24 576 + 1 11 7 18 8 + -1 11 9 18 10 + +0.2957524359 + -20.21152878 -1 + 2 24 24 576 + 1 16 10 19 19 + -1 20 10 23 19 + +0.3199833632 + 2.620313406 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.2784513533 + -17.2009182 -1 + 2 24 24 576 + 1 0 1 1 18 + -1 2 1 3 18 + +0.2980963588 + -5.812754631 1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.3178882897 + 4.607601643 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.3133802116 + 2.794408321 -1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.2885404229 + 3.041767597 1 + 2 24 24 576 + 1 9 20 13 21 + -1 9 22 13 23 + +0.2777101099 + -0.6485015154 -1 + 2 24 24 576 + 1 13 11 14 14 + -1 15 11 16 14 + +0.2578285336 + -0.8284909129 -1 + 3 24 24 576 + 1 8 11 11 14 + -2 10 11 11 12 + -2 8 13 9 14 + +0.2532968521 + -11.26182842 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.2879406214 + 115.5466309 1 + 2 24 24 576 + 1 3 9 12 23 + -1 13 9 22 23 + +0.286557138 + 45.5596962 -1 + 2 24 24 576 + 1 8 5 16 13 + -1 8 14 16 22 + +0.2840036154 + -89.81545258 -1 + 2 24 24 576 + 1 1 9 9 22 + -1 10 9 18 22 + +0.2598582506 + 1.076546788 1 + 2 24 24 576 + 1 13 11 18 13 + -1 13 14 18 16 + +0.2409867048 + 16.9481144 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.3064673543 + 5.916230679 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.2598281801 + -4.776834011 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.2481943518 + -1.518229604 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.2823314369 + -21.71946526 -1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.2832811177 + 25.791605 -1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.2823473215 + 84.58336639 1 + 2 24 24 576 + 1 0 0 8 21 + -1 9 0 17 21 + +0.2616224289 + 0 -1 + 2 24 24 576 + 1 3 0 10 1 + -1 3 2 10 3 + +0.2528455257 + 0.1091936827 1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.2349648625 + 1.725682259 1 + 3 24 24 576 + 1 1 6 6 9 + -2 4 6 6 7 + -2 1 8 3 9 + +0.2113986909 + -8.288321495 -1 + 3 24 24 576 + 1 13 8 20 23 + -2 17 8 20 15 + -2 13 16 16 23 + +0.228494674 + 4.334967136 -1 + 3 24 24 576 + 1 2 13 19 16 + -2 11 13 19 14 + -2 2 15 10 16 + +0.2724969685 + 4.848516464 1 + 3 24 24 576 + 1 20 0 23 21 + -2 22 0 23 10 + -2 20 11 21 21 + +0.2257499397 + 1.00516355 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.2200808227 + -1.004480243 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.2268532813 + 4.18755579 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.261426717 + -9.527469635 1 + 2 24 24 576 + 1 8 0 9 6 + -1 10 0 11 6 + +0.2484804243 + 54.25536728 1 + 2 24 24 576 + 1 14 2 18 14 + -1 19 2 23 14 + +0.2291525602 + -1.272556901 1 + 3 24 24 576 + 1 15 0 18 3 + -2 17 0 18 1 + -2 15 2 16 3 + +0.2445903122 + -1.696980715 1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.3469960093 + -16.08356476 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2543059587 + -10.43511105 1 + 2 24 24 576 + 1 11 17 23 18 + -1 11 19 23 20 + +0.2676177025 + -13.60823154 -1 + 2 24 24 576 + 1 2 1 20 9 + -2 2 4 20 6 + +0.2400858998 + -0.3752059639 -1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.2429050505 + 6.353601933 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.2382085621 + 7.765228271 -1 + 3 24 24 576 + 1 4 12 21 15 + -2 13 12 21 13 + -2 4 14 12 15 + +0.2658793628 + -32.39321899 -1 + 2 24 24 576 + 1 4 19 11 23 + -1 12 19 19 23 + +0.248549819 + 18.44462585 -1 + 3 24 24 576 + 1 4 5 21 12 + -2 13 5 21 8 + -2 4 9 12 12 + +0.2487476915 + 8.358972549 1 + 3 24 24 576 + 1 1 12 6 21 + -2 4 12 6 16 + -2 1 17 3 21 + +0.2405405194 + -21.12632179 1 + 3 24 24 576 + 1 3 4 20 17 + -2 12 4 20 10 + -2 3 11 11 17 + +0.2414226234 + 8.513659477 1 + 2 24 24 576 + 1 6 14 10 19 + -2 6 16 10 17 + +0.2388133109 + -3.12848115 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.229734987 + -13.30095482 -1 + 3 24 24 576 + 1 1 4 4 23 + -2 3 4 4 13 + -2 1 14 2 23 + +0.2402708083 + -10.02296543 1 + 2 24 24 576 + 1 14 2 15 21 + -1 16 2 17 21 + +0.2434540242 + -0.1212129146 1 + 3 24 24 576 + 1 17 16 20 19 + -2 19 16 20 17 + -2 17 18 18 19 + +0.2683766782 + -7.029856205 -1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2190261185 + -1.736644387 -1 + 2 24 24 576 + 1 12 5 23 13 + -2 16 5 19 13 + +0.2393277138 + 8.394444466 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.24509345 + -25.167099 -1 + 2 24 24 576 + 1 12 19 17 23 + -1 18 19 23 23 + +0.2537059784 + -2.924884796 1 + 2 24 24 576 + 1 18 16 22 17 + -1 18 18 22 19 + +0.2372668833 + 28.63534737 1 + 2 24 24 576 + 1 3 1 11 9 + -2 3 4 11 6 + +0.2387595028 + -11.97328854 1 + 3 24 24 576 + 1 5 12 16 19 + -2 11 12 16 15 + -2 5 16 10 19 + +0.2340909988 + -1.613763571 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2013195753 + -1.100577474 -1 + 3 24 24 576 + 1 10 0 17 7 + -2 14 0 17 3 + -2 10 4 13 7 + +0.2088811547 + -7.941262245 -1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.2486214191 + -18.19074249 1 + 2 24 24 576 + 1 9 12 15 17 + -1 9 18 15 23 + +0.2450324446 + -3.755061388 -1 + 2 24 24 576 + 1 8 16 17 17 + -1 8 18 17 19 + +0.192688331 + 1.691453695 1 + 2 24 24 576 + 1 4 9 6 18 + -1 7 9 9 18 + +0.2276116312 + -2.213521004 -1 + 2 24 24 576 + 1 3 11 4 14 + -1 5 11 6 14 + +0.2268396616 + 9.210160255 -1 + 2 24 24 576 + 1 5 8 7 14 + -1 8 8 10 14 + +0.2584684789 + 24.24258232 1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.2764994204 + 5.34821701 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.2297126353 + -1.696980715 1 + 3 24 24 576 + 1 16 11 19 22 + -2 18 11 19 16 + -2 16 17 17 22 + +0.2707692683 + -9.504095078 -1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.1995653808 + 3.355428696 1 + 2 24 24 576 + 1 8 1 13 3 + -1 8 4 13 6 + +0.2052815855 + 4.923943996 -1 + 2 24 24 576 + 1 5 0 9 11 + -2 5 4 9 7 + + +97 11.98053074 1 +0.5731946826 + 28.13142586 1 + 2 24 24 576 + 1 5 2 15 10 + -2 5 5 15 7 + +0.4779847562 + -11.2770462 -1 + 2 24 24 576 + 1 0 2 2 10 + -1 3 2 5 10 + +0.456469357 + -4.538529396 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +0.4227920771 + 37.89045334 1 + 2 24 24 576 + 1 17 0 19 22 + -1 20 0 22 22 + +0.3989137411 + -1.551548839 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.3604462743 + 0.952436626 1 + 2 24 24 576 + 1 8 5 12 8 + -1 13 5 17 8 + +0.3752402365 + 0.6131834984 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.3283962607 + 10.45047951 1 + 3 24 24 576 + 1 11 0 22 11 + -2 17 0 22 5 + -2 11 6 16 11 + +0.3040302396 + 13.06409931 1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.3491851389 + 5.355588913 -1 + 2 24 24 576 + 1 10 4 18 9 + -1 10 10 18 15 + +0.3235594034 + -60.999897 -1 + 2 24 24 576 + 1 0 0 6 23 + -2 0 8 6 15 + +0.3072261512 + 0.1798263341 1 + 2 24 24 576 + 1 15 10 22 11 + -1 15 12 22 13 + +0.2825963497 + 18.48504448 1 + 2 24 24 576 + 1 0 19 4 23 + -1 5 19 9 23 + +0.3434891701 + 16.57683945 -1 + 3 24 24 576 + 1 5 7 18 20 + -2 12 7 18 13 + -2 5 14 11 20 + +0.2773911953 + -0.8173249364 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2667516768 + 0.2135589123 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.3136044741 + 11.59320164 1 + 2 24 24 576 + 1 21 13 23 23 + -2 22 13 22 23 + +0.3222950697 + -1.001019001 1 + 2 24 24 576 + 1 3 11 7 13 + -1 3 14 7 16 + +0.259626925 + 0.6698361635 1 + 3 24 24 576 + 1 8 3 11 6 + -2 10 3 11 4 + -2 8 5 9 6 + +0.2444629818 + 19.59775352 1 + 2 24 24 576 + 1 7 0 12 18 + -2 9 0 10 18 + +0.2628356218 + -16.11860275 1 + 3 24 24 576 + 1 3 5 22 14 + -2 13 5 22 9 + -2 3 10 12 14 + +0.2940412462 + 6.479323387 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.2940494716 + -0.9053198099 -1 + 2 24 24 576 + 1 6 7 13 8 + -1 6 9 13 10 + +0.2765426636 + -114.7201157 -1 + 2 24 24 576 + 1 2 0 12 18 + -1 13 0 23 18 + +0.2918212414 + 16.56997681 -1 + 2 24 24 576 + 1 12 10 15 14 + -1 12 15 15 19 + +0.2620811462 + 43.80935669 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.2769392133 + -0.3699913621 -1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.2384463996 + 1.107072592 1 + 3 24 24 576 + 1 5 17 8 20 + -2 7 17 8 18 + -2 5 19 6 20 + +0.2192060649 + 0.7525826693 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.2160081565 + 1.098451734 1 + 3 24 24 576 + 1 2 6 7 9 + -2 5 6 7 7 + -2 2 8 4 9 + +0.252920121 + 2.432242632 -1 + 3 24 24 576 + 1 20 19 23 22 + -2 22 19 23 20 + -2 20 21 21 22 + +0.3452787697 + 67.16966248 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2708750069 + -12.75418186 1 + 2 24 24 576 + 1 2 17 19 18 + -1 2 19 19 20 + +0.2772934735 + -1.336567163 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.2369321883 + 14.95272446 1 + 2 24 24 576 + 1 20 1 21 18 + -1 22 1 23 18 + +0.2371920794 + 1.257191896 -1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.2495725751 + -14.12297535 -1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.2728857398 + -5.548184395 1 + 3 24 24 576 + 1 1 8 12 11 + -2 7 8 12 9 + -2 1 10 6 11 + +0.2498686016 + 115.9168625 1 + 2 24 24 576 + 1 3 9 12 23 + -1 13 9 22 23 + +0.24700284 + -6.791975498 1 + 3 24 24 576 + 1 5 1 8 8 + -2 7 1 8 4 + -2 5 5 6 8 + +0.2696838677 + -3.596917391 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2336615771 + 0.6061243415 -1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.2398394197 + 11.40789413 1 + 2 24 24 576 + 1 0 6 1 23 + -1 2 6 3 23 + +0.2534256279 + 7.987298012 -1 + 2 24 24 576 + 1 13 8 15 22 + -1 16 8 18 22 + +0.2449240088 + -17.97609901 -1 + 2 24 24 576 + 1 0 13 4 22 + -1 5 13 9 22 + +0.2284238935 + -11.30913925 1 + 2 24 24 576 + 1 12 12 15 16 + -1 16 12 19 16 + +0.274153471 + 7.460893631 1 + 2 24 24 576 + 1 2 10 4 16 + -1 5 10 7 16 + +0.2371737957 + -11.98190308 1 + 2 24 24 576 + 1 7 5 12 12 + -1 7 13 12 20 + +0.2297947556 + -2.54190135 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.2546694279 + -5.796819687 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.2422761023 + 19.78510475 1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.2275182307 + -26.3090229 1 + 3 24 24 576 + 1 3 4 18 15 + -2 11 4 18 9 + -2 3 10 10 15 + +0.2300029993 + -5.201613903 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.222327739 + -3.348808289 -1 + 2 24 24 576 + 1 4 5 7 9 + -1 4 10 7 14 + +0.2460767627 + 34.40140533 1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.2289702892 + -9.403689384 -1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.3843917847 + -24.43652534 1 + 2 24 24 576 + 1 0 5 6 7 + -1 0 8 6 10 + +0.2129718363 + 0.595004797 1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.2082252353 + 1.373924017 1 + 2 24 24 576 + 1 10 8 11 11 + -1 12 8 13 11 + +0.2233746797 + -11.48043442 -1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.3353820741 + -10.20916939 1 + 2 24 24 576 + 1 15 6 16 12 + -1 17 6 18 12 + +0.2504425347 + -62.82280731 -1 + 2 24 24 576 + 1 5 0 13 22 + -1 14 0 22 22 + +0.2366634458 + 1.295050263 1 + 2 24 24 576 + 1 12 2 13 9 + -1 14 2 15 9 + +0.1963181347 + -12.38944435 -1 + 2 24 24 576 + 1 13 0 21 20 + -2 16 0 18 20 + +0.2113188058 + -0.6075595021 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.2011986375 + -4.441830635 -1 + 2 24 24 576 + 1 8 4 17 5 + -1 8 6 17 7 + +0.2331787646 + -6.673070431 1 + 2 24 24 576 + 1 6 0 7 21 + -1 8 0 9 21 + +0.2001536041 + -1.0477705 -1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.2137573808 + 2.6857934 1 + 2 24 24 576 + 1 15 10 20 13 + -1 15 14 20 17 + +0.2250400186 + 5.47569561 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2005409598 + -11.18573093 -1 + 3 24 24 576 + 1 17 7 20 18 + -2 19 7 20 12 + -2 17 13 18 18 + +0.3171809018 + -3.536234856 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2200659662 + -1.626993299 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.2612904012 + 15.34526634 -1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.2711549699 + 9.718909264 1 + 2 24 24 576 + 1 21 0 23 15 + -2 22 0 22 15 + +0.2712007761 + -4.816883564 -1 + 3 24 24 576 + 1 16 19 19 22 + -2 18 19 19 20 + -2 16 21 17 22 + +0.4525565505 + 8.389539719 -1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.236381501 + -5.845097542 -1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.2714836597 + -2.906300306 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.3951413631 + -0.8597977161 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.5428964496 + 4.743499756 -1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.2640752196 + -8.602648735 -1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.3493749797 + -1.879908681 -1 + 3 24 24 576 + 1 16 11 19 22 + -2 18 11 19 16 + -2 16 17 17 22 + +0.4496542215 + -11.00388908 1 + 3 24 24 576 + 1 13 13 22 20 + -2 18 13 22 16 + -2 13 17 17 20 + +0.2836733162 + -1.177806258 -1 + 3 24 24 576 + 1 12 11 17 20 + -2 15 11 17 15 + -2 12 16 14 20 + +0.2549419701 + -0.3358349204 -1 + 3 24 24 576 + 1 10 18 15 21 + -2 13 18 15 19 + -2 10 20 12 21 + +0.2624224424 + 3.031932831 1 + 2 24 24 576 + 1 8 1 13 3 + -1 8 4 13 6 + +0.2340027243 + 0.924300015 1 + 3 24 24 576 + 1 13 14 20 17 + -2 17 14 20 15 + -2 13 16 16 17 + +0.2266515344 + -1.501882434 -1 + 2 24 24 576 + 1 10 9 18 10 + -1 10 11 18 12 + +0.2109701484 + -47.53493118 -1 + 2 24 24 576 + 1 1 1 7 8 + -1 8 1 14 8 + +0.2487697899 + 5.834378719 -1 + 3 24 24 576 + 1 7 10 16 15 + -2 12 10 16 12 + -2 7 13 11 15 + +0.2344866097 + 6.797550201 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.2377583236 + 0.4252738655 1 + 2 24 24 576 + 1 2 10 8 11 + -1 2 12 8 13 + +0.2228179276 + 12.23931408 -1 + 3 24 24 576 + 1 5 1 18 8 + -2 12 1 18 4 + -2 5 5 11 8 + +0.2423958778 + 10.91303062 1 + 3 24 24 576 + 1 0 3 3 22 + -2 2 3 3 12 + -2 0 13 1 22 + +0.2361264229 + 7.125412464 -1 + 3 24 24 576 + 1 0 9 23 12 + -2 12 9 23 10 + -2 0 11 11 12 + +0.2276809365 + -11.94199944 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + + +107 11.10787296 1 +0.5121058226 + 16.77609634 1 + 2 24 24 576 + 1 11 0 16 19 + -2 13 0 14 19 + +0.425868392 + 5.882047653 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.4203782082 + 2.472860575 1 + 3 24 24 576 + 1 4 17 11 20 + -2 8 17 11 18 + -2 4 19 7 20 + +0.3740383089 + -6.912975311 -1 + 2 24 24 576 + 1 5 6 10 8 + -1 5 9 10 11 + +0.3948793709 + -28.65488815 -1 + 2 24 24 576 + 1 0 0 4 5 + -1 5 0 9 5 + +0.3524641693 + -5.871998787 1 + 2 24 24 576 + 1 9 5 12 9 + -1 9 10 12 14 + +0.3434684873 + 35.08154297 1 + 2 24 24 576 + 1 16 10 19 19 + -1 20 10 23 19 + +0.3406550288 + 0.5057834983 1 + 2 24 24 576 + 1 4 5 5 8 + -1 6 5 7 8 + +0.3141987324 + -0.3306731284 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.3301458359 + 4.617302895 1 + 2 24 24 576 + 1 20 21 23 23 + -2 20 22 23 22 + +0.3368271887 + 1.246990085 1 + 2 24 24 576 + 1 12 2 13 9 + -1 14 2 15 9 + +0.3020266294 + 0.9987739921 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.2764498293 + -0.1912416816 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.2829819918 + 3.395560265 1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.2629178166 + 0.1866777092 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.302079916 + 18.58827019 1 + 2 24 24 576 + 1 0 19 4 23 + -1 5 19 9 23 + +0.299513042 + 9.761802673 -1 + 3 24 24 576 + 1 5 11 16 18 + -2 11 11 16 14 + -2 5 15 10 18 + +0.2934615612 + -23.06374741 -1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2810579836 + -2.62623477 -1 + 2 24 24 576 + 1 4 5 7 9 + -1 4 10 7 14 + +0.2475152761 + 20.87228012 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2368367761 + -0.2911735475 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2404522002 + -6.141340733 1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.2959361672 + -21.87059975 -1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.2731178105 + -9.098611832 1 + 2 24 24 576 + 1 14 2 15 21 + -1 16 2 17 21 + +0.2537254095 + -5.223297119 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.2195310295 + 1.668889523 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.2723847926 + 12.7799511 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2582780123 + -15.90586853 1 + 2 24 24 576 + 1 9 14 14 18 + -1 9 19 14 23 + +0.2657423019 + -1.323552489 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2129469812 + -1.730081201 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.2127228826 + 1.352272987 1 + 2 24 24 576 + 1 13 4 17 5 + -1 13 6 17 7 + +0.202395454 + 9.612757683 1 + 2 24 24 576 + 1 7 5 12 13 + -2 9 5 10 13 + +0.2275110483 + -5.990306377 1 + 3 24 24 576 + 1 7 10 16 15 + -2 12 10 16 12 + -2 7 13 11 15 + +0.2526088357 + 11.49035072 1 + 2 24 24 576 + 1 21 13 23 23 + -2 22 13 22 23 + +0.2592903078 + -1.161826849 1 + 2 24 24 576 + 1 16 10 21 12 + -1 16 13 21 15 + +0.2124302685 + -8.276616096 -1 + 2 24 24 576 + 1 13 2 21 13 + -2 16 2 18 13 + +0.2073070258 + -6.594031811 1 + 3 24 24 576 + 1 8 8 23 13 + -2 16 8 23 10 + -2 8 11 15 13 + +0.2629562616 + -114.960968 -1 + 2 24 24 576 + 1 2 0 12 18 + -1 13 0 23 18 + +0.2453163266 + -14.08115387 1 + 3 24 24 576 + 1 5 1 16 8 + -2 11 1 16 4 + -2 5 5 10 8 + +0.2428371906 + 8.111606598 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.2405075431 + 29.72828293 -1 + 2 24 24 576 + 1 8 3 16 10 + -1 8 11 16 18 + +0.2431315333 + -5.757223606 -1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.2238590419 + -12.02284336 1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.2181878686 + -3.105837822 -1 + 3 24 24 576 + 1 3 17 8 22 + -2 6 17 8 19 + -2 3 20 5 22 + +0.2090728879 + -4.339868546 -1 + 2 24 24 576 + 1 9 3 10 12 + -1 11 3 12 12 + +0.1998636276 + -1.147599697 -1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.2107930779 + -6.755903244 -1 + 3 24 24 576 + 1 11 10 20 23 + -2 16 10 20 16 + -2 11 17 15 23 + +0.2037546784 + 1.693578959 1 + 3 24 24 576 + 1 9 14 22 17 + -2 16 14 22 15 + -2 9 16 15 17 + +0.2008580863 + 6.920137882 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.2506572604 + 85.34643555 1 + 2 24 24 576 + 1 0 0 8 21 + -1 9 0 17 21 + +0.2417996526 + -15.07789707 1 + 2 24 24 576 + 1 1 17 15 19 + -1 1 20 15 22 + +0.2371513546 + 8.389800072 1 + 2 24 24 576 + 1 10 6 15 11 + -2 12 6 13 11 + +0.2288778871 + 0.1650728732 -1 + 3 24 24 576 + 1 1 0 10 13 + -2 6 0 10 6 + -2 1 7 5 13 + +0.1894881725 + -5.769613743 -1 + 2 24 24 576 + 1 2 19 5 22 + -1 6 19 9 22 + +0.2167425603 + 14.86932564 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2477416694 + 9.823379517 -1 + 2 24 24 576 + 1 6 0 7 21 + -1 8 0 9 21 + +0.2056927532 + -33.49097061 -1 + 2 24 24 576 + 1 4 19 11 23 + -1 12 19 19 23 + +0.234720856 + -13.9791832 1 + 2 24 24 576 + 1 5 6 7 22 + -1 8 6 10 22 + +0.2049441785 + -3.347827911 -1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.2361486107 + -11.38870144 1 + 2 24 24 576 + 1 13 5 16 13 + -1 13 14 16 22 + +0.2041858435 + 6.206271648 1 + 2 24 24 576 + 1 10 15 13 20 + -2 10 17 13 18 + +0.1976564229 + -4.729079247 1 + 3 24 24 576 + 1 4 12 21 15 + -2 13 12 21 13 + -2 4 14 12 15 + +0.2150004357 + 49.2748909 1 + 2 24 24 576 + 1 6 1 20 9 + -2 6 4 20 6 + +0.2142243385 + -13.02368069 1 + 3 24 24 576 + 1 0 6 23 13 + -2 12 6 23 9 + -2 0 10 11 13 + +0.1965038478 + 3.437417269 1 + 2 24 24 576 + 1 3 4 12 5 + -1 3 6 12 7 + +0.1863391548 + 7.852060318 -1 + 2 24 24 576 + 1 5 3 19 11 + -2 5 6 19 8 + +0.2247790098 + 19.34563446 -1 + 3 24 24 576 + 1 1 5 20 16 + -2 11 5 20 10 + -2 1 11 10 16 + +0.1955410987 + -3.860470772 -1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.2235338688 + -0.2250058949 -1 + 2 24 24 576 + 1 10 7 15 8 + -1 10 9 15 10 + +0.1920156479 + 52.61260605 1 + 2 24 24 576 + 1 5 15 13 22 + -1 14 15 22 22 + +0.2169166207 + 8.081028938 -1 + 2 24 24 576 + 1 12 8 15 14 + -1 16 8 19 14 + +0.1844457835 + -0.2985813022 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.1932336241 + 4.949615002 -1 + 2 24 24 576 + 1 18 16 22 17 + -1 18 18 22 19 + +0.2185752392 + 10.2491293 1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1987535954 + 5.731951237 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.2154460251 + 7.156719685 1 + 3 24 24 576 + 1 11 4 14 23 + -2 13 4 14 13 + -2 11 14 12 23 + +0.18475914 + -5.404968262 -1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.2059714645 + 11.83365631 -1 + 2 24 24 576 + 1 11 0 12 7 + -1 13 0 14 7 + +0.2215527594 + 11.06845856 1 + 2 24 24 576 + 1 0 6 1 23 + -1 2 6 3 23 + +0.1923215538 + 0.6134746075 1 + 2 24 24 576 + 1 14 13 18 14 + -1 14 15 18 16 + +0.1833656132 + 1.362628698 -1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.1909712702 + 29.77911377 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.2905006409 + -7.238253593 -1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2055342495 + -2.34538126 1 + 2 24 24 576 + 1 8 6 12 10 + -1 13 6 17 10 + +0.2056759894 + 3.298166752 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.1876974106 + -2.834185362 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1923847646 + 5.155343056 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.2249170095 + -4.730775356 -1 + 2 24 24 576 + 1 10 8 11 11 + -1 12 8 13 11 + +0.2013303638 + 5.29308939 -1 + 2 24 24 576 + 1 15 18 19 19 + -1 15 20 19 21 + +0.2049961239 + -4.842147827 -1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.2028601319 + -3.206573725 -1 + 2 24 24 576 + 1 21 2 23 6 + -2 22 2 22 6 + +0.1748506725 + 2.371856928 1 + 2 24 24 576 + 1 14 3 23 4 + -1 14 5 23 6 + +0.1750074327 + 4.166260242 1 + 3 24 24 576 + 1 3 8 10 23 + -2 7 8 10 15 + -2 3 16 6 23 + +0.1770948768 + -0.4473161399 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1822190881 + -0.548137188 -1 + 2 24 24 576 + 1 3 0 7 11 + -2 3 4 7 7 + +0.212406978 + -7.205717087 1 + 2 24 24 576 + 1 12 15 17 17 + -1 12 18 17 20 + +0.2079676986 + -1.788828373 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.2016010731 + -6.650977135 1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.2182147801 + -5.605992317 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1966995895 + -10.57302094 1 + 2 24 24 576 + 1 14 7 16 12 + -1 17 7 19 12 + +0.2000186145 + 4.774748325 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2079049647 + 0.8640210629 -1 + 3 24 24 576 + 1 18 3 21 6 + -2 20 3 21 4 + -2 18 5 19 6 + +0.1908668131 + 4.534084797 -1 + 2 24 24 576 + 1 10 16 15 21 + -2 12 16 13 21 + +0.2040255368 + -8.236731529 -1 + 3 24 24 576 + 1 13 8 20 23 + -2 17 8 20 15 + -2 13 16 16 23 + +0.1882054508 + 2.088082314 1 + 3 24 24 576 + 1 1 6 6 9 + -2 4 6 6 7 + -2 1 8 3 9 + +0.1940724105 + -25.86980629 -1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.3117732704 + -8.081138611 -1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + + +117 12.60156918 1 +0.5352209806 + -30.1179657 -1 + 2 24 24 576 + 1 0 0 5 4 + -1 6 0 11 4 + +0.4285771847 + 4.340469837 1 + 3 24 24 576 + 1 1 5 8 12 + -2 5 5 8 8 + -2 1 9 4 12 + +0.3856333494 + 3.274567127 1 + 2 24 24 576 + 1 8 20 15 21 + -1 8 22 15 23 + +0.3483030498 + 12.94670773 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.3466647267 + 2.256409645 1 + 3 24 24 576 + 1 10 4 17 19 + -2 14 4 17 11 + -2 10 12 13 19 + +0.3686320186 + -69.81203461 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.3777418733 + -1.315565825 -1 + 2 24 24 576 + 1 0 6 5 8 + -1 0 9 5 11 + +0.3238128126 + -8.846562386 -1 + 2 24 24 576 + 1 0 2 1 9 + -1 2 2 3 9 + +0.3079355359 + -2.573422194 -1 + 2 24 24 576 + 1 8 3 9 9 + -1 10 3 11 9 + +0.2784045935 + -8.530264854 -1 + 2 24 24 576 + 1 7 6 20 7 + -1 7 8 20 9 + +0.2732437551 + -0.9478618503 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.2718611956 + -1.98510766 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.250605166 + -9.880768776 -1 + 2 24 24 576 + 1 13 0 21 20 + -2 16 0 18 20 + +0.2669144869 + 1.192528129 -1 + 2 24 24 576 + 1 10 8 14 9 + -1 10 10 14 11 + +0.329222858 + -14.89336872 -1 + 2 24 24 576 + 1 16 17 19 22 + -1 20 17 23 22 + +0.2812907398 + -14.70503139 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.2721188962 + -22.59599686 -1 + 2 24 24 576 + 1 2 1 3 18 + -1 4 1 5 18 + +0.2580797076 + -1.306249499 -1 + 2 24 24 576 + 1 9 5 10 14 + -1 11 5 12 14 + +0.2455271184 + 1.640028358 1 + 2 24 24 576 + 1 10 15 13 16 + -1 10 17 13 18 + +0.2714172602 + -6.953319073 1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.2857447267 + 8.189258575 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.2684810758 + 5.406722069 -1 + 3 24 24 576 + 1 4 11 19 14 + -2 12 11 19 12 + -2 4 13 11 14 + +0.2368946373 + 11.91688824 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2492444366 + 0.5599623322 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.2185197622 + 0 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2182404995 + -7.089092731 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.2302397788 + 0 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.230884552 + -0.9368089437 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.2351803482 + 0.8460556865 1 + 2 24 24 576 + 1 3 11 7 13 + -1 3 14 7 16 + +0.2298484594 + 64.82725525 1 + 2 24 24 576 + 1 3 17 12 23 + -1 13 17 22 23 + +0.2628180385 + 4.709043026 -1 + 2 24 24 576 + 1 12 9 15 12 + -1 16 9 19 12 + +0.2212989926 + -9.818174362 1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.2917692065 + -13.80556583 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.2296644151 + 1.074032664 1 + 2 24 24 576 + 1 3 15 6 18 + -1 3 19 6 22 + +0.2011968195 + 4.795698166 -1 + 2 24 24 576 + 1 2 14 7 15 + -1 2 16 7 17 + +0.2533482015 + 18.93552017 1 + 2 24 24 576 + 1 0 6 2 18 + -1 3 6 5 18 + +0.2258963585 + -21.31902122 1 + 3 24 24 576 + 1 3 4 20 17 + -2 12 4 20 10 + -2 3 11 11 17 + +0.2225849777 + 180.6386108 1 + 2 24 24 576 + 1 5 1 13 22 + -1 14 1 22 22 + +0.2381139547 + 6.712432384 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.2404775172 + -65.47612762 -1 + 2 24 24 576 + 1 2 16 11 23 + -1 12 16 21 23 + +0.220242396 + -5.264523029 -1 + 2 24 24 576 + 1 6 5 16 8 + -1 6 9 16 12 + +0.2269554287 + 8.610573769 1 + 3 24 24 576 + 1 0 2 3 21 + -2 2 2 3 11 + -2 0 12 1 21 + +0.2178146541 + -16.60397339 1 + 2 24 24 576 + 1 8 3 15 9 + -1 8 10 15 16 + +0.2022797316 + -1.463240981 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2194148451 + -12.8619318 1 + 2 24 24 576 + 1 9 12 13 17 + -1 9 18 13 23 + +0.2494958341 + -3.056097269 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.2084632367 + -4.767025948 -1 + 3 24 24 576 + 1 12 15 19 22 + -2 16 15 19 18 + -2 12 19 15 22 + +0.2014645785 + -6.121551037 1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.2376681417 + 43.85050964 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.2176442146 + 8.509100914 -1 + 2 24 24 576 + 1 6 0 7 21 + -1 8 0 9 21 + +0.2207979411 + -17.82991409 -1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.2205990553 + 5.34821701 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.2302572578 + -5.59205246 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1874091029 + 0.612031579 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.1769326627 + -3.280533075 1 + 3 24 24 576 + 1 11 14 14 23 + -2 13 14 14 18 + -2 11 19 12 23 + +0.2199295312 + -7.486479759 1 + 3 24 24 576 + 1 20 7 23 18 + -2 22 7 23 12 + -2 20 13 21 18 + +0.3648380935 + -3.274838924 1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.5251226425 + -21.03985023 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.2182701528 + -2.858130217 -1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.2168208063 + -13.12854195 1 + 2 24 24 576 + 1 9 11 13 16 + -1 9 17 13 22 + +0.2067326158 + 8.388523102 1 + 2 24 24 576 + 1 10 6 15 11 + -2 12 6 13 11 + +0.1953554302 + -2.113272429 -1 + 3 24 24 576 + 1 2 3 11 8 + -2 7 3 11 5 + -2 2 6 6 8 + +0.1836305708 + -3.596917391 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2192865908 + 6.827338219 -1 + 3 24 24 576 + 1 0 9 13 12 + -2 7 9 13 10 + -2 0 11 6 12 + +0.2301104963 + 68.23517609 1 + 2 24 24 576 + 1 1 0 9 20 + -1 10 0 18 20 + +0.2026735395 + 1.721667051 -1 + 3 24 24 576 + 1 10 19 13 22 + -2 12 19 13 20 + -2 10 21 11 22 + +0.2217313051 + -10.81616974 -1 + 3 24 24 576 + 1 2 15 9 22 + -2 6 15 9 18 + -2 2 19 5 22 + +0.211428076 + 19.93462753 -1 + 2 24 24 576 + 1 5 5 7 18 + -1 8 5 10 18 + +0.2185261399 + -12.64019775 -1 + 2 24 24 576 + 1 0 8 1 16 + -1 2 8 3 16 + +0.1848134845 + 5.215141296 -1 + 2 24 24 576 + 1 11 17 23 18 + -1 11 19 23 20 + +0.1896232516 + 10.05396748 1 + 3 24 24 576 + 1 1 2 6 21 + -2 4 2 6 11 + -2 1 12 3 21 + +0.1829469055 + 5.731951237 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.2238726169 + -21.19689369 -1 + 3 24 24 576 + 1 2 3 5 22 + -2 4 3 5 12 + -2 2 13 3 22 + +0.2162875235 + -3.562435389 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.1864860207 + 12.73976517 1 + 2 24 24 576 + 1 12 10 20 15 + -2 12 12 20 13 + +0.1798358709 + -17.74055672 1 + 2 24 24 576 + 1 6 5 10 8 + -1 11 5 15 8 + +0.2049958259 + -13.95314407 -1 + 2 24 24 576 + 1 17 13 19 18 + -1 20 13 22 18 + +0.2028737068 + 14.63669205 -1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.195897758 + 25.82273293 1 + 2 24 24 576 + 1 14 2 18 13 + -2 14 6 18 9 + +0.208600983 + -22.20081711 1 + 3 24 24 576 + 1 5 0 18 13 + -2 12 0 18 6 + -2 5 7 11 13 + +0.1953682601 + -2.868970633 -1 + 3 24 24 576 + 1 11 1 14 10 + -2 13 1 14 5 + -2 11 6 12 10 + +0.171863839 + -0.1018806249 -1 + 3 24 24 576 + 1 4 1 7 4 + -2 6 1 7 2 + -2 4 3 5 4 + +0.1686878204 + 6.783993244 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1956965774 + -5.073377132 1 + 3 24 24 576 + 1 12 9 21 12 + -2 17 9 21 10 + -2 12 11 16 12 + +0.244027406 + -2.923570871 -1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.2078888118 + -12.99681282 1 + 2 24 24 576 + 1 1 8 18 11 + -2 7 8 12 11 + +0.2314721793 + -6.651793957 -1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.2403036356 + 5.886680603 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.2079927921 + -7.563733578 -1 + 3 24 24 576 + 1 16 8 21 19 + -2 19 8 21 13 + -2 16 14 18 19 + +0.2312478721 + 0.7106171846 1 + 2 24 24 576 + 1 13 12 16 14 + -1 13 15 16 17 + +0.2050024867 + -6.678616047 -1 + 3 24 24 576 + 1 16 7 21 20 + -2 19 7 21 13 + -2 16 14 18 20 + +0.2526010275 + -3.622478008 1 + 3 24 24 576 + 1 15 9 22 14 + -2 19 9 22 11 + -2 15 12 18 14 + +0.2149827033 + 5.578924179 -1 + 3 24 24 576 + 1 17 13 20 20 + -2 19 13 20 16 + -2 17 17 18 20 + +0.3204905987 + 7.247094154 1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.2069051564 + -38.65014267 -1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.307813555 + -1.921378732 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.226762861 + 1.477451205 -1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.2577778399 + 4.038464069 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.2179513127 + 6.626678467 -1 + 3 24 24 576 + 1 2 0 21 3 + -2 12 0 21 1 + -2 2 2 11 3 + +0.2258908302 + 3.939869881 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.2975635231 + -120.7173309 -1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.207577154 + -0.3372769952 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.2019103616 + 5.714831352 -1 + 2 24 24 576 + 1 10 16 15 21 + -2 12 16 13 21 + +0.2234099209 + 1.129815578 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.2764122784 + -3.837313414 -1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.2310424596 + -1.562629819 -1 + 2 24 24 576 + 1 14 9 16 18 + -1 17 9 19 18 + +0.2114640027 + 10.00448227 -1 + 2 24 24 576 + 1 10 0 21 11 + -2 14 0 17 11 + +0.1904019862 + -1.770235538 -1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.2082007974 + -11.47142792 -1 + 2 24 24 576 + 1 6 6 17 20 + -2 10 6 13 20 + +0.2099516094 + 10.09224224 -1 + 2 24 24 576 + 1 4 8 6 13 + -1 7 8 9 13 + +0.2234360874 + 4.982776642 -1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.3006909788 + 14.74115276 1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.2014254183 + 0.8984006643 1 + 3 24 24 576 + 1 1 8 16 23 + -2 9 8 16 15 + -2 1 16 8 23 + +0.205939889 + -11.43453312 -1 + 2 24 24 576 + 1 2 1 10 15 + -2 5 1 7 15 + +0.1941173524 + 0.9073442817 1 + 2 24 24 576 + 1 17 0 18 3 + -1 19 0 20 3 + +0.1771803349 + -6.836833 -1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.2322026342 + -11.89218521 1 + 2 24 24 576 + 1 12 8 15 14 + -1 16 8 19 14 + + +127 12.69995403 1 +0.5236463547 + -30.1179657 -1 + 2 24 24 576 + 1 0 0 5 4 + -1 6 0 11 4 + +0.4093794525 + -6.168616295 -1 + 3 24 24 576 + 1 6 4 11 13 + -2 9 4 11 8 + -2 6 9 8 13 + +0.3815868199 + -4.062058926 -1 + 3 24 24 576 + 1 12 15 19 22 + -2 16 15 19 18 + -2 12 19 15 22 + +0.3532365859 + 18.38054276 1 + 2 24 24 576 + 1 3 4 19 9 + -2 3 6 19 7 + +0.3089526296 + -14.73459339 -1 + 2 24 24 576 + 1 6 5 21 8 + -1 6 9 21 12 + +0.3154624999 + -10.686903 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2775378227 + 4.0113554 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.2927971184 + -2.374640942 -1 + 2 24 24 576 + 1 8 2 9 11 + -1 10 2 11 11 + +0.2897925675 + -12.50842476 -1 + 2 24 24 576 + 1 19 0 22 17 + -2 19 6 22 11 + +0.2816324234 + -16.63735008 -1 + 2 24 24 576 + 1 12 19 17 23 + -1 18 19 23 23 + +0.3291071355 + 3.783266544 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.2647320628 + 18.06236076 1 + 2 24 24 576 + 1 19 0 20 19 + -1 21 0 22 19 + +0.2574308217 + 0.3451852202 1 + 3 24 24 576 + 1 11 15 16 18 + -2 14 15 16 16 + -2 11 17 13 18 + +0.2479557991 + -3.439746141 1 + 3 24 24 576 + 1 1 8 12 11 + -2 7 8 12 9 + -2 1 10 6 11 + +0.2824531794 + -11.08078194 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.2664730847 + -6.222210407 1 + 3 24 24 576 + 1 7 8 18 15 + -2 13 8 18 11 + -2 7 12 12 15 + +0.2581088543 + 44.28966141 1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.2564046085 + 0.8735440373 -1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.2601901889 + 43.20803452 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2514646947 + 11.55567265 -1 + 3 24 24 576 + 1 3 14 22 19 + -2 13 14 22 16 + -2 3 17 12 19 + +0.249419421 + 10.0668354 1 + 2 24 24 576 + 1 8 14 14 19 + -2 8 16 14 17 + +0.2384419441 + -5.662384987 1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.2541898787 + -0.9104821682 -1 + 3 24 24 576 + 1 10 14 15 17 + -2 13 14 15 15 + -2 10 16 12 17 + +0.2110481709 + -4.347416878 -1 + 3 24 24 576 + 1 9 5 12 20 + -2 11 5 12 12 + -2 9 13 10 20 + +0.2053047121 + 0.7265012264 1 + 2 24 24 576 + 1 17 0 18 3 + -1 19 0 20 3 + +0.2368217558 + -59.66559219 -1 + 2 24 24 576 + 1 2 17 11 22 + -1 12 17 21 22 + +0.2673085034 + 2.356445789 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2320581377 + 63.06992722 1 + 2 24 24 576 + 1 0 0 9 20 + -1 10 0 19 20 + +0.2251518369 + 0.5713751912 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.2199389637 + 4.878296852 1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.2122653127 + -2.474660158 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.2076255083 + -3.293142796 1 + 2 24 24 576 + 1 10 6 13 9 + -1 10 10 13 13 + +0.1983970851 + 1.211036086 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.2014591098 + 16.4532795 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2321937531 + -6.03649044 1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.229253605 + -45.77426147 -1 + 2 24 24 576 + 1 0 10 3 21 + -1 4 10 7 21 + +0.2069976032 + -2.292869806 -1 + 2 24 24 576 + 1 1 2 4 6 + -1 1 7 4 11 + +0.2132769823 + -14.60183525 -1 + 2 24 24 576 + 1 7 5 15 17 + -2 10 5 12 17 + +0.2169827521 + 0.5194831491 1 + 2 24 24 576 + 1 3 11 7 13 + -1 3 14 7 16 + +0.1969566345 + -28.83967209 -1 + 2 24 24 576 + 1 5 16 13 22 + -1 14 16 22 22 + +0.2202238292 + 6.886034012 -1 + 3 24 24 576 + 1 3 10 20 15 + -2 12 10 20 12 + -2 3 13 11 15 + +0.2061863542 + -9.69315052 -1 + 3 24 24 576 + 1 19 6 22 15 + -2 21 6 22 10 + -2 19 11 20 15 + +0.2476924807 + 5.432213783 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.2186050415 + 6.449814796 -1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.3258837759 + 45.51758194 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.227745086 + 9.611164093 1 + 2 24 24 576 + 1 4 9 19 11 + -1 4 12 19 14 + +0.1961083263 + 0.7973951697 1 + 2 24 24 576 + 1 3 19 8 20 + -1 3 21 8 22 + +0.1850294173 + 45.5596962 -1 + 2 24 24 576 + 1 8 5 16 13 + -1 8 14 16 22 + +0.2426413149 + 20.9042263 1 + 2 24 24 576 + 1 0 20 6 23 + -1 7 20 13 23 + +0.2106458247 + 17.9956398 -1 + 2 24 24 576 + 1 5 6 7 22 + -1 8 6 10 22 + +0.2269288749 + 10.39560509 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.183091417 + -7.847867966 1 + 2 24 24 576 + 1 14 6 15 15 + -1 16 6 17 15 + +0.2241625488 + -5.168966293 -1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2005275637 + 18.02986336 -1 + 3 24 24 576 + 1 5 0 18 13 + -2 12 0 18 6 + -2 5 7 11 13 + +0.1956881583 + -8.511633873 -1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.2063985169 + 1.907163739 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.211815998 + 10.62725258 1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.2181397527 + 2.299883127 -1 + 3 24 24 576 + 1 9 20 12 23 + -2 11 20 12 21 + -2 9 22 10 23 + +0.2015374899 + 109.5287781 1 + 2 24 24 576 + 1 4 0 12 21 + -1 13 0 21 21 + +0.2071580887 + -0.9664672613 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1901983768 + -5.524219036 -1 + 2 24 24 576 + 1 0 2 11 13 + -2 4 2 7 13 + +0.1856905967 + 5.444396973 1 + 2 24 24 576 + 1 7 14 17 15 + -1 7 16 17 17 + +0.1877479702 + -0.6149225831 -1 + 2 24 24 576 + 1 14 10 15 13 + -1 16 10 17 13 + +0.1833069772 + 1.355139017 1 + 2 24 24 576 + 1 5 6 6 17 + -1 7 6 8 17 + +0.1927743405 + 2.206736088 -1 + 2 24 24 576 + 1 6 7 7 10 + -1 8 7 9 10 + +0.2070498765 + -3.741917372 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2025586367 + -17.50737762 1 + 2 24 24 576 + 1 6 5 10 8 + -1 11 5 15 8 + +0.2279182225 + 5.233564377 -1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.3728717566 + 2.159475803 1 + 3 24 24 576 + 1 20 7 23 18 + -2 22 7 23 12 + -2 20 13 21 18 + +0.328176409 + -19.23194122 -1 + 2 24 24 576 + 1 17 13 19 18 + -1 20 13 22 18 + +0.2106802613 + -10.43768215 1 + 2 24 24 576 + 1 14 7 16 12 + -1 17 7 19 12 + +0.2528187931 + 7.27563858 1 + 2 24 24 576 + 1 20 14 21 19 + -1 22 14 23 19 + +0.199481979 + 1.743852854 -1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.2194380164 + -2.540403128 -1 + 2 24 24 576 + 1 20 6 21 13 + -1 22 6 23 13 + +0.1910261065 + 0.2415367663 1 + 2 24 24 576 + 1 15 18 16 22 + -1 17 18 18 22 + +0.1834334135 + 3.856523037 1 + 2 24 24 576 + 1 8 1 13 3 + -1 8 4 13 6 + +0.1962447464 + 1.885780931 -1 + 2 24 24 576 + 1 4 0 11 11 + -2 4 4 11 7 + +0.2111248076 + -12.44137001 1 + 2 24 24 576 + 1 3 17 23 18 + -1 3 19 23 20 + +0.2102576941 + 10.72136688 1 + 3 24 24 576 + 1 1 15 8 22 + -2 5 15 8 18 + -2 1 19 4 22 + +0.1977759749 + -5.699132442 1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.200127244 + 5.38438797 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.2047327608 + 11.6902771 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.209808901 + -3.767737865 1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.3396255374 + -196.2833405 -1 + 2 24 24 576 + 1 0 7 10 23 + -1 11 7 21 23 + +0.2096182853 + -2.510861158 1 + 2 24 24 576 + 1 8 6 12 10 + -1 13 6 17 10 + +0.1996677667 + 1.626733541 1 + 3 24 24 576 + 1 13 8 16 11 + -2 15 8 16 9 + -2 13 10 14 11 + +0.1821329147 + -1.097975492 -1 + 2 24 24 576 + 1 18 15 23 18 + -2 20 15 21 18 + +0.1824674308 + -1.911573887 -1 + 2 24 24 576 + 1 9 10 13 16 + -1 14 10 18 16 + +0.1785495728 + 10.86904335 -1 + 3 24 24 576 + 1 0 6 23 13 + -2 12 6 23 9 + -2 0 10 11 13 + +0.1826547384 + -0.8181566596 -1 + 3 24 24 576 + 1 7 16 10 19 + -2 9 16 10 17 + -2 7 18 8 19 + +0.181362316 + 0.6208869815 1 + 2 24 24 576 + 1 7 15 8 18 + -1 9 15 10 18 + +0.1909392476 + 19.24585724 -1 + 2 24 24 576 + 1 3 3 20 17 + -2 9 3 14 17 + +0.194651112 + -16.41676521 -1 + 3 24 24 576 + 1 2 4 5 23 + -2 4 4 5 13 + -2 2 14 3 23 + +0.2143887281 + -55.94229126 1 + 3 24 24 576 + 1 2 2 15 21 + -2 9 2 15 11 + -2 2 12 8 21 + +0.2006964982 + -5.418268681 -1 + 2 24 24 576 + 1 16 11 17 19 + -1 18 11 19 19 + +0.1835417598 + -6.408034325 1 + 3 24 24 576 + 1 0 0 21 3 + -2 11 0 21 1 + -2 0 2 10 3 + +0.2031241059 + -5.442745209 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1901497841 + 0 -1 + 2 24 24 576 + 1 12 8 15 9 + -1 12 10 15 11 + +0.1799338311 + 0.3844394088 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.1818844378 + -9.320121765 -1 + 2 24 24 576 + 1 21 0 23 15 + -2 22 0 22 15 + +0.1600427032 + 6.668577194 1 + 3 24 24 576 + 1 0 7 11 22 + -2 6 7 11 14 + -2 0 15 5 22 + +0.179898873 + 6.171418667 -1 + 2 24 24 576 + 1 8 17 13 22 + -2 10 17 11 22 + +0.1883531809 + -2.458501816 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1785791516 + -7.772805691 1 + 2 24 24 576 + 1 10 12 15 16 + -1 10 17 15 21 + +0.2080463022 + -27.59936523 -1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.2093647271 + 6.712432384 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1988471001 + -3.75595212 -1 + 2 24 24 576 + 1 3 6 5 13 + -2 4 6 4 13 + +0.1678183824 + 1.163148642 1 + 3 24 24 576 + 1 0 7 7 10 + -2 4 7 7 8 + -2 0 9 3 10 + +0.1660693586 + -2.920866251 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1908993423 + -31.14997292 -1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.3305366933 + -27.55615234 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1843337566 + 1.768115044 1 + 2 24 24 576 + 1 8 0 11 5 + -1 8 6 11 11 + +0.1903178394 + -3.606945992 -1 + 2 24 24 576 + 1 17 0 19 11 + -2 18 0 18 11 + +0.171331495 + 0.01706480607 1 + 2 24 24 576 + 1 15 19 18 20 + -1 15 21 18 22 + +0.1590150297 + -2.777068615 -1 + 3 24 24 576 + 1 11 1 14 10 + -2 13 1 14 5 + -2 11 6 12 10 + +0.1642890424 + -1.93688488 -1 + 2 24 24 576 + 1 10 6 17 7 + -1 10 8 17 9 + +0.1749441028 + -2.916732788 -1 + 2 24 24 576 + 1 3 0 11 12 + -2 6 0 8 12 + +0.1607440412 + 2.317948341 -1 + 3 24 24 576 + 1 15 20 18 23 + -2 17 20 18 21 + -2 15 22 16 23 + +0.1990849972 + 6.883018494 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1968949437 + 5.420436382 1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.2943651378 + -4.005237579 1 + 2 24 24 576 + 1 2 14 7 15 + -1 2 16 7 17 + +0.1787875295 + -2.140257835 -1 + 2 24 24 576 + 1 7 1 12 15 + -2 9 1 10 15 + +0.1925144643 + -21.07160759 1 + 2 24 24 576 + 1 11 8 14 19 + -1 15 8 18 19 + +0.1913739443 + 6.186221123 1 + 2 24 24 576 + 1 8 6 13 10 + -2 10 6 11 10 + +0.1667066514 + -0.4369224906 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1640960872 + 3.493686438 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.1682551205 + -17.07196999 -1 + 2 24 24 576 + 1 0 10 4 20 + -1 5 10 9 20 + + +137 12.96147251 1 +0.4624701142 + 50.41496658 1 + 2 24 24 576 + 1 5 1 18 12 + -2 5 5 18 8 + +0.4278621972 + -80.1696701 -1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.373316586 + 2.928662062 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.3334058523 + -3.010978222 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.3012793064 + -2.465559483 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.3042399585 + -2.088288546 -1 + 3 24 24 576 + 1 6 6 13 9 + -2 10 6 13 7 + -2 6 8 9 9 + +0.2853572667 + 4.310103893 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2745275199 + 18.7897625 1 + 2 24 24 576 + 1 18 0 20 10 + -1 21 0 23 10 + +0.2625193 + -1.62902534 -1 + 2 24 24 576 + 1 19 1 22 6 + -1 19 7 22 12 + +0.2915399671 + 11.55201912 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2780383527 + 1.03319025 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.2422545403 + -6.373954773 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2554277182 + -2.852863312 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2971942127 + 38.37901306 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2628058493 + 5.72269249 -1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.2635847032 + -1.453323603 -1 + 3 24 24 576 + 1 19 15 22 20 + -2 21 15 22 17 + -2 19 18 20 20 + +0.2541253269 + -4.530050278 -1 + 3 24 24 576 + 1 11 12 20 21 + -2 16 12 20 16 + -2 11 17 15 21 + +0.2310430706 + 0.5096670389 1 + 3 24 24 576 + 1 11 15 16 18 + -2 14 15 16 16 + -2 11 17 13 18 + +0.2211605161 + -4.529881954 -1 + 3 24 24 576 + 1 1 0 12 11 + -2 7 0 12 5 + -2 1 6 6 11 + +0.2194476575 + 0.7152391076 1 + 3 24 24 576 + 1 7 0 12 9 + -2 10 0 12 4 + -2 7 5 9 9 + +0.238973394 + -39.05598068 -1 + 2 24 24 576 + 1 0 10 3 21 + -1 4 10 7 21 + +0.2296157479 + 1.976118565 -1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.279592216 + 11.1286459 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2441749275 + -0.2214101255 -1 + 2 24 24 576 + 1 10 7 15 8 + -1 10 9 15 10 + +0.2090613544 + -11.10173988 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.249134928 + 1.981246591 -1 + 3 24 24 576 + 1 10 19 13 22 + -2 12 19 13 20 + -2 10 21 11 22 + +0.2176561356 + -162.0964203 -1 + 2 24 24 576 + 1 2 6 11 23 + -1 12 6 21 23 + +0.2399154007 + -13.52417088 1 + 2 24 24 576 + 1 10 5 15 10 + -1 10 11 15 16 + +0.2191501111 + 58.41215134 1 + 2 24 24 576 + 1 5 15 13 22 + -1 14 15 22 22 + +0.2198929936 + -16.0985527 1 + 2 24 24 576 + 1 9 12 15 17 + -1 9 18 15 23 + +0.2298955619 + -6.935778618 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.2297522426 + 0.02733380534 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1992194951 + 5.911169529 1 + 2 24 24 576 + 1 6 14 16 15 + -1 6 16 16 17 + +0.2289065123 + 7.569065094 -1 + 2 24 24 576 + 1 10 10 13 15 + -1 10 16 13 21 + +0.1716535687 + -12.20436764 1 + 3 24 24 576 + 1 5 7 18 20 + -2 12 7 18 13 + -2 5 14 11 20 + +0.2233253419 + 48.91473007 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2203885317 + -3.562435389 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.2115281522 + -2.432501554 -1 + 3 24 24 576 + 1 19 10 22 23 + -2 21 10 22 16 + -2 19 17 20 23 + +0.2078538239 + -2.619259357 -1 + 2 24 24 576 + 1 10 6 17 7 + -1 10 8 17 9 + +0.2142096311 + 9.074137688 1 + 2 24 24 576 + 1 17 13 19 18 + -1 20 13 22 18 + +0.1803122312 + 5.576342106 -1 + 3 24 24 576 + 1 7 10 16 15 + -2 12 10 16 12 + -2 7 13 11 15 + +0.2396063358 + -12.59946442 -1 + 2 24 24 576 + 1 16 17 19 22 + -1 20 17 23 22 + +0.1928873062 + 10.53142452 -1 + 2 24 24 576 + 1 13 0 14 17 + -1 15 0 16 17 + +0.211414963 + -4.865912437 -1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.2130250782 + -17.21886063 1 + 2 24 24 576 + 1 11 6 14 18 + -1 15 6 18 18 + +0.2285167724 + 45.53156281 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.2241955847 + -12.09976101 1 + 2 24 24 576 + 1 7 5 12 12 + -1 7 13 12 20 + +0.2113311738 + 5.662138939 1 + 3 24 24 576 + 1 3 12 6 23 + -2 5 12 6 17 + -2 3 18 4 23 + +0.2050306499 + -0.9849149585 -1 + 2 24 24 576 + 1 7 1 8 7 + -1 9 1 10 7 + +0.1766970605 + 2.280786037 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.198409006 + 4.690386295 -1 + 3 24 24 576 + 1 11 8 22 11 + -2 17 8 22 9 + -2 11 10 16 11 + +0.20901227 + -5.59761095 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1924341917 + -6.435950279 -1 + 2 24 24 576 + 1 1 0 3 6 + -1 4 0 6 6 + +0.1796704978 + 3.687792063 -1 + 2 24 24 576 + 1 10 6 13 8 + -2 10 7 13 7 + +0.2159981728 + -8.823363304 -1 + 2 24 24 576 + 1 6 0 14 4 + -1 15 0 23 4 + +0.2031944245 + 0.464750886 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.1834691465 + 7.48513937 1 + 2 24 24 576 + 1 5 20 17 21 + -1 5 22 17 23 + +0.1715897322 + 39.42240524 1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.3027099669 + 5.360014915 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1980726719 + -7.881240845 -1 + 2 24 24 576 + 1 6 5 14 18 + -2 9 5 11 18 + +0.1887838691 + -12.75418186 1 + 2 24 24 576 + 1 2 17 19 18 + -1 2 19 19 20 + +0.2215358764 + 8.374874115 1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1972662508 + 13.64817333 -1 + 2 24 24 576 + 1 11 12 15 16 + -1 11 17 15 21 + +0.2067576051 + 15.29495239 1 + 2 24 24 576 + 1 7 5 12 13 + -2 9 5 10 13 + +0.1835118979 + -3.500165939 1 + 3 24 24 576 + 1 1 7 12 10 + -2 7 7 12 8 + -2 1 9 6 10 + +0.1885704398 + 9.406704903 1 + 2 24 24 576 + 1 2 0 4 21 + -2 3 0 3 21 + +0.2067919075 + -0.3979960978 -1 + 2 24 24 576 + 1 9 11 13 14 + -1 14 11 18 14 + +0.1771603376 + 0.9671520591 -1 + 2 24 24 576 + 1 2 4 5 8 + -1 2 9 5 13 + +0.1982426345 + 9.871774673 1 + 2 24 24 576 + 1 10 14 14 19 + -2 10 16 14 17 + +0.1922235191 + 5.724897861 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1937157512 + -2.398133755 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.18165268 + 3.621859789 1 + 2 24 24 576 + 1 8 12 16 14 + -1 8 15 16 17 + +0.1794612855 + 5.916176319 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.2236663997 + -18.73385239 -1 + 3 24 24 576 + 1 0 16 13 23 + -2 7 16 13 19 + -2 0 20 6 23 + +0.1905576736 + -1.05719614 -1 + 2 24 24 576 + 1 10 18 14 19 + -1 10 20 14 21 + +0.1812264025 + -12.97766685 1 + 2 24 24 576 + 1 7 1 18 5 + -2 11 1 14 5 + +0.193482548 + 38.79801941 -1 + 2 24 24 576 + 1 6 1 17 12 + -2 6 5 17 8 + +0.2058690041 + 1.894976735 1 + 2 24 24 576 + 1 14 3 23 4 + -1 14 5 23 6 + +0.1845280826 + -30.99596786 -1 + 3 24 24 576 + 1 18 5 23 20 + -2 21 5 23 12 + -2 18 13 20 20 + +0.246514529 + -6.947239399 1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1997298449 + 2.211365223 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.2552608848 + -29.18223953 -1 + 2 24 24 576 + 1 2 1 20 9 + -2 2 4 20 6 + +0.1968472749 + -6.457345963 1 + 2 24 24 576 + 1 2 18 10 19 + -1 2 20 10 21 + +0.2109956145 + -2.23997283 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.1565766186 + -5.970685959 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.1867347807 + -2.575496912 1 + 3 24 24 576 + 1 8 1 15 4 + -2 12 1 15 2 + -2 8 3 11 4 + +0.1759545207 + 25.4959507 1 + 2 24 24 576 + 1 16 4 18 19 + -1 19 4 21 19 + +0.1629016399 + 3.997258186 -1 + 3 24 24 576 + 1 0 0 19 5 + -2 10 0 19 2 + -2 0 3 9 5 + +0.1735752374 + 7.264551163 1 + 3 24 24 576 + 1 11 4 14 23 + -2 13 4 14 13 + -2 11 14 12 23 + +0.1694427878 + 21.38673973 -1 + 3 24 24 576 + 1 3 4 20 17 + -2 12 4 20 10 + -2 3 11 11 17 + +0.1856713593 + -19.98440933 -1 + 3 24 24 576 + 1 2 4 5 23 + -2 4 4 5 13 + -2 2 14 3 23 + +0.1956035793 + -1.524189949 1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1755616367 + 10.56431198 1 + 3 24 24 576 + 1 1 4 4 23 + -2 3 4 4 13 + -2 1 14 2 23 + +0.1931354254 + 6.882408142 -1 + 2 24 24 576 + 1 6 2 7 15 + -1 8 2 9 15 + +0.1802951694 + -7.179494858 -1 + 2 24 24 576 + 1 17 14 18 21 + -1 19 14 20 21 + +0.1849135906 + -8.822878838 1 + 2 24 24 576 + 1 14 2 15 21 + -1 16 2 17 21 + +0.1767638475 + -5.730185509 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1916374862 + -26.46208382 1 + 3 24 24 576 + 1 4 0 19 9 + -2 12 0 19 4 + -2 4 5 11 9 + +0.1924692243 + 1.13861239 1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.1687915474 + -0.7046251893 -1 + 2 24 24 576 + 1 15 8 16 17 + -1 17 8 18 17 + +0.1691819876 + 3.654939413 1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.202550903 + 23.76267624 -1 + 2 24 24 576 + 1 5 8 22 14 + -2 11 8 16 14 + +0.1651445329 + 4.15487957 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1905495971 + -0.603526175 1 + 2 24 24 576 + 1 15 18 19 19 + -1 15 20 19 21 + +0.1660453677 + -3.272495985 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.1660686582 + 0.9148717523 1 + 3 24 24 576 + 1 4 7 7 18 + -2 6 7 7 12 + -2 4 13 5 18 + +0.1652732044 + -3.839679241 -1 + 2 24 24 576 + 1 6 6 10 7 + -1 6 8 10 9 + +0.1706922501 + 2.68154645 1 + 2 24 24 576 + 1 5 4 20 6 + -1 5 7 20 9 + +0.1830312908 + -17.93304443 1 + 2 24 24 576 + 1 6 6 23 10 + -2 12 6 17 10 + +0.1901912391 + -5.567389965 -1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.1715774238 + -2.894911528 -1 + 2 24 24 576 + 1 3 0 11 12 + -2 6 0 8 12 + +0.1859849542 + 14.64165592 -1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.1946115792 + 45.09762955 1 + 2 24 24 576 + 1 2 0 8 22 + -1 9 0 15 22 + +0.1759529561 + 0.8600596189 -1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.1845624149 + 6.710244656 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.1785131693 + 0.6300941706 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.179103896 + -12.24334812 -1 + 2 24 24 576 + 1 0 1 2 19 + -2 1 1 1 19 + +0.1844550967 + 11.68277168 -1 + 2 24 24 576 + 1 3 18 20 19 + -1 3 20 20 21 + +0.200708434 + 7.115230083 -1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.2480258495 + 50.6051712 1 + 2 24 24 576 + 1 9 0 15 4 + -1 16 0 22 4 + +0.1745331734 + 1.281156898 1 + 2 24 24 576 + 1 6 13 11 14 + -1 6 15 11 16 + +0.1641096473 + -3.212723494 -1 + 2 24 24 576 + 1 6 5 15 6 + -1 6 7 15 8 + +0.1702308953 + 11.69123459 -1 + 3 24 24 576 + 1 5 11 20 18 + -2 13 11 20 14 + -2 5 15 12 18 + +0.2058230937 + 14.05039978 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.1565909833 + 8.290653229 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1757847369 + -3.629726171 -1 + 2 24 24 576 + 1 11 3 16 15 + -2 13 3 14 15 + +0.1824220717 + -3.673629284 1 + 2 24 24 576 + 1 16 15 20 16 + -1 16 17 20 18 + +0.1878830343 + 3.481920958 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.2665427327 + 6.138966084 1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.163398847 + -8.869510651 1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.191993475 + -9.663908005 -1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.1634879857 + 2.718106031 1 + 2 24 24 576 + 1 8 1 12 3 + -1 8 4 12 6 + +0.1654110253 + -2.196078539 -1 + 2 24 24 576 + 1 4 1 8 9 + -2 4 4 8 6 + +0.1823716462 + 0.6935184002 1 + 2 24 24 576 + 1 8 7 13 9 + -2 8 8 13 8 + +0.1579130441 + 0.6354436874 1 + 3 24 24 576 + 1 6 19 9 22 + -2 8 19 9 20 + -2 6 21 7 22 + +0.1609665304 + 4.067913532 -1 + 2 24 24 576 + 1 8 17 13 22 + -2 10 17 11 22 + +0.1613200903 + -0.9951143265 -1 + 3 24 24 576 + 1 15 6 20 11 + -2 18 6 20 8 + -2 15 9 17 11 + + +147 13.22020721 1 +0.4544637799 + 20.196661 1 + 2 24 24 576 + 1 11 0 16 3 + -1 17 0 22 3 + +0.3841973543 + 2.908961296 1 + 3 24 24 576 + 1 4 17 11 20 + -2 8 17 11 18 + -2 4 19 7 20 + +0.3570050597 + 5.966306686 1 + 3 24 24 576 + 1 11 3 16 14 + -2 14 3 16 8 + -2 11 9 13 14 + +0.3642609417 + -37.75442123 -1 + 2 24 24 576 + 1 0 0 2 17 + -1 3 0 5 17 + +0.3156185746 + -4.537169933 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +0.2963708937 + 49.44016647 1 + 2 24 24 576 + 1 4 2 21 10 + -2 4 5 21 7 + +0.2765150666 + -0.4614154398 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2557935119 + -0.1549994498 -1 + 2 24 24 576 + 1 14 10 15 13 + -1 16 10 17 13 + +0.2467121482 + -82.98906708 -1 + 2 24 24 576 + 1 0 13 23 23 + -2 8 13 15 23 + +0.2960190177 + 1.180964112 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.2802610993 + 38.37901306 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2823260725 + -0.2911735475 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2446510643 + -16.18688011 1 + 2 24 24 576 + 1 9 14 14 18 + -1 9 19 14 23 + +0.2769289315 + 10.30030632 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2321199328 + 0.1791944802 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.2259968519 + -1.98510766 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.2321293354 + -5.836643219 -1 + 2 24 24 576 + 1 3 6 12 7 + -1 3 8 12 9 + +0.2049790025 + 0.6212947369 1 + 3 24 24 576 + 1 6 13 11 16 + -2 9 13 11 14 + -2 6 15 8 16 + +0.2006468773 + 1.472054482 -1 + 2 24 24 576 + 1 1 0 12 5 + -2 5 0 8 5 + +0.2222576737 + 19.91210938 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2381038964 + -7.087571144 1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.2440315187 + 30.33240318 1 + 2 24 24 576 + 1 16 10 18 20 + -1 19 10 21 20 + +0.2270198315 + -3.062095642 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.2356419563 + 12.78086185 1 + 2 24 24 576 + 1 0 13 2 18 + -1 3 13 5 18 + +0.2435229868 + -19.49612045 1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.2125583887 + -43.61215973 -1 + 2 24 24 576 + 1 0 0 6 3 + -1 7 0 13 3 + +0.2034107745 + -2.339976072 1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.2095557451 + -12.04736996 -1 + 2 24 24 576 + 1 20 2 21 19 + -1 22 2 23 19 + +0.2044179887 + 5.886680603 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.2261992097 + 19.14119911 1 + 2 24 24 576 + 1 14 1 19 17 + -2 16 1 17 17 + +0.2038111687 + 9.546899796 -1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.244561851 + 7.772183895 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.2108175755 + -3.262303829 1 + 3 24 24 576 + 1 12 10 21 13 + -2 17 10 21 11 + -2 12 12 16 13 + +0.2107105106 + 11.39550304 1 + 2 24 24 576 + 1 7 5 12 13 + -2 9 5 10 13 + +0.2010245323 + 1.398063421 1 + 2 24 24 576 + 1 4 3 8 4 + -1 4 5 8 6 + +0.1909971088 + 8.361083031 -1 + 2 24 24 576 + 1 4 0 11 11 + -2 4 4 11 7 + +0.1958768666 + 0.7866492271 1 + 2 24 24 576 + 1 16 10 21 12 + -1 16 13 21 15 + +0.1886467338 + -1.105068326 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2052423507 + 2.861902714 1 + 2 24 24 576 + 1 9 20 13 21 + -1 9 22 13 23 + +0.2057820112 + -7.359143257 1 + 3 24 24 576 + 1 3 10 20 15 + -2 12 10 20 12 + -2 3 13 11 15 + +0.2037082762 + 12.9003458 1 + 3 24 24 576 + 1 7 16 22 23 + -2 15 16 22 19 + -2 7 20 14 23 + +0.1891837716 + 3.615868092 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2101618648 + 17.68325615 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2161438316 + -9.715484619 1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.2183793038 + -12.7099123 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.1945139766 + 0.5458137393 1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.2051808834 + 2.343595743 -1 + 3 24 24 576 + 1 2 4 11 9 + -2 7 4 11 6 + -2 2 7 6 9 + +0.1996893138 + 9.709464073 1 + 2 24 24 576 + 1 18 0 19 21 + -1 20 0 21 21 + +0.175830856 + 0.4087217748 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.170830965 + 111.4927826 1 + 2 24 24 576 + 1 3 9 12 23 + -1 13 9 22 23 + +0.2076829374 + -7.4484725 -1 + 2 24 24 576 + 1 2 5 15 8 + -1 2 9 15 12 + +0.1924573034 + -8.773771286 -1 + 2 24 24 576 + 1 18 11 19 20 + -1 20 11 21 20 + +0.2162530422 + -4.25388813 1 + 2 24 24 576 + 1 0 16 7 17 + -1 0 18 7 19 + +0.1842610091 + -1.883551002 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1906372905 + 0.8869575262 1 + 2 24 24 576 + 1 6 14 11 15 + -1 6 16 11 17 + +0.164393574 + -0.3913804293 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.1679008603 + 5.389753342 -1 + 3 24 24 576 + 1 4 14 19 17 + -2 12 14 19 15 + -2 4 16 11 17 + +0.2019846886 + -10.26683426 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.1798716784 + -14.81715202 1 + 2 24 24 576 + 1 18 5 21 8 + -1 18 9 21 12 + +0.1849071383 + -3.09199667 -1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.168047443 + -7.291668415 1 + 3 24 24 576 + 1 3 0 22 3 + -2 13 0 22 1 + -2 3 2 12 3 + +0.1886658818 + -12.03958607 -1 + 3 24 24 576 + 1 2 15 9 22 + -2 6 15 9 18 + -2 2 19 5 22 + +0.2099038213 + 7.891366482 -1 + 3 24 24 576 + 1 2 0 21 3 + -2 12 0 21 1 + -2 2 2 11 3 + +0.189014554 + 24.20985031 1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.206866011 + 5.067296028 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.179656297 + -19.65654755 -1 + 2 24 24 576 + 1 4 20 10 23 + -1 11 20 17 23 + +0.186310932 + 0.5202409625 1 + 2 24 24 576 + 1 13 11 18 13 + -1 13 14 18 16 + +0.1722265929 + -2.768558502 -1 + 3 24 24 576 + 1 11 1 14 10 + -2 13 1 14 5 + -2 11 6 12 10 + +0.1710294634 + 1.239509583 1 + 2 24 24 576 + 1 13 2 14 5 + -1 15 2 16 5 + +0.1579867601 + -2.161951065 -1 + 2 24 24 576 + 1 8 15 11 20 + -2 8 17 11 18 + +0.1785954684 + 38.48473358 -1 + 2 24 24 576 + 1 9 5 14 13 + -1 9 14 14 22 + +0.1968668699 + 1.962346077 1 + 2 24 24 576 + 1 10 15 13 16 + -1 10 17 13 18 + +0.1838430166 + -1.674729109 -1 + 2 24 24 576 + 1 7 15 14 16 + -1 7 17 14 18 + +0.1644755602 + -1.764210224 1 + 2 24 24 576 + 1 4 15 8 16 + -1 4 17 8 18 + +0.1786157787 + 7.871567249 1 + 3 24 24 576 + 1 0 12 7 21 + -2 4 12 7 16 + -2 0 17 3 21 + +0.1862522662 + 6.927358627 -1 + 3 24 24 576 + 1 0 15 23 18 + -2 12 15 23 16 + -2 0 17 11 18 + +0.1730419844 + 10.84915161 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1908590198 + -3.452661991 1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1732892692 + -6.283219814 -1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.1711958796 + 1.856477737 1 + 3 24 24 576 + 1 2 6 7 9 + -2 5 6 7 7 + -2 2 8 4 9 + +0.1673334092 + -22.7637558 1 + 2 24 24 576 + 1 2 0 12 7 + -1 2 8 12 15 + +0.1697164476 + 0.2687400877 1 + 2 24 24 576 + 1 6 13 8 16 + -1 9 13 11 16 + +0.155865714 + 0 -1 + 2 24 24 576 + 1 14 0 18 1 + -1 14 2 18 3 + +0.1636090726 + 13.3139286 -1 + 2 24 24 576 + 1 8 3 20 11 + -2 8 6 20 8 + +0.1838185191 + -3.223826885 -1 + 2 24 24 576 + 1 10 6 17 7 + -1 10 8 17 9 + +0.1809552312 + 1.45855546 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.2029965967 + -13.2114687 1 + 2 24 24 576 + 1 9 11 15 16 + -1 9 17 15 22 + +0.1905350238 + 6.662965298 -1 + 3 24 24 576 + 1 20 1 23 20 + -2 22 1 23 10 + -2 20 11 21 20 + +0.2388847619 + 14.05696964 1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.1728033423 + -0.4187543094 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.1587050408 + 0.1480735689 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.1620925069 + 8.661804199 1 + 2 24 24 576 + 1 18 0 20 10 + -1 21 0 23 10 + +0.1645253897 + 4.062222958 1 + 2 24 24 576 + 1 20 17 22 22 + -2 21 17 21 22 + +0.2068375051 + -15.6666832 1 + 2 24 24 576 + 1 12 11 14 23 + -1 15 11 17 23 + +0.1729372442 + -18.16262817 -1 + 2 24 24 576 + 1 6 4 14 17 + -2 9 4 11 17 + +0.1770575196 + -6.572658539 1 + 3 24 24 576 + 1 4 9 9 16 + -2 7 9 9 12 + -2 4 13 6 16 + +0.1810337305 + -5.118197918 -1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.171575442 + 5.855621338 -1 + 2 24 24 576 + 1 4 6 6 10 + -1 7 6 9 10 + +0.1838816255 + 9.43937397 1 + 2 24 24 576 + 1 2 0 4 21 + -2 3 0 3 21 + +0.1837308407 + 11.6423111 -1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.1745168418 + 10.52877903 1 + 2 24 24 576 + 1 10 5 15 13 + -2 12 5 13 13 + +0.1757422537 + 4.314576149 -1 + 2 24 24 576 + 1 7 7 10 12 + -2 7 9 10 10 + +0.1782688648 + -4.128186226 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1738171279 + -10.41695786 1 + 3 24 24 576 + 1 5 1 18 8 + -2 12 1 18 4 + -2 5 5 11 8 + +0.168489933 + 2.109302998 1 + 3 24 24 576 + 1 18 2 21 5 + -2 20 2 21 3 + -2 18 4 19 5 + +0.1680432111 + -1.523546815 -1 + 2 24 24 576 + 1 0 9 2 12 + -1 3 9 5 12 + +0.1629730463 + 1.153520346 1 + 2 24 24 576 + 1 3 5 10 6 + -1 3 7 10 8 + +0.1657683551 + -0.4484029412 -1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.1637176722 + 6.086884499 1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.1771985441 + -1.925998807 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1958130002 + 15.47012424 1 + 3 24 24 576 + 1 0 2 3 21 + -2 2 2 3 11 + -2 0 12 1 21 + +0.1807463318 + -6.448930264 1 + 3 24 24 576 + 1 1 7 12 10 + -2 7 7 12 8 + -2 1 9 6 10 + +0.1759966612 + 7.872917652 1 + 2 24 24 576 + 1 0 13 2 19 + -2 1 13 1 19 + +0.1855980158 + -7.349705696 1 + 2 24 24 576 + 1 7 7 12 12 + -2 7 9 12 10 + +0.177000314 + -34.78472137 -1 + 2 24 24 576 + 1 10 1 16 18 + -1 17 1 23 18 + +0.1725170165 + -1.78151679 -1 + 2 24 24 576 + 1 7 2 8 8 + -1 9 2 10 8 + +0.1680171937 + 6.660770893 1 + 3 24 24 576 + 1 3 10 12 23 + -2 8 10 12 16 + -2 3 17 7 23 + +0.1508751363 + 4.835698128 1 + 2 24 24 576 + 1 3 10 20 11 + -1 3 12 20 13 + +0.1717161238 + 0 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1519356072 + 2.466836452 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1747696698 + 1.786946416 1 + 2 24 24 576 + 1 7 12 10 15 + -1 11 12 14 15 + +0.1578225195 + 0.559576571 1 + 3 24 24 576 + 1 8 11 11 14 + -2 10 11 11 12 + -2 8 13 9 14 + +0.1921147406 + 18.02676582 -1 + 2 24 24 576 + 1 5 9 22 12 + -2 11 9 16 12 + +0.1890431345 + 17.43813324 1 + 2 24 24 576 + 1 4 8 20 10 + -1 4 11 20 13 + +0.1877220124 + 6.920137882 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.1883582175 + -10.77307796 -1 + 2 24 24 576 + 1 9 14 15 22 + -2 9 17 15 19 + +0.1828702688 + 5.079186916 -1 + 3 24 24 576 + 1 4 13 17 16 + -2 11 13 17 14 + -2 4 15 10 16 + +0.1880693436 + 9.586460114 1 + 2 24 24 576 + 1 8 14 14 19 + -2 8 16 14 17 + +0.1723648906 + -1.107540131 -1 + 2 24 24 576 + 1 15 7 16 18 + -1 17 7 18 18 + +0.1747140884 + -6.074399948 1 + 2 24 24 576 + 1 8 13 13 17 + -1 8 18 13 22 + +0.1480711251 + 3.247205734 1 + 3 24 24 576 + 1 11 9 14 18 + -2 13 9 14 13 + -2 11 14 12 18 + +0.1648833752 + -10.43768215 1 + 2 24 24 576 + 1 14 7 16 12 + -1 17 7 19 12 + +0.181045875 + -0.4600619078 -1 + 3 24 24 576 + 1 16 8 19 13 + -2 18 8 19 10 + -2 16 11 17 13 + +0.1945147663 + 20.05484772 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + +0.2034421861 + -3.878426552 1 + 3 24 24 576 + 1 13 9 20 12 + -2 17 9 20 10 + -2 13 11 16 12 + +0.1771613359 + -3.109383821 -1 + 3 24 24 576 + 1 15 4 20 9 + -2 18 4 20 6 + -2 15 7 17 9 + +0.1846827865 + 0.8835631013 1 + 2 24 24 576 + 1 16 1 17 4 + -1 18 1 19 4 + +0.1669162214 + 0.4152587056 1 + 2 24 24 576 + 1 5 6 6 17 + -1 7 6 8 17 + +0.167210117 + -3.882454395 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.1611718386 + -6.739453793 -1 + 3 24 24 576 + 1 11 10 20 23 + -2 16 10 20 16 + -2 11 17 15 23 + +0.1576843262 + -24.00584602 -1 + 2 24 24 576 + 1 3 17 12 23 + -1 13 17 22 23 + +0.182077989 + -6.83558321 1 + 2 24 24 576 + 1 7 17 8 23 + -1 9 17 10 23 + +0.1704834253 + -1.348457336 -1 + 3 24 24 576 + 1 15 3 18 20 + -2 17 3 18 11 + -2 15 12 16 20 + +0.16994524 + -4.892015457 -1 + 2 24 24 576 + 1 16 11 17 19 + -1 18 11 19 19 + +0.1847787052 + -9.824573517 1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.1683738977 + -4.999631882 -1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.1778101474 + 7.457655907 -1 + 2 24 24 576 + 1 9 16 14 20 + -2 11 16 12 20 + + +157 13.48535633 1 +0.4292727113 + -29.14069176 -1 + 2 24 24 576 + 1 0 0 6 3 + -1 7 0 13 3 + +0.3727426529 + 3.389136314 1 + 3 24 24 576 + 1 2 17 13 20 + -2 8 17 13 18 + -2 2 19 7 20 + +0.3677844107 + 2.795832157 1 + 2 24 24 576 + 1 11 3 12 10 + -1 13 3 14 10 + +0.3579085171 + 33.64154053 1 + 2 24 24 576 + 1 16 10 19 19 + -1 20 10 23 19 + +0.3432846665 + -3.49505806 -1 + 2 24 24 576 + 1 6 6 10 7 + -1 6 8 10 9 + +0.2952359021 + 2.06856966 1 + 3 24 24 576 + 1 10 7 17 10 + -2 14 7 17 8 + -2 10 9 13 10 + +0.2721785903 + 15.36087513 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2632427812 + -0.2911735475 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.2456799746 + -4.554833889 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.2389224619 + 1.980557799 -1 + 3 24 24 576 + 1 5 6 16 13 + -2 11 6 16 9 + -2 5 10 10 13 + +0.2474516034 + 5.675569534 1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.2813020349 + 0 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.2274688482 + -5.568919182 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2244628668 + -0.9519740343 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.2178069353 + -2.336299896 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2601098418 + 28.41350365 1 + 2 24 24 576 + 1 0 13 3 20 + -1 4 13 7 20 + +0.2593202591 + -4.593941689 -1 + 2 24 24 576 + 1 11 5 21 8 + -1 11 9 21 12 + +0.2528831363 + 6.953321457 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2175552994 + 0.486667484 1 + 3 24 24 576 + 1 13 1 20 12 + -2 17 1 20 6 + -2 13 7 16 12 + +0.2326754183 + -69.87913513 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2402967364 + -10.62717342 1 + 3 24 24 576 + 1 4 10 21 17 + -2 13 10 21 13 + -2 4 14 12 17 + +0.2283859998 + 18.85471725 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2324370742 + -5.065594196 -1 + 2 24 24 576 + 1 9 3 10 12 + -1 11 3 12 12 + +0.20197469 + -0.9160310626 -1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.2152801156 + -132.6049805 -1 + 2 24 24 576 + 1 2 6 11 23 + -1 12 6 21 23 + +0.2402411103 + 12.41982174 -1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.2192451805 + -11.93759918 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.2032895982 + -11.6608057 1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.2090141177 + -7.710843086 -1 + 2 24 24 576 + 1 2 0 3 7 + -1 4 0 5 7 + +0.1902910918 + -1.463240981 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.2094821632 + -0.7594692707 1 + 2 24 24 576 + 1 12 18 22 20 + -1 12 21 22 23 + +0.1862825602 + -1.421442628 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.1852352619 + -11.52528667 1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.2158906162 + -6.179489613 -1 + 2 24 24 576 + 1 14 4 17 12 + -2 14 7 17 9 + +0.2063747942 + 2.594060898 -1 + 3 24 24 576 + 1 8 1 17 4 + -2 13 1 17 2 + -2 8 3 12 4 + +0.1848117709 + 38.98519135 1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.2020436972 + 6.567690849 -1 + 3 24 24 576 + 1 0 9 13 12 + -2 7 9 13 10 + -2 0 11 6 12 + +0.2149261683 + 12.72795963 1 + 2 24 24 576 + 1 19 1 21 17 + -2 20 1 20 17 + +0.2137372196 + -6.592943192 1 + 3 24 24 576 + 1 4 9 9 16 + -2 7 9 9 12 + -2 4 13 6 16 + +0.1979729831 + 6.079456806 1 + 3 24 24 576 + 1 1 3 4 22 + -2 3 3 4 12 + -2 1 13 2 22 + +0.1836689562 + 2.706207752 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.1838734597 + 14.73386192 1 + 2 24 24 576 + 1 10 5 15 13 + -2 12 5 13 13 + +0.1998488605 + 6.920137882 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.19225429 + 3.331914663 1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.1883068383 + -3.813199282 1 + 3 24 24 576 + 1 12 10 21 13 + -2 17 10 21 11 + -2 12 12 16 13 + +0.1860977411 + 23.11545944 1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.177951768 + -1.928387642 1 + 3 24 24 576 + 1 1 8 12 11 + -2 7 8 12 9 + -2 1 10 6 11 + +0.1722427309 + 2.278717995 1 + 3 24 24 576 + 1 12 6 17 9 + -2 15 6 17 7 + -2 12 8 14 9 + +0.1599511355 + 0.3816307485 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.1914474219 + 1.728645802 1 + 2 24 24 576 + 1 10 10 22 11 + -1 10 12 22 13 + +0.1741552502 + 31.12580109 -1 + 2 24 24 576 + 1 6 3 17 10 + -1 6 11 17 18 + +0.2042689025 + 1.482285142 1 + 3 24 24 576 + 1 19 5 22 10 + -2 21 5 22 7 + -2 19 8 20 10 + +0.1801014543 + -12.78532791 1 + 2 24 24 576 + 1 6 0 16 7 + -1 6 8 16 15 + +0.1796646416 + -2.427600384 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1651014388 + -8.989056587 1 + 2 24 24 576 + 1 8 13 13 17 + -1 8 18 13 22 + +0.1878243536 + -7.689516068 -1 + 2 24 24 576 + 1 4 0 11 11 + -2 4 4 11 7 + +0.2035091817 + -7.553092957 1 + 3 24 24 576 + 1 0 9 23 12 + -2 12 9 23 10 + -2 0 11 11 12 + +0.1803380698 + 11.48422146 1 + 3 24 24 576 + 1 2 15 9 22 + -2 6 15 9 18 + -2 2 19 5 22 + +0.1815661937 + 0.2941587865 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.1796852648 + 15.95134068 1 + 2 24 24 576 + 1 0 7 1 19 + -1 2 7 3 19 + +0.1926631778 + -8.680888176 1 + 2 24 24 576 + 1 8 0 9 6 + -1 10 0 11 6 + +0.1735193729 + 3.746169567 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1767295003 + 15.3537178 -1 + 3 24 24 576 + 1 2 3 19 16 + -2 11 3 19 9 + -2 2 10 10 16 + +0.2014703304 + -5.057939529 -1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1766456366 + -1.371829152 -1 + 2 24 24 576 + 1 3 11 4 14 + -1 5 11 6 14 + +0.1710430384 + 0.1658348739 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.1599729657 + -4.573516369 1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.1846259981 + 30.14599228 1 + 2 24 24 576 + 1 2 3 10 18 + -2 5 3 7 18 + +0.1878931075 + 4.257091045 -1 + 3 24 24 576 + 1 3 0 10 15 + -2 7 0 10 7 + -2 3 8 6 15 + +0.1694975197 + -2.435348034 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.164078176 + 2.803597212 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1730547398 + -0.6823596954 -1 + 2 24 24 576 + 1 15 8 16 17 + -1 17 8 18 17 + +0.1662351638 + -3.267788887 1 + 2 24 24 576 + 1 14 8 15 11 + -1 16 8 17 11 + +0.1857536733 + 3.338652611 1 + 2 24 24 576 + 1 8 14 11 16 + -2 8 15 11 15 + +0.1773875654 + 5.529875278 -1 + 2 24 24 576 + 1 2 14 7 15 + -1 2 16 7 17 + +0.1796211302 + -9.175765991 -1 + 2 24 24 576 + 1 5 15 18 20 + -2 5 17 18 18 + +0.1734847724 + 0.5133577585 1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.1665269583 + 3.876935959 1 + 2 24 24 576 + 1 9 15 13 16 + -1 9 17 13 18 + +0.1748019755 + 12.23129463 -1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.2011175901 + -31.69065094 -1 + 2 24 24 576 + 1 1 7 5 14 + -1 1 15 5 22 + +0.1845719516 + -4.832725048 1 + 2 24 24 576 + 1 9 15 14 18 + -2 11 15 12 18 + +0.1737320125 + 0.2298296988 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.1745267808 + 1.141981363 1 + 2 24 24 576 + 1 13 12 16 14 + -1 13 15 16 17 + +0.171106264 + -2.398133755 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1734246612 + -0.7571917772 1 + 3 24 24 576 + 1 4 7 7 18 + -2 6 7 7 12 + -2 4 13 5 18 + +0.1559088379 + 0.4991711974 1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1691518426 + 15.13207531 1 + 2 24 24 576 + 1 7 10 20 15 + -2 7 12 20 13 + +0.1617959887 + 10.79477787 -1 + 2 24 24 576 + 1 13 0 14 17 + -1 15 0 16 17 + +0.1804629266 + -5.308952332 -1 + 2 24 24 576 + 1 7 1 12 15 + -2 9 1 10 15 + +0.1857200265 + 8.417946815 -1 + 2 24 24 576 + 1 14 18 23 19 + -1 14 20 23 21 + +0.1823953241 + 45.52671814 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1765802205 + 6.371312618 -1 + 3 24 24 576 + 1 8 6 23 9 + -2 16 6 23 7 + -2 8 8 15 9 + +0.1724993736 + 5.976956367 1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.1708325148 + 1.141776443 1 + 2 24 24 576 + 1 12 2 13 9 + -1 14 2 15 9 + +0.1637442857 + -5.605992317 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.194783777 + -6.157221794 1 + 2 24 24 576 + 1 9 1 10 4 + -1 11 1 12 4 + +0.1713344604 + 17.62561607 1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.1857068092 + 13.18342686 -1 + 2 24 24 576 + 1 8 6 12 10 + -1 13 6 17 10 + +0.17620188 + 38.18185425 1 + 2 24 24 576 + 1 7 0 13 8 + -1 14 0 20 8 + +0.1583531648 + 11.19131851 -1 + 2 24 24 576 + 1 6 0 8 20 + -1 9 0 11 20 + +0.1789722145 + 42.03260803 1 + 2 24 24 576 + 1 4 18 11 23 + -1 12 18 19 23 + +0.1719030589 + 0.2321122438 1 + 2 24 24 576 + 1 6 10 10 13 + -1 6 14 10 17 + +0.1698902845 + -156.6940918 -1 + 2 24 24 576 + 1 1 0 10 19 + -1 11 0 20 19 + +0.1822743714 + 3.694317818 -1 + 2 24 24 576 + 1 10 6 13 8 + -2 10 7 13 7 + +0.1776687354 + 6.722761631 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.1841462106 + 15.50320911 -1 + 3 24 24 576 + 1 2 9 17 16 + -2 10 9 17 12 + -2 2 13 9 16 + +0.1641432196 + -21.49037361 -1 + 3 24 24 576 + 1 2 2 5 21 + -2 4 2 5 11 + -2 2 12 3 21 + +0.1760913432 + -6.964616299 1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1675682217 + 6.579425812 1 + 3 24 24 576 + 1 3 11 12 22 + -2 8 11 12 16 + -2 3 17 7 22 + +0.1836736202 + -0.2878087759 1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.2131732702 + 0.9443130493 1 + 3 24 24 576 + 1 15 20 18 23 + -2 17 20 18 21 + -2 15 22 16 23 + +0.1924641728 + -1.990580201 -1 + 3 24 24 576 + 1 12 20 21 23 + -2 17 20 21 21 + -2 12 22 16 23 + +0.1588689983 + 2.550120115 -1 + 2 24 24 576 + 1 15 15 18 16 + -1 15 17 18 18 + +0.1563247293 + 21.73118401 1 + 2 24 24 576 + 1 0 20 6 23 + -1 7 20 13 23 + +0.1707476079 + 5.073637009 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.166699186 + 8.724617958 1 + 2 24 24 576 + 1 7 14 22 15 + -1 7 16 22 17 + +0.13885279 + 4.741766453 -1 + 3 24 24 576 + 1 3 0 22 3 + -2 13 0 22 1 + -2 3 2 12 3 + +0.1696372628 + 4.494438171 1 + 2 24 24 576 + 1 10 16 17 18 + -2 10 17 17 17 + +0.1542953253 + 1.213849545 1 + 2 24 24 576 + 1 15 3 20 4 + -1 15 5 20 6 + +0.146505326 + -2.834539175 -1 + 2 24 24 576 + 1 1 2 4 6 + -1 1 7 4 11 + +0.1558015645 + 12.61787033 1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.1760018468 + -8.414359093 1 + 3 24 24 576 + 1 0 0 21 3 + -2 11 0 21 1 + -2 0 2 10 3 + +0.1619855464 + 3.986349821 1 + 2 24 24 576 + 1 17 3 18 6 + -1 19 3 20 6 + +0.1440722048 + -0.9085981846 -1 + 3 24 24 576 + 1 6 16 13 19 + -2 10 16 13 17 + -2 6 18 9 19 + +0.1611948758 + 4.132422924 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1690847129 + 5.752562523 1 + 2 24 24 576 + 1 10 8 11 11 + -1 12 8 13 11 + +0.1685759276 + -4.686995506 1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.154604584 + -3.846844196 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1454438418 + -0.73791641 -1 + 2 24 24 576 + 1 12 8 15 9 + -1 12 10 15 11 + +0.14782013 + 9.845315933 1 + 2 24 24 576 + 1 10 0 14 9 + -1 10 10 14 19 + +0.1642644554 + -0.548137188 -1 + 2 24 24 576 + 1 3 0 7 11 + -2 3 4 7 7 + +0.1604144722 + 4.558630943 -1 + 2 24 24 576 + 1 15 14 19 15 + -1 15 16 19 17 + +0.1649705321 + 22.3586998 1 + 2 24 24 576 + 1 5 3 9 11 + -2 5 6 9 8 + +0.1633257121 + -22.20663071 1 + 3 24 24 576 + 1 1 3 12 10 + -2 7 3 12 6 + -2 1 7 6 10 + +0.1833590269 + -8.292243004 -1 + 2 24 24 576 + 1 2 5 9 6 + -1 2 7 9 8 + +0.148969844 + -13.03642178 1 + 2 24 24 576 + 1 5 6 7 22 + -1 8 6 10 22 + +0.1638530493 + -6.398800373 -1 + 2 24 24 576 + 1 6 9 17 10 + -1 6 11 17 12 + +0.1551520377 + 12.45960903 -1 + 2 24 24 576 + 1 0 6 17 9 + -2 6 6 11 9 + +0.1689435542 + -38.01491165 -1 + 2 24 24 576 + 1 0 17 20 21 + -2 7 17 13 21 + +0.1627222151 + 15.55023956 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1946541518 + 44.83265686 1 + 2 24 24 576 + 1 0 0 9 10 + -1 10 0 19 10 + +0.161124289 + -0.5073080063 -1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1419405937 + 1.806306005 -1 + 2 24 24 576 + 1 17 0 23 1 + -1 17 2 23 3 + +0.1463824213 + 0.897698164 1 + 2 24 24 576 + 1 16 20 18 23 + -2 17 20 17 23 + +0.1421585232 + 2.257284164 1 + 2 24 24 576 + 1 18 13 22 16 + -1 18 17 22 20 + +0.1403036267 + 4.370448112 -1 + 2 24 24 576 + 1 6 9 17 20 + -2 10 9 13 20 + +0.1511027813 + 1.760953069 1 + 2 24 24 576 + 1 7 10 8 18 + -1 9 10 10 18 + +0.1581498384 + 9.256597519 -1 + 2 24 24 576 + 1 5 8 7 14 + -1 8 8 10 14 + +0.1666822881 + 5.725741386 1 + 2 24 24 576 + 1 7 6 15 10 + -2 10 6 12 10 + +0.1531923264 + 0.976072669 1 + 2 24 24 576 + 1 4 12 5 16 + -1 6 12 7 16 + +0.1709117889 + 5.996034145 -1 + 2 24 24 576 + 1 0 16 7 17 + -1 0 18 7 19 + +0.1569996178 + -3.289108515 -1 + 3 24 24 576 + 1 17 8 22 17 + -2 20 8 22 12 + -2 17 13 19 17 + +0.1478681564 + 3.383404255 1 + 2 24 24 576 + 1 11 5 16 9 + -2 13 5 14 9 + +0.1697842479 + 7.367226601 -1 + 2 24 24 576 + 1 12 7 16 12 + -2 12 9 16 10 + +0.1906552464 + -17.16715431 -1 + 2 24 24 576 + 1 19 7 22 14 + -1 19 15 22 22 + +0.162888661 + -13.78503799 1 + 3 24 24 576 + 1 5 1 16 8 + -2 11 1 16 4 + -2 5 5 10 8 + +0.1575300395 + 1.361537933 -1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + + +167 14.69688225 1 +0.4326236844 + 16.78342247 1 + 2 24 24 576 + 1 11 0 16 19 + -2 13 0 14 19 + +0.3747836947 + -6.322181225 -1 + 3 24 24 576 + 1 6 4 11 13 + -2 9 4 11 8 + -2 6 9 8 13 + +0.3284409344 + 46.71825409 1 + 2 24 24 576 + 1 6 0 16 11 + -2 6 4 16 7 + +0.3202323318 + -0.4269759357 -1 + 2 24 24 576 + 1 9 16 14 18 + -1 9 19 14 21 + +0.3144959211 + -37.91092682 -1 + 2 24 24 576 + 1 0 0 2 17 + -1 3 0 5 17 + +0.3048818707 + 1.985400319 1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.2922167182 + 4.195290089 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.2511263788 + 4.547924042 1 + 3 24 24 576 + 1 13 0 22 13 + -2 18 0 22 6 + -2 13 7 17 13 + +0.2367170602 + -2.838917971 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.2674691677 + 51.30408859 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2538096011 + 10.53954506 -1 + 3 24 24 576 + 1 7 9 16 18 + -2 12 9 16 13 + -2 7 14 11 18 + +0.2412384003 + 24.02967262 1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.242251277 + -2.200325489 -1 + 2 24 24 576 + 1 6 7 13 8 + -1 6 9 13 10 + +0.2228142768 + 7.761016369 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2121921331 + 2.356445789 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2263286561 + 3.41283226 -1 + 3 24 24 576 + 1 20 2 23 21 + -2 22 2 23 11 + -2 20 12 21 21 + +0.2860835791 + 15.02530384 1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.2203530222 + 0.02311861143 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.2048020363 + 0.4875237048 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.2054619342 + -4.4419837 -1 + 3 24 24 576 + 1 13 11 20 22 + -2 17 11 20 16 + -2 13 17 16 22 + +0.1901151091 + 0 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.2121310532 + 12.75583553 1 + 2 24 24 576 + 1 0 13 2 18 + -1 3 13 5 18 + +0.228653267 + -17.81749535 1 + 3 24 24 576 + 1 19 12 22 23 + -2 21 12 22 17 + -2 19 18 20 23 + +0.2609589398 + 168.4416199 1 + 2 24 24 576 + 1 6 2 14 22 + -1 15 2 23 22 + +0.1901280135 + 0.9199748635 -1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.2149781287 + -33.58938217 -1 + 2 24 24 576 + 1 4 19 11 23 + -1 12 19 19 23 + +0.2300455272 + -0.8366245627 1 + 3 24 24 576 + 1 8 1 11 4 + -2 10 1 11 2 + -2 8 3 9 4 + +0.189534992 + -8.863449097 -1 + 2 24 24 576 + 1 18 13 20 16 + -1 21 13 23 16 + +0.2228559107 + -3.266675711 -1 + 2 24 24 576 + 1 16 5 19 9 + -1 16 10 19 14 + +0.189965263 + 1.007510066 1 + 2 24 24 576 + 1 14 10 18 11 + -1 14 12 18 13 + +0.1838593483 + 10.89245224 -1 + 3 24 24 576 + 1 19 10 22 23 + -2 21 10 22 16 + -2 19 17 20 23 + +0.2624082565 + 2.666022062 -1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.4083337784 + 7.36448431 1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.1961786747 + -0.9631153345 1 + 2 24 24 576 + 1 5 6 6 17 + -1 7 6 8 17 + +0.186566174 + -6.137260437 -1 + 2 24 24 576 + 1 1 0 3 8 + -2 2 0 2 8 + +0.1923122406 + 0.1733695269 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1941876262 + 2.861056805 -1 + 3 24 24 576 + 1 18 10 21 17 + -2 20 10 21 13 + -2 18 14 19 17 + +0.2268227637 + -3.678501606 -1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.2091153413 + 17.29092026 1 + 2 24 24 576 + 1 17 0 19 12 + -1 20 0 22 12 + +0.1873535961 + -4.407039165 -1 + 2 24 24 576 + 1 15 1 21 9 + -2 15 4 21 6 + +0.2174821049 + -9.756207466 1 + 2 24 24 576 + 1 14 7 15 16 + -1 16 7 17 16 + +0.2167059183 + -10.6308918 -1 + 2 24 24 576 + 1 17 13 19 18 + -1 20 13 22 18 + +0.196991846 + 13.04562759 -1 + 2 24 24 576 + 1 4 6 7 15 + -1 8 6 11 15 + +0.2000538558 + 13.7729578 1 + 2 24 24 576 + 1 0 5 4 13 + -1 0 14 4 22 + +0.1732497811 + 10.57040501 1 + 2 24 24 576 + 1 0 19 4 23 + -1 5 19 9 23 + +0.2132117748 + 17.48848915 -1 + 3 24 24 576 + 1 4 5 21 12 + -2 13 5 21 8 + -2 4 9 12 12 + +0.1794558764 + -1.333896399 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.1661554277 + -158.4684906 -1 + 2 24 24 576 + 1 2 0 10 20 + -1 11 0 19 20 + +0.2140780538 + 10.46030712 -1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.1753601134 + -8.604818344 -1 + 2 24 24 576 + 1 13 12 21 18 + -2 16 12 18 18 + +0.1601274163 + 2.260576725 1 + 2 24 24 576 + 1 18 15 21 18 + -1 18 19 21 22 + +0.1635911018 + -31.32112885 1 + 3 24 24 576 + 1 18 5 23 20 + -2 21 5 23 12 + -2 18 13 20 20 + +0.2557183206 + 7.117615223 1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.1912900805 + 15.17595577 -1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.1963689178 + -7.046722889 -1 + 2 24 24 576 + 1 6 5 10 6 + -1 6 7 10 8 + +0.1861991286 + 1.631720662 1 + 2 24 24 576 + 1 3 4 22 5 + -1 3 6 22 7 + +0.1655581594 + -7.601950169 -1 + 2 24 24 576 + 1 0 0 11 13 + -2 4 0 7 13 + +0.1649459302 + 2.492599487 1 + 3 24 24 576 + 1 7 0 12 9 + -2 10 0 12 4 + -2 7 5 9 9 + +0.1753823459 + 1.081623554 1 + 2 24 24 576 + 1 13 2 14 5 + -1 15 2 16 5 + +0.1602431238 + 3.876935959 1 + 2 24 24 576 + 1 9 15 13 16 + -1 9 17 13 18 + +0.1863413006 + -6.00001049 1 + 3 24 24 576 + 1 0 0 21 3 + -2 11 0 21 1 + -2 0 2 10 3 + +0.1866613626 + 15.79489136 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2163063139 + -6.941305161 1 + 3 24 24 576 + 1 5 1 8 8 + -2 7 1 8 4 + -2 5 5 6 8 + +0.1746844947 + 8.250187874 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.198883757 + -24.30643272 1 + 2 24 24 576 + 1 0 7 20 11 + -2 7 7 13 11 + +0.1921237707 + 5.971456528 1 + 2 24 24 576 + 1 8 6 13 10 + -2 10 6 11 10 + +0.1674767435 + -4.137732029 -1 + 3 24 24 576 + 1 0 0 17 7 + -2 9 0 17 3 + -2 0 4 8 7 + +0.1507399082 + -0.6735591292 1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.1590667516 + -12.1553278 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.2070825696 + 5.727960587 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1753657162 + -8.247364998 -1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.168437168 + 3.180916309 -1 + 3 24 24 576 + 1 2 10 11 13 + -2 7 10 11 11 + -2 2 12 6 13 + +0.1910403222 + 0.236979723 -1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.1836236268 + 43.86073685 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1859364957 + 0.1229616031 1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1710232347 + 20.01480293 -1 + 2 24 24 576 + 1 8 3 16 10 + -1 8 11 16 18 + +0.170541808 + 5.259231567 1 + 3 24 24 576 + 1 3 14 6 23 + -2 5 14 6 18 + -2 3 19 4 23 + +0.1720773429 + 5.307036877 -1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.1556722969 + -0.2666021883 -1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.1442903131 + -2.493625164 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.1788211763 + -3.406583548 -1 + 3 24 24 576 + 1 16 17 21 20 + -2 19 17 21 18 + -2 16 19 18 20 + +0.1841160506 + -7.502891064 1 + 2 24 24 576 + 1 11 12 17 16 + -1 11 17 17 21 + +0.1810901016 + 4.226749897 1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.1743569672 + 5.850374222 -1 + 3 24 24 576 + 1 0 9 23 12 + -2 12 9 23 10 + -2 0 11 11 12 + +0.1650744379 + 0.3709713817 1 + 2 24 24 576 + 1 2 9 7 10 + -1 2 11 7 12 + +0.1541124284 + 7.312851906 1 + 3 24 24 576 + 1 3 12 10 23 + -2 7 12 10 17 + -2 3 18 6 23 + +0.144298777 + 0.3917598724 1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.1424198598 + -8.145750999 -1 + 2 24 24 576 + 1 7 0 17 2 + -1 7 3 17 5 + +0.18023628 + -5.246807098 1 + 3 24 24 576 + 1 16 8 21 19 + -2 19 8 21 13 + -2 16 14 18 19 + +0.1999145895 + -6.110658169 -1 + 3 24 24 576 + 1 15 3 20 22 + -2 18 3 20 12 + -2 15 13 17 22 + +0.1537730694 + 0.6010638475 1 + 2 24 24 576 + 1 0 3 10 4 + -1 0 5 10 6 + +0.1774119735 + 14.61148453 -1 + 2 24 24 576 + 1 6 3 20 11 + -2 6 6 20 8 + +0.173910737 + -7.208230019 1 + 3 24 24 576 + 1 16 7 21 20 + -2 19 7 21 13 + -2 16 14 18 20 + +0.1938360035 + -11.76549149 -1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.1856713593 + -31.11307526 1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.2041714489 + -156.2991333 -1 + 2 24 24 576 + 1 0 0 23 19 + -2 8 0 15 19 + +0.1539851874 + -3.532889366 1 + 3 24 24 576 + 1 8 14 11 21 + -2 10 14 11 17 + -2 8 18 9 21 + +0.1844631284 + -17.77788544 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.1934698075 + -11.70827293 1 + 2 24 24 576 + 1 8 0 9 6 + -1 10 0 11 6 + +0.18961519 + 20.05484772 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + +0.1918195039 + 5.668589115 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.1684055626 + -6.322192192 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.1608823091 + -2.202363491 1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1600202471 + -6.725074291 -1 + 2 24 24 576 + 1 10 14 14 19 + -2 10 16 14 17 + +0.1931809038 + -7.9086833 1 + 2 24 24 576 + 1 9 16 14 20 + -2 11 16 12 20 + +0.1824630648 + -1.166683555 -1 + 3 24 24 576 + 1 18 0 23 5 + -2 21 0 23 2 + -2 18 3 20 5 + +0.1597388089 + -3.757538795 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1552756727 + 4.428610802 1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1909653544 + 1.875703335 -1 + 3 24 24 576 + 1 15 0 18 3 + -2 17 0 18 1 + -2 15 2 16 3 + +0.1577164978 + -5.754016876 -1 + 2 24 24 576 + 1 7 16 13 21 + -2 7 18 13 19 + +0.1593722403 + 3.666334629 -1 + 2 24 24 576 + 1 10 6 13 8 + -2 10 7 13 7 + +0.17586945 + -37.48114014 -1 + 2 24 24 576 + 1 0 1 7 18 + -2 0 7 7 12 + +0.1781832427 + -7.322472572 -1 + 2 24 24 576 + 1 20 0 22 16 + -2 21 0 21 16 + +0.1537709236 + 6.946526051 -1 + 2 24 24 576 + 1 8 17 13 22 + -2 10 17 11 22 + +0.1736917496 + 6.221356392 1 + 2 24 24 576 + 1 8 17 14 19 + -2 8 18 14 18 + +0.1735131294 + -11.3281126 1 + 2 24 24 576 + 1 3 17 18 18 + -1 3 19 18 20 + +0.1654542089 + 10.71278572 1 + 3 24 24 576 + 1 0 1 3 20 + -2 2 1 3 10 + -2 0 11 1 20 + +0.1720771343 + -1.191263795 -1 + 2 24 24 576 + 1 10 18 14 19 + -1 10 20 14 21 + +0.1553299725 + -13.44812965 1 + 2 24 24 576 + 1 2 5 5 8 + -1 2 9 5 12 + +0.1580957919 + 6.535552025 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.1795321852 + 1.072418451 1 + 2 24 24 576 + 1 3 11 9 13 + -1 3 14 9 16 + +0.1450026035 + -6.283219814 -1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.1438210309 + 11.07264709 1 + 2 24 24 576 + 1 4 0 20 4 + -1 4 5 20 9 + +0.1346246898 + -0.4016038179 -1 + 3 24 24 576 + 1 20 19 23 22 + -2 22 19 23 20 + -2 20 21 21 22 + +0.1517754048 + 5.187717438 -1 + 3 24 24 576 + 1 2 9 11 12 + -2 7 9 11 10 + -2 2 11 6 12 + +0.1871728897 + 4.972565651 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1674612463 + -8.416410446 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.2516881526 + -36.89519501 -1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.4651923776 + 5.185912609 -1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.1502867192 + 0.7255888581 1 + 2 24 24 576 + 1 7 15 8 18 + -1 9 15 10 18 + +0.1516065598 + 1.793306708 -1 + 2 24 24 576 + 1 17 0 23 1 + -1 17 2 23 3 + +0.1715632081 + 5.832030773 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.1749719381 + -0.3840695918 -1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1643740386 + 5.267315865 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.1816268861 + 3.934653044 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.2166116089 + -4.189888477 -1 + 2 24 24 576 + 1 17 9 18 16 + -1 19 9 20 16 + +0.1793923974 + -6.43982172 1 + 3 24 24 576 + 1 14 9 19 16 + -2 17 9 19 12 + -2 14 13 16 16 + +0.1941453665 + 25.47777557 1 + 2 24 24 576 + 1 2 0 10 10 + -1 11 0 19 10 + +0.1609572917 + 0.3407966793 1 + 3 24 24 576 + 1 13 7 18 12 + -2 16 7 18 9 + -2 13 10 15 12 + +0.1453659385 + 0.637701869 1 + 3 24 24 576 + 1 14 13 17 16 + -2 16 13 17 14 + -2 14 15 15 16 + +0.1652734876 + 6.913785458 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1931592226 + 20.25396538 1 + 2 24 24 576 + 1 2 0 18 1 + -1 2 2 18 3 + +0.1838318408 + 6.928822994 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.1660985649 + 0.7473409772 1 + 3 24 24 576 + 1 13 15 16 22 + -2 15 15 16 18 + -2 13 19 14 22 + +0.1505623758 + 0.4587427676 -1 + 2 24 24 576 + 1 10 8 14 9 + -1 10 10 14 11 + +0.1757344306 + 2.634793997 -1 + 3 24 24 576 + 1 17 2 20 9 + -2 19 2 20 5 + -2 17 6 18 9 + +0.1939095855 + 0 -1 + 3 24 24 576 + 1 16 0 19 17 + -2 18 0 19 8 + -2 16 9 17 17 + +0.2160130292 + 4.248349667 1 + 2 24 24 576 + 1 17 3 18 6 + -1 19 3 20 6 + +0.1719359607 + 6.2970891 -1 + 2 24 24 576 + 1 16 8 17 14 + -1 18 8 19 14 + +0.1768563986 + -4.762655735 -1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1686734259 + 0.9525614381 1 + 2 24 24 576 + 1 16 1 17 4 + -1 18 1 19 4 + +0.1558350623 + -1.988085151 -1 + 2 24 24 576 + 1 16 3 17 19 + -1 18 3 19 19 + +0.1523891985 + 3.966510057 1 + 2 24 24 576 + 1 0 18 21 20 + -1 0 21 21 23 + +0.1362023205 + -4.760693073 -1 + 3 24 24 576 + 1 1 4 14 13 + -2 8 4 14 8 + -2 1 9 7 13 + +0.1394892633 + -38.20449829 -1 + 2 24 24 576 + 1 0 13 20 21 + -2 7 13 13 21 + +0.1578343809 + 2.115435362 1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.2307178676 + -4.000095844 1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1908912659 + 8.021858215 1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.1871111542 + -6.615543365 1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.1938565522 + 1.174505115 1 + 3 24 24 576 + 1 16 0 23 13 + -2 20 0 23 6 + -2 16 7 19 13 + +0.2039872408 + -4.975693226 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.156859532 + -7.65375042 1 + 3 24 24 576 + 1 4 7 19 14 + -2 12 7 19 10 + -2 4 11 11 14 + +0.1546120197 + 1.945313692 1 + 2 24 24 576 + 1 10 11 11 18 + -1 12 11 13 18 + +0.1650277525 + -4.018626213 -1 + 2 24 24 576 + 1 7 19 10 22 + -1 11 19 14 22 + +0.1494545043 + -2.34752655 -1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.1842106432 + -6.499350548 -1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.2620684505 + -9.625618935 1 + 2 24 24 576 + 1 14 3 15 16 + -1 16 3 17 16 + + +177 18.3799305 1 +0.4033821821 + 5.211410046 1 + 2 24 24 576 + 1 9 0 11 9 + -2 10 0 10 9 + +0.3495722115 + 14.39998055 1 + 2 24 24 576 + 1 4 10 18 13 + -2 9 10 13 13 + +0.3289144635 + -4.50536871 -1 + 2 24 24 576 + 1 7 3 9 8 + -1 10 3 12 8 + +0.2962750793 + -5.182073593 -1 + 3 24 24 576 + 1 9 17 22 20 + -2 16 17 22 18 + -2 9 19 15 20 + +0.2825951874 + -3.215810061 -1 + 3 24 24 576 + 1 0 3 7 6 + -2 4 3 7 4 + -2 0 5 3 6 + +0.2531843483 + 3.446107626 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.253749907 + 5.888352871 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.2395379394 + -10.65368176 -1 + 2 24 24 576 + 1 0 2 2 10 + -1 3 2 5 10 + +0.2260346711 + -12.48568153 -1 + 2 24 24 576 + 1 1 7 23 8 + -1 1 9 23 10 + +0.2353001833 + -79.55659485 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2486263216 + 5.078623295 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.2505766153 + 3.510016203 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.2438840121 + -7.53003788 1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.21881935 + 5.67924881 1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.2520114183 + 10.14429188 -1 + 3 24 24 576 + 1 7 9 16 18 + -2 12 9 16 13 + -2 7 14 11 18 + +0.2228717059 + 7.754044533 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2107450962 + 0.01523503941 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.1908565015 + 0.6351014376 1 + 2 24 24 576 + 1 3 10 10 11 + -1 3 12 10 13 + +0.2023643702 + 49.81145096 1 + 2 24 24 576 + 1 16 9 19 22 + -1 20 9 23 22 + +0.2070173919 + 2.953527689 1 + 2 24 24 576 + 1 11 3 12 10 + -1 13 3 14 10 + +0.1809470952 + 1.228450298 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.2093011588 + 1.041009188 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.1810823828 + 11.59535503 -1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.2322461605 + 24.18416023 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2261941284 + 3.680297852 -1 + 3 24 24 576 + 1 2 10 11 13 + -2 7 10 11 11 + -2 2 12 6 13 + +0.2122116685 + -39.66975021 -1 + 2 24 24 576 + 1 0 18 11 21 + -1 12 18 23 21 + +0.1969293505 + -0.3200286329 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.1949886084 + 25.1866684 1 + 2 24 24 576 + 1 7 11 11 22 + -1 12 11 16 22 + +0.1973381191 + 17.48848915 -1 + 3 24 24 576 + 1 4 5 21 12 + -2 13 5 21 8 + -2 4 9 12 12 + +0.196423322 + 21.33729172 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.1752006561 + -0.4826463163 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.1707303524 + 13.00597382 1 + 2 24 24 576 + 1 17 11 23 16 + -1 17 17 23 22 + +0.1647839099 + -1.5179317 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2071308941 + -13.17740631 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.231139347 + 2.398952961 -1 + 3 24 24 576 + 1 18 9 21 20 + -2 20 9 21 14 + -2 18 15 19 20 + +0.2198006809 + 2.180866241 -1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.312042594 + 2.248871803 1 + 3 24 24 576 + 1 18 5 23 20 + -2 21 5 23 12 + -2 18 13 20 20 + +0.2254021168 + 0.6542599201 -1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.2156761289 + 1.684454918 1 + 3 24 24 576 + 1 17 8 22 17 + -2 20 8 22 12 + -2 17 13 19 17 + +0.1913992763 + -0.4887211621 -1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.1776591241 + 2.681202173 1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.2214554697 + -17.66501808 -1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.3538805842 + -11.54296398 -1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.6375566721 + -9.489126205 1 + 2 24 24 576 + 1 9 16 14 20 + -2 11 16 12 20 + +0.1838811189 + 1.773876905 -1 + 3 24 24 576 + 1 18 3 21 6 + -2 20 3 21 4 + -2 18 5 19 6 + +0.2174725384 + -10.10724735 -1 + 2 24 24 576 + 1 6 19 14 22 + -1 15 19 23 22 + +0.2012806386 + -0.8688376546 -1 + 3 24 24 576 + 1 18 2 21 5 + -2 20 2 21 3 + -2 18 4 19 5 + +0.2628564835 + 0.937204659 -1 + 3 24 24 576 + 1 18 1 21 4 + -2 20 1 21 2 + -2 18 3 19 4 + +0.2691822052 + 1.838272333 1 + 3 24 24 576 + 1 18 0 21 7 + -2 20 0 21 3 + -2 18 4 19 7 + +0.2137748748 + 12.38732052 -1 + 3 24 24 576 + 1 18 0 23 5 + -2 21 0 23 2 + -2 18 3 20 5 + +0.2290755957 + 34.66100693 1 + 2 24 24 576 + 1 12 1 20 9 + -2 12 4 20 6 + +0.1982930005 + -4.38038969 -1 + 3 24 24 576 + 1 17 18 20 21 + -2 19 18 20 19 + -2 17 20 18 21 + +0.3193184733 + -1.274825335 -1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.4631615877 + -2.753252029 1 + 2 24 24 576 + 1 15 14 19 15 + -1 15 16 19 17 + +0.1817087233 + -2.4436059 -1 + 3 24 24 576 + 1 17 13 20 20 + -2 19 13 20 16 + -2 17 17 18 20 + +0.2431082726 + 3.613554955 -1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.1958263367 + 5.290204525 1 + 2 24 24 576 + 1 17 9 18 16 + -1 19 9 20 16 + +0.1830400974 + 9.909544945 1 + 2 24 24 576 + 1 3 4 22 5 + -1 3 6 22 7 + +0.1932930648 + -3.312443495 -1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.2716068327 + -1.774015427 1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1741808653 + -3.65635848 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.2465509772 + -6.411746979 -1 + 3 24 24 576 + 1 17 6 22 13 + -2 20 6 22 9 + -2 17 10 19 13 + +0.3144296408 + -10.54559803 1 + 3 24 24 576 + 1 15 7 22 12 + -2 19 7 22 9 + -2 15 10 18 12 + +0.1786157787 + 0.1448062807 -1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.203469798 + -7.547873497 -1 + 2 24 24 576 + 1 18 11 19 20 + -1 20 11 21 20 + +0.2216119766 + -9.464960098 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.2804019749 + 41.38918686 -1 + 3 24 24 576 + 1 10 1 19 20 + -2 15 1 19 10 + -2 10 11 14 20 + +0.2091667056 + -4.702072144 -1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.1918911338 + -11.9127121 1 + 3 24 24 576 + 1 16 2 23 13 + -2 20 2 23 7 + -2 16 8 19 13 + +0.1812065542 + -22.97456932 -1 + 2 24 24 576 + 1 4 13 13 22 + -1 14 13 23 22 + +0.1845733821 + 6.136165619 -1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.2181223929 + -1.926814914 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.1905929446 + -3.292228699 -1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.2825652957 + 12.39343739 -1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.1741560996 + 9.682902336 1 + 2 24 24 576 + 1 10 0 14 9 + -1 10 10 14 19 + +0.1770297736 + 10.93287373 -1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.2472051382 + 17.53547478 1 + 2 24 24 576 + 1 14 4 17 12 + -2 14 7 17 9 + +0.1980468035 + -3.880575418 -1 + 3 24 24 576 + 1 18 4 21 11 + -2 20 4 21 7 + -2 18 8 19 11 + +0.2380396873 + 12.47455502 -1 + 3 24 24 576 + 1 16 14 19 21 + -2 18 14 19 17 + -2 16 18 17 21 + +0.2433420271 + 7.339780807 1 + 3 24 24 576 + 1 17 2 20 9 + -2 19 2 20 5 + -2 17 6 18 9 + +0.2062829882 + -6.521203518 -1 + 3 24 24 576 + 1 17 7 20 18 + -2 19 7 20 12 + -2 17 13 18 18 + +0.2872230709 + 9.639429092 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.2663495243 + 9.028786659 -1 + 3 24 24 576 + 1 16 11 19 22 + -2 18 11 19 16 + -2 16 17 17 22 + +0.2870278358 + 11.80155849 1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.2278216481 + 1.789651871 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1845232695 + 8.42150116 1 + 2 24 24 576 + 1 5 13 17 15 + -2 5 14 17 14 + +0.2102110684 + 0.3925559521 -1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.2285862863 + -11.47609425 1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.1806070805 + -18.49900055 -1 + 3 24 24 576 + 1 16 8 21 19 + -2 19 8 21 13 + -2 16 14 18 19 + +0.2724652588 + 1.134050488 -1 + 3 24 24 576 + 1 16 7 21 20 + -2 19 7 21 13 + -2 16 14 18 20 + +0.3132406175 + 4.940407753 -1 + 2 24 24 576 + 1 17 18 18 21 + -1 19 18 20 21 + +0.1970390975 + 0.8997044563 1 + 2 24 24 576 + 1 14 10 18 11 + -1 14 12 18 13 + +0.2089226544 + -5.561970711 -1 + 2 24 24 576 + 1 13 0 21 10 + -2 16 0 18 10 + +0.184900254 + -0.6658975482 -1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.1819442064 + -8.383117676 -1 + 2 24 24 576 + 1 2 5 9 6 + -1 2 7 9 8 + +0.2141756713 + 2.227040529 -1 + 2 24 24 576 + 1 19 10 23 11 + -1 19 12 23 13 + +0.1870390028 + -4.865912437 -1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.2080149651 + -7.646340847 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.2528603375 + -13.54765415 1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.1803366393 + -40.91825485 -1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.2700008452 + 6.324512482 -1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.2342037708 + 2.111260176 1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.2254309356 + 7.502180099 -1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2094802558 + 2.431572437 1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.2363818735 + -7.807501316 -1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.3636696339 + -5.963812828 1 + 2 24 24 576 + 1 9 1 10 4 + -1 11 1 12 4 + +0.192159161 + 0.4935452938 1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.2130196989 + -25.28759956 -1 + 2 24 24 576 + 1 14 18 18 22 + -1 19 18 23 22 + +0.2320342362 + -11.82029533 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.3417107463 + -21.41610718 -1 + 3 24 24 576 + 1 16 0 19 17 + -2 18 0 19 8 + -2 16 9 17 17 + +0.6260024309 + -13.3951149 1 + 3 24 24 576 + 1 14 3 21 10 + -2 18 3 21 6 + -2 14 7 17 10 + +0.1939467043 + -6.629833698 -1 + 3 24 24 576 + 1 15 20 18 23 + -2 17 20 18 21 + -2 15 22 16 23 + +0.3161348104 + -20.28205681 -1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.4925147295 + -5.333376408 1 + 3 24 24 576 + 1 13 9 20 12 + -2 17 9 20 10 + -2 13 11 16 12 + +0.1963051558 + 0.3031680882 1 + 3 24 24 576 + 1 13 0 22 13 + -2 18 0 22 6 + -2 13 7 17 13 + +0.1829221398 + 13.11715126 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.2248961031 + 2.791508913 -1 + 3 24 24 576 + 1 15 15 20 18 + -2 18 15 20 16 + -2 15 17 17 18 + +0.198657766 + -141.8970184 -1 + 2 24 24 576 + 1 2 0 9 21 + -1 10 0 17 21 + +0.2152435333 + -0.6542599201 -1 + 3 24 24 576 + 1 15 12 18 19 + -2 17 12 18 15 + -2 15 16 16 19 + +0.2207983881 + 8.025588036 -1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.2342870235 + 10.30368328 1 + 3 24 24 576 + 1 15 5 22 22 + -2 19 5 22 13 + -2 15 14 18 22 + +0.2249527574 + 0.3053212762 -1 + 3 24 24 576 + 1 15 10 18 23 + -2 17 10 18 16 + -2 15 17 16 23 + +0.2458431423 + 3.272551298 1 + 3 24 24 576 + 1 14 13 21 20 + -2 18 13 21 16 + -2 14 17 17 20 + +0.241789192 + 4.797905922 -1 + 3 24 24 576 + 1 15 9 18 18 + -2 17 9 18 13 + -2 15 14 16 18 + +0.2263736576 + 1.576938629 1 + 3 24 24 576 + 1 13 14 20 17 + -2 17 14 20 15 + -2 13 16 16 17 + +0.1798731089 + 0.6437544823 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.1986965239 + 2.404399395 -1 + 3 24 24 576 + 1 9 12 12 23 + -2 11 12 12 17 + -2 9 18 10 23 + +0.2066969872 + -23.73313713 -1 + 2 24 24 576 + 1 1 12 3 20 + -1 4 12 6 20 + +0.1876949072 + 17.09497261 -1 + 3 24 24 576 + 1 13 1 18 12 + -2 16 1 18 6 + -2 13 7 15 12 + +0.2200424224 + 7.698136806 1 + 2 24 24 576 + 1 1 11 2 18 + -1 3 11 4 18 + +0.1829603016 + 19.69600677 -1 + 3 24 24 576 + 1 4 0 19 9 + -2 12 0 19 4 + -2 4 5 11 9 + +0.17518951 + 8.834677696 1 + 2 24 24 576 + 1 20 14 21 19 + -1 22 14 23 19 + +0.1929090023 + -6.064476013 1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1792351604 + -6.398800373 -1 + 2 24 24 576 + 1 6 9 17 10 + -1 6 11 17 12 + +0.1645501107 + 18.62758827 1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.1684778631 + -8.370925903 1 + 2 24 24 576 + 1 9 5 12 9 + -1 9 10 12 14 + +0.1842118502 + -0.641127646 -1 + 2 24 24 576 + 1 15 3 19 11 + -2 15 6 19 8 + +0.1664928794 + -2.95508337 -1 + 2 24 24 576 + 1 5 4 12 8 + -1 5 9 12 13 + +0.174150005 + -14.49954319 -1 + 2 24 24 576 + 1 0 0 9 11 + -2 0 4 9 7 + +0.1849237084 + -9.664248466 1 + 2 24 24 576 + 1 13 5 16 13 + -1 13 14 16 22 + +0.1708077788 + -2.394355774 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1615579128 + -1.788559198 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.1556165069 + -1.806716084 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.1899925768 + -6.40526104 1 + 3 24 24 576 + 1 14 9 19 16 + -2 17 9 19 12 + -2 14 13 16 16 + +0.1817732751 + 4.893342018 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.192830503 + -11.41996956 1 + 2 24 24 576 + 1 6 14 13 17 + -1 6 18 13 21 + +0.1548391283 + -3.46908164 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1713930368 + -6.704418659 1 + 2 24 24 576 + 1 10 12 15 16 + -1 10 17 15 21 + +0.1621875465 + -1.956902266 -1 + 3 24 24 576 + 1 13 19 20 22 + -2 17 19 20 20 + -2 13 21 16 22 + +0.1605437398 + -42.27301407 -1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.2436539382 + 11.59309483 -1 + 3 24 24 576 + 1 14 15 21 22 + -2 18 15 21 18 + -2 14 19 17 22 + +0.1990049928 + 11.44748592 1 + 3 24 24 576 + 1 13 12 20 23 + -2 17 12 20 17 + -2 13 18 16 23 + +0.2196271718 + 3.101529121 -1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.2025445551 + -7.196752071 -1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.2960881889 + 1.423093557 -1 + 3 24 24 576 + 1 14 13 17 16 + -2 16 13 17 14 + -2 14 15 15 16 + +0.2414973676 + 1.194618464 1 + 3 24 24 576 + 1 13 13 18 16 + -2 16 13 18 14 + -2 13 15 15 16 + +0.2440878153 + 3.576620817 -1 + 3 24 24 576 + 1 14 12 21 15 + -2 18 12 21 13 + -2 14 14 17 15 + +0.2095312625 + 5.651111126 1 + 2 24 24 576 + 1 15 5 17 13 + -1 18 5 20 13 + +0.1756657213 + -4.316853046 -1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.2636101544 + 14.79000759 -1 + 3 24 24 576 + 1 14 10 21 17 + -2 18 10 21 13 + -2 14 14 17 17 + +0.2124301195 + 15.78820133 1 + 3 24 24 576 + 1 13 9 22 20 + -2 18 9 22 14 + -2 13 15 17 20 + +0.1976337582 + 0.130851984 -1 + 3 24 24 576 + 1 14 10 17 21 + -2 16 10 17 15 + -2 14 16 15 21 + +0.1714636534 + 0.2886496186 1 + 2 24 24 576 + 1 5 6 6 17 + -1 7 6 8 17 + +0.1684588939 + -5.263072491 -1 + 2 24 24 576 + 1 15 14 17 17 + -1 18 14 20 17 + +0.2092194557 + 7.966835022 -1 + 2 24 24 576 + 1 5 5 6 14 + -1 7 5 8 14 + +0.1855015755 + -8.970586777 -1 + 3 24 24 576 + 1 3 12 6 23 + -2 5 12 6 17 + -2 3 18 4 23 + +0.1854116023 + -16.09479332 -1 + 3 24 24 576 + 1 15 0 20 21 + -2 18 0 20 10 + -2 15 11 17 21 + +0.2574555576 + -5.844848156 -1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.4101422429 + -9.361796379 1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.1698996723 + 3.556174755 -1 + 3 24 24 576 + 1 14 7 17 18 + -2 16 7 17 12 + -2 14 13 15 18 + +0.2342864126 + 3.705390692 1 + 3 24 24 576 + 1 13 8 18 17 + -2 16 8 18 12 + -2 13 13 15 17 + +0.1776277274 + 0.6888595223 -1 + 3 24 24 576 + 1 14 6 21 9 + -2 18 6 21 7 + -2 14 8 17 9 + +0.1668691784 + -7.663255692 -1 + 2 24 24 576 + 1 20 13 23 17 + -1 20 18 23 22 + +0.1936737895 + -19.49694443 -1 + 3 24 24 576 + 1 14 5 23 16 + -2 19 5 23 10 + -2 14 11 18 16 + +0.3099894524 + -22.24544334 1 + 3 24 24 576 + 1 14 4 21 19 + -2 18 4 21 11 + -2 14 12 17 19 + +0.1687264889 + 29.92079163 -1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.2810093462 + 17.9806118 1 + 2 24 24 576 + 1 18 0 23 8 + -2 20 0 21 8 + + +187 20.72752571 1 +0.3747240603 + -4.733973026 -1 + 3 24 24 576 + 1 6 5 11 12 + -2 9 5 11 8 + -2 6 9 8 12 + +0.3556892276 + 18.80723381 1 + 2 24 24 576 + 1 5 4 19 9 + -2 5 6 19 7 + +0.3248850405 + -3.269881487 -1 + 3 24 24 576 + 1 9 17 22 20 + -2 16 17 22 18 + -2 9 19 15 20 + +0.2881885171 + 27.36616325 1 + 2 24 24 576 + 1 11 0 16 3 + -1 17 0 22 3 + +0.2739987075 + -1.499527574 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.2464655638 + -8.057935715 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2612565756 + -5.753070354 -1 + 2 24 24 576 + 1 15 5 19 8 + -1 15 9 19 12 + +0.2589882314 + 4.226740837 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.222267434 + -0.8905006051 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.2221059054 + 4.305619717 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2196582705 + -79.06545258 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2647615075 + 10.97717571 -1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.200479418 + 2.938990831 1 + 2 24 24 576 + 1 9 20 13 21 + -1 9 22 13 23 + +0.1954585463 + 0.02240324207 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.2012865543 + 4.266161919 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.2539292276 + 2.529402494 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.203306824 + -33.58938217 -1 + 2 24 24 576 + 1 4 19 11 23 + -1 12 19 19 23 + +0.241361618 + 10.70863342 1 + 3 24 24 576 + 1 19 10 22 23 + -2 21 10 22 16 + -2 19 17 20 23 + +0.3342211246 + 30.52046776 1 + 3 24 24 576 + 1 19 7 22 20 + -2 21 7 22 13 + -2 19 14 20 20 + +0.6015617251 + 8.882385254 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.2076264471 + -0.3418384194 -1 + 3 24 24 576 + 1 4 2 7 5 + -2 6 2 7 3 + -2 4 4 5 5 + +0.1899780184 + -1.036748528 -1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.2165139019 + -16.37874794 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2490222901 + -6.613263607 1 + 3 24 24 576 + 1 19 6 22 15 + -2 21 6 22 10 + -2 19 11 20 15 + +0.2064458579 + 20.12668991 1 + 2 24 24 576 + 1 18 16 20 20 + -1 21 16 23 20 + +0.243288815 + 0.1820164323 1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.2220115364 + 8.403092384 1 + 3 24 24 576 + 1 18 17 23 20 + -2 21 17 23 18 + -2 18 19 20 20 + +0.3610002697 + -8.041834831 1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.2348100841 + -4.587975979 -1 + 3 24 24 576 + 1 18 5 23 20 + -2 21 5 23 12 + -2 18 13 20 20 + +0.2125014812 + -2.972934961 1 + 3 24 24 576 + 1 18 14 21 21 + -2 20 14 21 17 + -2 18 18 19 21 + +0.2626170516 + -8.406035423 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.2308011353 + 3.3220644 1 + 3 24 24 576 + 1 18 12 21 15 + -2 20 12 21 13 + -2 18 14 19 15 + +0.3626240492 + 3.202567339 1 + 3 24 24 576 + 1 18 10 21 17 + -2 20 10 21 13 + -2 18 14 19 17 + +0.4598253369 + -8.286426544 1 + 3 24 24 576 + 1 18 9 21 20 + -2 20 9 21 14 + -2 18 15 19 20 + +0.228081286 + -12.1590414 -1 + 3 24 24 576 + 1 15 5 22 22 + -2 19 5 22 13 + -2 15 14 18 22 + +0.2607546747 + -3.883017302 1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.2235121876 + 0.4284730852 -1 + 3 24 24 576 + 1 18 13 21 16 + -2 20 13 21 14 + -2 18 15 19 16 + +0.2208074629 + -1.836313248 -1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.2186137289 + 1.502968311 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.228161484 + -12.71081448 1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.2964780033 + -47.51941299 -1 + 2 24 24 576 + 1 16 7 19 17 + -1 20 7 23 17 + +0.2508590817 + -13.98492908 1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.2338825166 + 9.829770088 1 + 2 24 24 576 + 1 8 14 14 19 + -2 8 16 14 17 + +0.2136303633 + 4.550410748 1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.2820880711 + -5.344772816 1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.2413472682 + 123.9713287 1 + 2 24 24 576 + 1 0 0 10 19 + -1 11 0 21 19 + +0.2313912809 + -4.413134575 1 + 3 24 24 576 + 1 18 2 21 5 + -2 20 2 21 3 + -2 18 4 19 5 + +0.2805858254 + 26.58527565 1 + 2 24 24 576 + 1 18 14 20 22 + -1 21 14 23 22 + +0.2167233825 + -4.266572952 1 + 3 24 24 576 + 1 18 1 21 4 + -2 20 1 21 2 + -2 18 3 19 4 + +0.2619529665 + 11.67090893 1 + 3 24 24 576 + 1 20 7 23 18 + -2 22 7 23 12 + -2 20 13 21 18 + +0.2183991075 + -2.272580624 1 + 3 24 24 576 + 1 18 0 21 7 + -2 20 0 21 3 + -2 18 4 19 7 + +0.2170813829 + -14.42254066 -1 + 2 24 24 576 + 1 2 0 10 19 + -2 5 0 7 19 + +0.2018398941 + 1.738363266 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.1918566972 + 0.7454985976 1 + 2 24 24 576 + 1 14 13 18 14 + -1 14 15 18 16 + +0.2066626251 + -17.33843231 -1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2523783445 + -2.45897913 1 + 3 24 24 576 + 1 17 16 20 19 + -2 19 16 20 17 + -2 17 18 18 19 + +0.1983317435 + 19.23664474 1 + 2 24 24 576 + 1 7 0 17 2 + -1 7 3 17 5 + +0.216952458 + 0.6117172241 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.2163566351 + -22.5612812 -1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.2412720025 + -16.17063713 1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.2433360964 + 37.24169159 1 + 2 24 24 576 + 1 0 17 4 22 + -1 5 17 9 22 + +0.2273509204 + -16.54518318 1 + 3 24 24 576 + 1 17 7 20 18 + -2 19 7 20 12 + -2 17 13 18 18 + +0.2528046072 + 44.47119522 1 + 2 24 24 576 + 1 20 6 23 14 + -1 20 15 23 23 + +0.2292897403 + 0.4071157277 1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.2959295809 + -4.643722534 1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.3508616984 + -1.523261547 -1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.2666041255 + -8.055430412 1 + 3 24 24 576 + 1 17 4 20 15 + -2 19 4 20 9 + -2 17 10 18 15 + +0.2095354497 + 0 -1 + 3 24 24 576 + 1 14 6 21 9 + -2 18 6 21 7 + -2 14 8 17 9 + +0.2071495205 + 24.50188255 1 + 2 24 24 576 + 1 6 8 17 14 + -2 10 8 13 14 + +0.2115974575 + 8.516860962 1 + 3 24 24 576 + 1 17 3 20 10 + -2 19 3 20 6 + -2 17 7 18 10 + +0.3379864991 + -6.693365574 1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.2088793963 + -7.658854961 -1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.257249862 + 13.49120808 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.4312678874 + -5.284235954 1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.2089016438 + -1.791309237 1 + 3 24 24 576 + 1 16 19 19 22 + -2 18 19 19 20 + -2 16 21 17 22 + +0.2374007106 + -13.81353378 -1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.2211112976 + 1.188777924 1 + 3 24 24 576 + 1 16 17 21 20 + -2 19 17 21 18 + -2 16 19 18 20 + +0.2739204764 + -0.0654913038 1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.2847935259 + 5.56676054 1 + 3 24 24 576 + 1 16 14 19 21 + -2 18 14 19 17 + -2 16 18 17 21 + +0.4459029436 + 1.28671217 1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.5279978514 + -3.447504044 1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.3579012752 + 0.4597446024 -1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.2258937508 + -3.040547848 -1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.2201617956 + -0.6977296472 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2514739037 + 10.11773682 -1 + 2 24 24 576 + 1 14 11 17 16 + -1 14 17 17 22 + +0.2104338706 + 7.836315155 1 + 2 24 24 576 + 1 19 12 22 17 + -1 19 18 22 23 + +0.2198735476 + -10.72517872 -1 + 2 24 24 576 + 1 6 19 14 22 + -1 15 19 23 22 + +0.2408889383 + -9.828886986 1 + 3 24 24 576 + 1 16 10 19 17 + -2 18 10 19 13 + -2 16 14 17 17 + +0.2670712769 + 8.558141708 1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.2258504182 + 0.6067214608 1 + 3 24 24 576 + 1 16 8 19 13 + -2 18 8 19 10 + -2 16 11 17 13 + +0.2835922837 + -4.624835014 1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.1898243725 + 0.01722368598 1 + 2 24 24 576 + 1 1 15 5 16 + -1 1 17 5 18 + +0.2026095986 + 10.30168247 1 + 3 24 24 576 + 1 0 0 3 21 + -2 2 0 3 10 + -2 0 11 1 21 + +0.2242896408 + -0.1213442907 1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.27375862 + -6.025312901 1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.3337802589 + -3.927645206 -1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.2471240908 + 0.7280657291 1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.2801087797 + -6.522255421 1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.2408358604 + -2.504216194 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.1896718889 + -2.912262917 1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.213686958 + -0.9611467123 1 + 2 24 24 576 + 1 18 9 23 10 + -1 18 11 23 12 + +0.1914757192 + 0.7207578421 1 + 2 24 24 576 + 1 14 5 15 8 + -1 16 5 17 8 + +0.1908937991 + 0.4773910642 1 + 2 24 24 576 + 1 4 5 5 8 + -1 6 5 7 8 + +0.1791256368 + 3.687323332 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2196428329 + 10.98165798 1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.3585343957 + 2.62489295 1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.423350811 + 22.61386681 -1 + 3 24 24 576 + 1 12 3 23 10 + -2 18 3 23 6 + -2 12 7 17 10 + +0.2239811122 + -1.297613263 -1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.227861926 + 2.573441744 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.2012990862 + 4.329204082 -1 + 3 24 24 576 + 1 10 0 21 3 + -2 16 0 21 1 + -2 10 2 15 3 + +0.2548190653 + -4.228144646 -1 + 2 24 24 576 + 1 16 2 18 6 + -1 19 2 21 6 + +0.2072008401 + 12.61980629 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.3328666687 + -12.55831146 1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.1873528063 + -0.8961411715 -1 + 3 24 24 576 + 1 14 1 23 4 + -2 19 1 23 2 + -2 14 3 18 4 + +0.178875491 + 1.733490109 1 + 2 24 24 576 + 1 13 1 16 3 + -1 13 4 16 6 + +0.1891671419 + 4.387874126 1 + 2 24 24 576 + 1 10 16 17 18 + -2 10 17 17 17 + +0.2058331221 + 6.977296352 1 + 3 24 24 576 + 1 15 15 20 18 + -2 18 15 20 16 + -2 15 17 17 18 + +0.3393350244 + 3.293983221 1 + 3 24 24 576 + 1 15 12 18 19 + -2 17 12 18 15 + -2 15 16 16 19 + +0.5129231215 + 4.271884441 1 + 3 24 24 576 + 1 15 11 20 18 + -2 18 11 20 14 + -2 15 15 17 18 + +0.7361164093 + 6.630460262 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.2487177253 + 0.156119898 1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.2472180426 + -1.268077254 -1 + 3 24 24 576 + 1 17 12 20 19 + -2 19 12 20 15 + -2 17 16 18 19 + +0.2542212307 + -26.00655365 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.2539046407 + 20.22361755 1 + 2 24 24 576 + 1 1 20 18 23 + -2 7 20 12 23 + +0.2304576337 + 1.780770779 -1 + 3 24 24 576 + 1 15 9 18 18 + -2 17 9 18 13 + -2 15 14 16 18 + +0.207065925 + -0.5558767319 -1 + 2 24 24 576 + 1 14 15 15 18 + -1 16 15 17 18 + +0.1960296482 + -5.544425488 -1 + 2 24 24 576 + 1 18 2 20 9 + -2 19 2 19 9 + +0.2221807837 + -3.336967945 1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.2054932564 + 1.008826017 1 + 2 24 24 576 + 1 14 10 18 11 + -1 14 12 18 13 + +0.187886849 + 6.218894958 1 + 3 24 24 576 + 1 15 6 20 11 + -2 18 6 20 8 + -2 15 9 17 11 + +0.3025729954 + 11.02216244 1 + 3 24 24 576 + 1 15 5 20 18 + -2 18 5 20 11 + -2 15 12 17 18 + +0.4770992994 + -43.61167145 1 + 3 24 24 576 + 1 2 3 19 16 + -2 11 3 19 9 + -2 2 10 10 16 + +0.2352820039 + -3.931091547 -1 + 3 24 24 576 + 1 15 1 20 18 + -2 18 1 20 9 + -2 15 10 17 18 + +0.2123155892 + 19.52895546 -1 + 3 24 24 576 + 1 3 5 22 14 + -2 13 5 22 9 + -2 3 10 12 14 + +0.2042138427 + -6.398800373 -1 + 2 24 24 576 + 1 6 9 17 10 + -1 6 11 17 12 + +0.1861173511 + -0.3646353781 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1744953394 + -7.48643446 -1 + 2 24 24 576 + 1 0 0 3 5 + -2 0 2 3 3 + +0.1882344484 + -4.529092789 1 + 3 24 24 576 + 1 15 5 18 14 + -2 17 5 18 9 + -2 15 10 16 14 + +0.1967496723 + -0.8523182273 1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.2471478283 + 14.44187927 1 + 3 24 24 576 + 1 14 15 21 22 + -2 18 15 21 18 + -2 14 19 17 22 + +0.1976670921 + -27.66528702 1 + 3 24 24 576 + 1 15 2 20 19 + -2 18 2 20 10 + -2 15 11 17 19 + +0.2375418246 + 50.36975479 1 + 2 24 24 576 + 1 17 2 22 12 + -1 17 13 22 23 + +0.2026907653 + -5.079928398 1 + 3 24 24 576 + 1 15 4 20 9 + -2 18 4 20 6 + -2 15 7 17 9 + +0.2016159445 + -3.693628788 -1 + 2 24 24 576 + 1 11 4 16 15 + -2 13 4 14 15 + +0.1863976121 + 5.787794113 1 + 3 24 24 576 + 1 10 5 17 16 + -2 14 5 17 10 + -2 10 11 13 16 + +0.1703785956 + 0.3537546098 1 + 2 24 24 576 + 1 19 11 20 14 + -1 21 11 22 14 + +0.1979630291 + 8.363991737 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.2158996314 + -7.344475269 1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.1948180348 + -2.443020821 1 + 2 24 24 576 + 1 9 15 14 18 + -2 11 15 12 18 + +0.1815859973 + -0.727717042 -1 + 2 24 24 576 + 1 17 3 18 6 + -1 19 3 20 6 + +0.1743916571 + -0.7140461802 1 + 3 24 24 576 + 1 14 17 21 20 + -2 18 17 21 18 + -2 14 19 17 20 + +0.1981551498 + -5.36554718 1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.2108189762 + -3.188518047 -1 + 3 24 24 576 + 1 12 17 23 20 + -2 18 17 23 18 + -2 12 19 17 20 + +0.1798455715 + -2.182215691 1 + 3 24 24 576 + 1 11 14 14 23 + -2 13 14 14 18 + -2 11 19 12 23 + +0.1998330653 + -2.458501816 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1731857061 + -0.3799645901 -1 + 3 24 24 576 + 1 4 14 9 17 + -2 7 14 9 15 + -2 4 16 6 17 + +0.1729478091 + 5.886651993 1 + 3 24 24 576 + 1 3 11 12 22 + -2 8 11 12 16 + -2 3 17 7 22 + +0.1766937226 + -8.794393539 1 + 2 24 24 576 + 1 7 14 14 17 + -1 7 18 14 21 + +0.1941531748 + -3.187934875 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1703729481 + -3.695089817 -1 + 2 24 24 576 + 1 6 5 10 6 + -1 6 7 10 8 + +0.2035336494 + 1.837150455 -1 + 3 24 24 576 + 1 11 8 22 11 + -2 17 8 22 9 + -2 11 10 16 11 + +0.174925223 + 1.629673243 1 + 3 24 24 576 + 1 13 8 16 11 + -2 15 8 16 9 + -2 13 10 14 11 + +0.1846717298 + 7.676775455 -1 + 2 24 24 576 + 1 6 4 7 21 + -1 8 4 9 21 + +0.1891489923 + 40.43218613 1 + 2 24 24 576 + 1 15 15 18 22 + -1 19 15 22 22 + +0.2027456611 + 3.124158621 -1 + 3 24 24 576 + 1 2 10 11 13 + -2 7 10 11 11 + -2 2 12 6 13 + +0.1775554121 + -15.73592758 -1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.2088221014 + -4.10167551 1 + 2 24 24 576 + 1 7 0 13 6 + -1 7 7 13 13 + +0.1536856294 + -8.914245605 1 + 2 24 24 576 + 1 7 1 8 7 + -1 9 1 10 7 + +0.2027235329 + -158.4684906 -1 + 2 24 24 576 + 1 2 0 10 20 + -1 11 0 19 20 + +0.1904862076 + -5.582116127 1 + 2 24 24 576 + 1 10 4 13 15 + -1 14 4 17 15 + +0.168948859 + 6.740087986 1 + 2 24 24 576 + 1 7 6 15 10 + -2 10 6 12 10 + +0.178279832 + 4.70336628 -1 + 2 24 24 576 + 1 3 14 7 15 + -1 3 16 7 17 + +0.190916881 + -20.1652565 -1 + 3 24 24 576 + 1 0 3 3 22 + -2 2 3 3 12 + -2 0 13 1 22 + +0.1922403574 + 7.189533234 -1 + 2 24 24 576 + 1 3 17 8 18 + -1 3 19 8 20 + +0.1946168542 + 19.9083519 1 + 3 24 24 576 + 1 0 0 5 19 + -2 3 0 5 9 + -2 0 10 2 19 + +0.1638130844 + 7.702121735 -1 + 2 24 24 576 + 1 8 18 16 21 + -2 11 18 13 21 + +0.1750783771 + 15.96850491 1 + 2 24 24 576 + 1 0 7 1 19 + -1 2 7 3 19 + +0.176987797 + 3.900358438 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1563897431 + 8.959256172 1 + 3 24 24 576 + 1 15 2 18 19 + -2 17 2 18 10 + -2 15 11 16 19 + +0.1951260269 + 22.05307007 -1 + 3 24 24 576 + 1 13 1 20 12 + -2 17 1 20 6 + -2 13 7 16 12 + +0.1754920185 + -10.15962219 1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.2163467258 + -2.485865355 1 + 3 24 24 576 + 1 14 3 19 8 + -2 17 3 19 5 + -2 14 6 16 8 + +0.3494913876 + -11.32817268 -1 + 2 24 24 576 + 1 6 4 16 5 + -1 6 6 16 7 + +0.1741348207 + -5.075426102 -1 + 2 24 24 576 + 1 10 6 17 7 + -1 10 8 17 9 + +0.1540424079 + 0.1808348298 -1 + 2 24 24 576 + 1 12 1 20 9 + -2 12 4 20 6 + +0.1885338724 + 24.77030182 -1 + 2 24 24 576 + 1 8 4 12 13 + -1 13 4 17 13 + +0.1699258089 + 0.01160929445 1 + 3 24 24 576 + 1 14 3 17 6 + -2 16 3 17 4 + -2 14 5 15 6 + + +197 16.22138596 1 +0.3664463758 + 14.46753979 1 + 2 24 24 576 + 1 4 10 18 13 + -2 9 10 13 13 + +0.3489809632 + 4.660767555 1 + 2 24 24 576 + 1 9 0 11 9 + -2 10 0 10 9 + +0.3097682595 + -3.831804276 -1 + 2 24 24 576 + 1 8 3 9 9 + -1 10 3 11 9 + +0.2889107764 + -2.66012454 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.2638158202 + 2.036157608 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.2469738424 + -8.057935715 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2383010089 + -12.48568153 -1 + 2 24 24 576 + 1 1 7 23 8 + -1 1 9 23 10 + +0.2283773869 + -79.06545258 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2569503486 + 2.468652964 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.229228124 + -6.597583294 -1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.2308910787 + 3.659793615 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.2263777703 + 1.0441401 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.2097367048 + -0.9163104296 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.1842131466 + -1.717258453 -1 + 3 24 24 576 + 1 0 3 7 6 + -2 4 3 7 4 + -2 0 5 3 6 + +0.2034278661 + 4.590577602 1 + 2 24 24 576 + 1 20 21 23 23 + -2 20 22 23 22 + +0.2476436943 + 1.668889523 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.2007770687 + 11.45263863 1 + 2 24 24 576 + 1 7 5 12 13 + -2 9 5 10 13 + +0.1970032454 + -0.8724107146 -1 + 2 24 24 576 + 1 13 9 15 12 + -1 16 9 18 12 + +0.1839906573 + 6.054326057 1 + 2 24 24 576 + 1 0 10 1 23 + -1 2 10 3 23 + +0.2171737999 + -22.05364418 1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.2428305 + -17.77788544 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2250668108 + -5.776565552 1 + 3 24 24 576 + 1 19 5 22 10 + -2 21 5 22 7 + -2 19 8 20 10 + +0.2132973522 + 51.01398468 1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.2022908181 + 11.91546631 -1 + 3 24 24 576 + 1 1 7 14 16 + -2 8 7 14 11 + -2 1 12 7 16 + +0.2022334635 + 133.8744812 1 + 2 24 24 576 + 1 2 8 11 21 + -1 12 8 21 21 + +0.2371643484 + 9.801423073 -1 + 2 24 24 576 + 1 5 12 8 15 + -1 9 12 12 15 + +0.1926471293 + -6.401669979 -1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.1843669415 + 0.6190108657 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.1728651822 + -0.9629538059 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.1718569696 + -0.6236169934 -1 + 3 24 24 576 + 1 4 3 7 6 + -2 6 3 7 4 + -2 4 5 5 6 + +0.1681108326 + 24.24299622 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2068221867 + 7.137535095 -1 + 2 24 24 576 + 1 4 11 7 15 + -1 8 11 11 15 + +0.1823746562 + -0.7471245527 -1 + 3 24 24 576 + 1 10 14 15 17 + -2 13 14 15 15 + -2 10 16 12 17 + +0.1671226919 + 1.861501098 1 + 3 24 24 576 + 1 7 5 20 10 + -2 14 5 20 7 + -2 7 8 13 10 + +0.1731030047 + -4.040565968 -1 + 2 24 24 576 + 1 3 6 12 7 + -1 3 8 12 9 + +0.2078500688 + -27.57912064 -1 + 2 24 24 576 + 1 15 15 18 22 + -1 19 15 22 22 + +0.2029636651 + 5.938423157 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.19375512 + 5.422617435 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.1949358732 + 8.009321213 -1 + 3 24 24 576 + 1 1 0 20 3 + -2 11 0 20 1 + -2 1 2 10 3 + +0.1744446009 + 22.65653038 1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.1741822809 + 0.172168985 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.1726133376 + -14.60604668 -1 + 2 24 24 576 + 1 5 20 12 23 + -1 13 20 20 23 + +0.1750588417 + 0.8645413518 1 + 2 24 24 576 + 1 6 10 10 13 + -1 6 14 10 17 + +0.183266446 + 11.18694592 1 + 2 24 24 576 + 1 0 0 2 16 + -2 1 0 1 16 + +0.2028622478 + -6.946619511 1 + 3 24 24 576 + 1 4 15 19 18 + -2 12 15 19 16 + -2 4 17 11 18 + +0.1753580421 + 42.96453476 1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.1819832474 + 0.4318202734 -1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.1775901467 + -10.12545204 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.1672621071 + -5.350444794 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.1769588292 + -1.716618419 -1 + 2 24 24 576 + 1 8 17 14 19 + -2 8 18 14 18 + +0.1629428118 + -4.356428146 -1 + 2 24 24 576 + 1 12 0 23 13 + -2 16 0 19 13 + +0.1437449753 + 6.427949905 1 + 3 24 24 576 + 1 3 11 8 22 + -2 6 11 8 16 + -2 3 17 5 22 + +0.1754351854 + 10.11579418 -1 + 3 24 24 576 + 1 7 9 16 18 + -2 12 9 16 13 + -2 7 14 11 18 + +0.1852512658 + -8.970586777 -1 + 3 24 24 576 + 1 3 12 6 23 + -2 5 12 6 17 + -2 3 18 4 23 + +0.1675599068 + -3.254005909 1 + 3 24 24 576 + 1 6 0 13 3 + -2 10 0 13 1 + -2 6 2 9 3 + +0.192076236 + -11.33307838 -1 + 2 24 24 576 + 1 6 0 14 4 + -1 15 0 23 4 + +0.1723589301 + 12.29491425 -1 + 2 24 24 576 + 1 0 6 17 9 + -2 6 6 11 9 + +0.1674128324 + -14.63336754 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.1818826497 + 4.132422924 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.167055279 + -0.9972885251 -1 + 3 24 24 576 + 1 6 15 9 18 + -2 8 15 9 16 + -2 6 17 7 18 + +0.1409778148 + -8.945696831 1 + 2 24 24 576 + 1 2 17 19 18 + -1 2 19 19 20 + +0.1806627065 + -5.071043015 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.173206538 + -8.452424049 1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1744301915 + -1.32047236 -1 + 2 24 24 576 + 1 3 0 7 11 + -2 3 4 7 7 + +0.1617748886 + 4.982522964 1 + 2 24 24 576 + 1 8 0 12 4 + -1 8 5 12 9 + +0.145599857 + 2.871900797 1 + 2 24 24 576 + 1 3 8 9 10 + -2 3 9 9 9 + +0.1543840766 + 5.050833702 -1 + 2 24 24 576 + 1 14 18 23 19 + -1 14 20 23 21 + +0.1601074785 + 8.014671326 1 + 3 24 24 576 + 1 0 2 3 21 + -2 2 2 3 11 + -2 0 12 1 21 + +0.1586645842 + 6.558426857 -1 + 2 24 24 576 + 1 2 16 10 17 + -1 2 18 10 19 + +0.1737900227 + -18.67606735 -1 + 2 24 24 576 + 1 6 14 10 20 + -1 11 14 15 20 + +0.1573760659 + 0.9186015129 1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.2183457911 + -10.15843201 1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1929040104 + -3.493146181 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1512918472 + 24.49044418 1 + 2 24 24 576 + 1 17 10 23 16 + -1 17 17 23 23 + +0.1574247628 + -1.292717695 -1 + 2 24 24 576 + 1 12 0 20 14 + -2 15 0 17 14 + +0.1734540761 + 1.794815779 -1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.1518687904 + 9.810821533 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.1714572161 + -12.7579813 1 + 2 24 24 576 + 1 12 2 14 20 + -1 15 2 17 20 + +0.1656984985 + -4.128186226 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1562305838 + -0.600959897 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1487220824 + 0.4724605083 1 + 2 24 24 576 + 1 4 5 5 8 + -1 6 5 7 8 + +0.1312836558 + -5.910500526 -1 + 2 24 24 576 + 1 2 0 10 19 + -2 5 0 7 19 + +0.1373088658 + -0.6547397375 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1365986168 + 5.62831831 1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1888737828 + -6.963447094 1 + 3 24 24 576 + 1 5 1 8 8 + -2 7 1 8 4 + -2 5 5 6 8 + +0.1598516852 + -5.320178032 -1 + 2 24 24 576 + 1 5 15 18 20 + -2 5 17 18 18 + +0.146916151 + 0 -1 + 2 24 24 576 + 1 4 0 23 1 + -1 4 2 23 3 + +0.1412761211 + 2.54804635 1 + 2 24 24 576 + 1 7 14 12 15 + -1 7 16 12 17 + +0.1495678127 + 2.583103895 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.1645818055 + 26.79228401 1 + 2 24 24 576 + 1 16 11 18 19 + -1 19 11 21 19 + +0.1671516448 + -29.88409996 1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.2098346353 + 23.19322968 1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.1800879091 + -3.551794291 1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.1488292813 + 10.03684044 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1719235033 + -3.260550261 1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.1897051781 + -0.3318867981 -1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.15068461 + 2.236245394 1 + 2 24 24 576 + 1 6 13 20 16 + -2 11 13 15 16 + +0.1565501988 + -0.1889182627 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.1727460176 + -9.448437691 1 + 2 24 24 576 + 1 14 7 15 16 + -1 16 7 17 16 + +0.1698459834 + 9.323039055 1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.168805033 + 2.753245354 1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.2607120574 + 17.07260895 -1 + 2 24 24 576 + 1 3 12 9 14 + -1 3 15 9 17 + +0.1420011222 + 18.65355682 1 + 2 24 24 576 + 1 1 11 3 18 + -1 4 11 6 18 + +0.1783438772 + -19.74508858 1 + 3 24 24 576 + 1 16 2 23 13 + -2 20 2 23 7 + -2 16 8 19 13 + +0.1706722379 + -19.6168232 -1 + 3 24 24 576 + 1 16 0 23 13 + -2 20 0 23 6 + -2 16 7 19 13 + +0.1771372855 + -9.865796089 1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.1929987073 + 7.256820202 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.171103999 + 21.32784653 1 + 2 24 24 576 + 1 18 17 20 22 + -1 21 17 23 22 + +0.1694816947 + 10.2469101 1 + 3 24 24 576 + 1 20 1 23 20 + -2 22 1 23 10 + -2 20 11 21 20 + +0.2402110845 + 5.237083435 -1 + 3 24 24 576 + 1 2 9 11 12 + -2 7 9 11 10 + -2 2 11 6 12 + +0.1577288508 + 13.57463646 1 + 2 24 24 576 + 1 1 6 6 14 + -1 1 15 6 23 + +0.148406893 + -5.214715481 -1 + 2 24 24 576 + 1 18 3 20 6 + -1 21 3 23 6 + +0.1712483764 + 0.4419840276 1 + 2 24 24 576 + 1 19 11 20 14 + -1 21 11 22 14 + +0.1384266466 + -4.124002934 -1 + 3 24 24 576 + 1 17 5 20 20 + -2 19 5 20 12 + -2 17 13 18 20 + +0.1709185094 + 9.910873413 -1 + 2 24 24 576 + 1 12 3 20 13 + -2 15 3 17 13 + +0.1877315789 + -4.152943134 -1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.2323263884 + 8.969237328 -1 + 2 24 24 576 + 1 8 18 16 21 + -2 11 18 13 21 + +0.1726510227 + -8.280916214 -1 + 2 24 24 576 + 1 1 2 8 7 + -2 1 4 8 5 + +0.1498248577 + 2.7344172 -1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.1766210347 + -2.54354763 -1 + 2 24 24 576 + 1 18 15 23 18 + -2 20 15 21 18 + +0.1579351723 + -4.916808128 -1 + 3 24 24 576 + 1 16 10 19 17 + -2 18 10 19 13 + -2 16 14 17 17 + +0.2103871554 + -9.7249403 1 + 3 24 24 576 + 1 12 8 21 15 + -2 17 8 21 11 + -2 12 12 16 15 + +0.1677612066 + 7.579900265 1 + 2 24 24 576 + 1 19 0 21 17 + -2 20 0 20 17 + +0.1637748182 + -0.1394838989 -1 + 2 24 24 576 + 1 5 5 12 9 + -1 5 10 12 14 + +0.1534421146 + 8.947161674 1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.162906751 + 5.477077007 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1518475562 + -13.76332664 -1 + 3 24 24 576 + 1 0 16 13 23 + -2 7 16 13 19 + -2 0 20 6 23 + +0.1515933126 + 13.79572296 1 + 3 24 24 576 + 1 7 1 20 18 + -2 14 1 20 9 + -2 7 10 13 18 + +0.1480231583 + -1.302068472 -1 + 2 24 24 576 + 1 4 19 6 23 + -1 7 19 9 23 + +0.1501686871 + 9.523273468 1 + 2 24 24 576 + 1 3 19 10 22 + -1 11 19 18 22 + +0.1745355874 + 2.445461273 -1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.1671180427 + 5.772164822 -1 + 3 24 24 576 + 1 15 5 18 14 + -2 17 5 18 9 + -2 15 10 16 14 + +0.1833243072 + 26.68536758 1 + 3 24 24 576 + 1 13 6 22 21 + -2 18 6 22 13 + -2 13 14 17 21 + +0.1720657945 + -8.711050987 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.2150189877 + 14.5175581 -1 + 2 24 24 576 + 1 8 5 12 8 + -1 13 5 17 8 + +0.1516330689 + 1.558352709 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1645840555 + 6.397246838 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.2292231768 + 5.731294632 -1 + 2 24 24 576 + 1 15 18 19 19 + -1 15 20 19 21 + +0.1502532512 + 1.212328434 1 + 3 24 24 576 + 1 12 5 17 8 + -2 15 5 17 6 + -2 12 7 14 8 + +0.1393199563 + 3.820997715 1 + 2 24 24 576 + 1 2 10 13 11 + -1 2 12 13 13 + +0.1575573981 + 0 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1372614205 + -4.904563904 -1 + 2 24 24 576 + 1 0 5 20 15 + -2 7 5 13 15 + +0.163599804 + 21.77413177 -1 + 2 24 24 576 + 1 7 3 17 11 + -2 7 6 17 8 + +0.1465733647 + 1.373679519 1 + 2 24 24 576 + 1 12 16 21 19 + -1 12 20 21 23 + +0.1376806349 + -2.978140593 1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.1353390068 + 1.690098047 1 + 2 24 24 576 + 1 17 13 18 16 + -1 19 13 20 16 + +0.1408481896 + -13.88564491 1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.1882332265 + 10.52618599 1 + 3 24 24 576 + 1 15 0 18 23 + -2 17 0 18 11 + -2 15 12 16 23 + +0.2731083333 + -2.953099012 1 + 3 24 24 576 + 1 14 1 17 4 + -2 16 1 17 2 + -2 14 3 15 4 + +0.1463244706 + -6.41843462 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.1598067135 + -7.727761269 1 + 3 24 24 576 + 1 14 17 21 20 + -2 18 17 21 18 + -2 14 19 17 20 + +0.1809585243 + 4.035561085 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1807592511 + 1.220033765 1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.2050934434 + 11.36574173 1 + 3 24 24 576 + 1 14 13 21 20 + -2 18 13 21 16 + -2 14 17 17 20 + +0.3319822848 + 22.08502579 -1 + 2 24 24 576 + 1 10 13 17 16 + -1 10 17 17 20 + +0.2182786167 + -3.460258007 -1 + 3 24 24 576 + 1 13 16 22 21 + -2 18 16 22 18 + -2 13 19 17 21 + +0.1507466435 + -3.424374342 -1 + 3 24 24 576 + 1 12 0 15 9 + -2 14 0 15 4 + -2 12 5 13 9 + +0.1529639959 + 19.7473774 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.2520704567 + -0.8774920702 1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1984051466 + 12.73173141 -1 + 3 24 24 576 + 1 11 7 22 20 + -2 17 7 22 13 + -2 11 14 16 20 + +0.1625554413 + 0.7846434712 1 + 3 24 24 576 + 1 12 16 17 19 + -2 15 16 17 17 + -2 12 18 14 19 + +0.1453956515 + 2.322660685 1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1486627311 + 0.2915667892 -1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.1696783751 + -78.91793823 -1 + 2 24 24 576 + 1 0 1 8 8 + -1 9 1 17 8 + +0.1493175328 + 1.142751217 1 + 3 24 24 576 + 1 14 13 17 16 + -2 16 13 17 14 + -2 14 15 15 16 + +0.2027733922 + -8.181545258 1 + 2 24 24 576 + 1 14 12 15 21 + -1 16 12 17 21 + +0.1516137719 + -1.896022439 -1 + 2 24 24 576 + 1 8 15 11 20 + -2 8 17 11 18 + +0.1540396214 + -12.61394882 -1 + 2 24 24 576 + 1 0 0 2 17 + -1 3 0 5 17 + +0.1554956138 + -1.736154914 -1 + 2 24 24 576 + 1 14 3 20 5 + -2 14 4 20 4 + +0.1440566331 + -2.546402216 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.1385097504 + -6.821003437 -1 + 2 24 24 576 + 1 10 21 23 23 + -2 10 22 23 22 + +0.1646879911 + -2.310626268 1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.1746422648 + -4.434968472 1 + 3 24 24 576 + 1 7 12 14 19 + -2 11 12 14 15 + -2 7 16 10 19 + +0.1670539379 + -0.6834341288 -1 + 2 24 24 576 + 1 14 8 15 11 + -1 16 8 17 11 + +0.1473250687 + 10.76296329 1 + 2 24 24 576 + 1 8 5 16 12 + -2 11 5 13 12 + +0.1575634032 + 8.294517517 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 9 9 14 10 + +0.168481186 + -10.15856075 -1 + 2 24 24 576 + 1 5 8 19 17 + -2 10 8 14 17 + +0.1613370478 + -2.099713087 1 + 3 24 24 576 + 1 14 10 21 17 + -2 18 10 21 13 + -2 14 14 17 17 + +0.1677365303 + -12.39521599 -1 + 3 24 24 576 + 1 7 6 22 23 + -2 15 6 22 14 + -2 7 15 14 23 + +0.1473543644 + 7.650740147 1 + 3 24 24 576 + 1 14 5 23 16 + -2 19 5 23 10 + -2 14 11 18 16 + +0.2002376318 + 16.01841164 -1 + 3 24 24 576 + 1 12 3 21 8 + -2 17 3 21 5 + -2 12 6 16 8 + +0.1620833874 + 44.53215027 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1698943675 + 1.15246141 1 + 3 24 24 576 + 1 12 2 15 21 + -2 14 2 15 11 + -2 12 12 13 21 + +0.1368084699 + -1.182083845 1 + 2 24 24 576 + 1 19 9 23 12 + -1 19 13 23 16 + +0.153994143 + 0.1095761508 1 + 3 24 24 576 + 1 16 9 19 12 + -2 18 9 19 10 + -2 16 11 17 12 + +0.1375012398 + 8.229530334 1 + 2 24 24 576 + 1 3 15 20 16 + -1 3 17 20 18 + +0.1543332934 + 8.523643494 1 + 3 24 24 576 + 1 14 3 21 10 + -2 18 3 21 6 + -2 14 7 17 10 + +0.2162058353 + 12.12390709 -1 + 3 24 24 576 + 1 10 5 23 8 + -2 17 5 23 6 + -2 10 7 16 8 + +0.160494253 + 24.10521889 1 + 2 24 24 576 + 1 0 0 2 7 + -1 3 0 5 7 + +0.174851805 + -3.799696445 1 + 3 24 24 576 + 1 14 1 23 4 + -2 19 1 23 2 + -2 14 3 18 4 + +0.1903149486 + -4.821512699 -1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.1757699549 + -7.83045578 1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.1590277553 + 4.972332954 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1667512953 + 1.797153711 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.1411625892 + 1.885545015 -1 + 2 24 24 576 + 1 9 2 11 6 + -2 10 2 10 6 + +0.1587155759 + 1.634657383 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.1457536221 + 5.879295826 -1 + 2 24 24 576 + 1 12 0 17 11 + -2 12 4 17 7 + + +200 19.25465202 1 +0.3780387938 + 6.140323639 1 + 2 24 24 576 + 1 8 3 13 8 + -2 8 5 13 6 + +0.3345956802 + 10.44133949 1 + 3 24 24 576 + 1 9 4 18 13 + -2 14 4 18 8 + -2 9 9 13 13 + +0.2899204493 + 3.482339621 1 + 3 24 24 576 + 1 4 17 11 20 + -2 8 17 11 18 + -2 4 19 7 20 + +0.2681791782 + 17.62059402 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2432492077 + 4.273591518 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2378499657 + 1.206369519 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.2428264022 + 4.526888847 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.2268412262 + -12.30939388 -1 + 2 24 24 576 + 1 0 1 8 9 + -2 3 1 5 9 + +0.221741274 + -2.339167833 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2687193453 + -79.55659485 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2337748259 + -3.872608185 -1 + 2 24 24 576 + 1 5 5 12 9 + -1 5 10 12 14 + +0.2219412178 + 6.487700939 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.2465883493 + 0.1650728732 -1 + 3 24 24 576 + 1 1 0 10 13 + -2 6 0 10 6 + -2 1 7 5 13 + +0.2108481973 + 1.55017972 1 + 3 24 24 576 + 1 1 6 6 9 + -2 4 6 6 7 + -2 1 8 3 9 + +0.1927535236 + -0.9629538059 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.1974003464 + 6.330560684 1 + 2 24 24 576 + 1 10 11 14 16 + -2 10 13 14 14 + +0.1938786954 + 3.723859072 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.2100975066 + 16.26653481 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2146519721 + 4.029272556 -1 + 3 24 24 576 + 1 5 10 18 13 + -2 12 10 18 11 + -2 5 12 11 13 + +0.1890547276 + -18.04663849 -1 + 2 24 24 576 + 1 0 15 11 23 + -2 4 15 7 23 + +0.1895377338 + 0.1625071913 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1820769161 + 7.117615223 1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.2203058451 + 1.075412869 -1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.2416731268 + 3.809509039 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1980134547 + 12.98543167 1 + 3 24 24 576 + 1 11 0 22 11 + -2 17 0 22 5 + -2 11 6 16 11 + +0.1904726475 + 6.528072357 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.1711931229 + -4.647768974 -1 + 3 24 24 576 + 1 9 18 20 21 + -2 15 18 20 19 + -2 9 20 14 21 + +0.177627027 + -14.74571228 1 + 2 24 24 576 + 1 9 14 14 18 + -1 9 19 14 23 + +0.1985729933 + 8.925606728 1 + 2 24 24 576 + 1 6 14 10 19 + -2 6 16 10 17 + +0.1773742586 + 0.7239159942 1 + 2 24 24 576 + 1 14 13 18 14 + -1 14 15 18 16 + +0.1824335307 + -3.14480257 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1861421764 + 37.31682968 -1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.2325413227 + -28.49107552 -1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.1987344772 + 8.737730026 -1 + 3 24 24 576 + 1 18 10 21 17 + -2 20 10 21 13 + -2 18 14 19 17 + +0.2118237317 + -11.0066967 -1 + 3 24 24 576 + 1 0 16 13 23 + -2 7 16 13 19 + -2 0 20 6 23 + +0.178718254 + 2.043284416 -1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.21337533 + 12.70320702 1 + 3 24 24 576 + 1 18 5 23 20 + -2 21 5 23 12 + -2 18 13 20 20 + +0.1945376396 + 1.021642208 -1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.2237690538 + 0.6385877132 1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.1721130162 + -56.48161316 -1 + 2 24 24 576 + 1 2 14 10 22 + -1 11 14 19 22 + +0.2103968561 + -5.350179195 -1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.3192894459 + -3.015613794 -1 + 3 24 24 576 + 1 18 4 21 11 + -2 20 4 21 7 + -2 18 8 19 11 + +0.3690680563 + 0.2510091364 -1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.4404852688 + -9.501169205 1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.2311189175 + 1.236724854 -1 + 3 24 24 576 + 1 18 3 21 6 + -2 20 3 21 4 + -2 18 5 19 6 + +0.2469414175 + 4.262691498 1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.2157071084 + -7.71246624 1 + 3 24 24 576 + 1 3 0 20 5 + -2 12 0 20 2 + -2 3 3 11 5 + +0.1756820679 + -7.919238567 -1 + 2 24 24 576 + 1 14 11 19 22 + -2 16 11 17 22 + +0.1996434629 + 0.8334450126 -1 + 3 24 24 576 + 1 18 2 21 5 + -2 20 2 21 3 + -2 18 4 19 5 + +0.195304051 + 0.8753014803 1 + 2 24 24 576 + 1 15 3 20 4 + -1 15 5 20 6 + +0.1825430542 + 10.40047073 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.212053746 + 2.070169926 -1 + 3 24 24 576 + 1 18 0 21 7 + -2 20 0 21 3 + -2 18 4 19 7 + +0.206164822 + 5.269523144 -1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.2462245971 + 10.26660061 1 + 2 24 24 576 + 1 21 4 23 21 + -2 22 4 22 21 + +0.2020215988 + 4.543619633 -1 + 3 24 24 576 + 1 17 13 20 20 + -2 19 13 20 16 + -2 17 17 18 20 + +0.2178496271 + 2.681202173 1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.2025639713 + 2.930500269 -1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.1870913208 + 8.012929916 1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.2031816393 + 2.394764423 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.1841602623 + 6.797318459 -1 + 2 24 24 576 + 1 8 13 13 17 + -1 8 18 13 22 + +0.1930287182 + -2.950533152 -1 + 2 24 24 576 + 1 17 15 18 18 + -1 19 15 20 18 + +0.1950523555 + -0.3495092094 -1 + 3 24 24 576 + 1 17 9 22 12 + -2 20 9 22 10 + -2 17 11 19 12 + +0.1957602948 + 8.112925529 -1 + 3 24 24 576 + 1 7 7 18 12 + -2 13 7 18 9 + -2 7 10 12 12 + +0.1761224717 + -2.236347198 -1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.2038787007 + -2.769228697 -1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.3059340715 + 6.618714333 -1 + 3 24 24 576 + 1 17 4 20 15 + -2 19 4 20 9 + -2 17 10 18 15 + +0.192744419 + 20.60528374 1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.2039152384 + 18.25513458 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.219782576 + 31.73119926 1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.2139890939 + 6.828872204 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.1860211343 + -4.365542412 -1 + 2 24 24 576 + 1 20 1 23 5 + -1 20 6 23 10 + +0.1822319627 + -1.693951249 -1 + 3 24 24 576 + 1 12 3 19 6 + -2 16 3 19 4 + -2 12 5 15 6 + +0.1846809834 + -1.532463431 -1 + 3 24 24 576 + 1 18 1 23 4 + -2 21 1 23 2 + -2 18 3 20 4 + +0.2414182127 + 0.8322934508 -1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.2797046304 + 0.8413096666 1 + 2 24 24 576 + 1 11 0 19 4 + -1 11 5 19 9 + +0.2167185843 + -3.884036064 -1 + 3 24 24 576 + 1 16 19 19 22 + -2 18 19 19 20 + -2 16 21 17 22 + +0.3711486161 + 14.53210735 -1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.1921844482 + -5.862695217 -1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.165024519 + 0.2150825858 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.165408358 + 1.745953798 1 + 2 24 24 576 + 1 10 15 13 16 + -1 10 17 13 18 + +0.1763570756 + -4.528557301 1 + 3 24 24 576 + 1 8 5 21 16 + -2 15 5 21 10 + -2 8 11 14 16 + +0.2053237408 + -8.15348053 -1 + 2 24 24 576 + 1 18 13 20 16 + -1 21 13 23 16 + +0.1964660436 + 2.070199966 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1850635558 + 0 -1 + 3 24 24 576 + 1 16 9 19 12 + -2 18 9 19 10 + -2 16 11 17 12 + +0.1651049405 + -6.065121174 -1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.1899130046 + 7.124610424 -1 + 3 24 24 576 + 1 18 5 21 16 + -2 20 5 21 10 + -2 18 11 19 16 + +0.2335415035 + -0.6425551176 1 + 3 24 24 576 + 1 17 3 20 10 + -2 19 3 20 6 + -2 17 7 18 10 + +0.2677929997 + 33.13238907 1 + 3 24 24 576 + 1 16 8 21 19 + -2 19 8 21 13 + -2 16 14 18 19 + +0.246509105 + 5.812842846 -1 + 3 24 24 576 + 1 16 10 19 17 + -2 18 10 19 13 + -2 16 14 17 17 + +0.2174489051 + -1.820962667 1 + 3 24 24 576 + 1 16 8 19 13 + -2 18 8 19 10 + -2 16 11 17 13 + +0.2726615071 + 2.356035471 1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.252066493 + 34.70672607 -1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.3272740245 + 11.70305061 1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.2292393744 + 0.7932966352 -1 + 3 24 24 576 + 1 16 6 19 21 + -2 18 6 19 13 + -2 16 14 17 21 + +0.2681173682 + 1.357731581 1 + 3 24 24 576 + 1 15 11 20 18 + -2 18 11 20 14 + -2 15 15 17 18 + +0.1738974005 + -3.37272191 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.2044283748 + 9.033599854 -1 + 3 24 24 576 + 1 16 7 21 20 + -2 19 7 21 13 + -2 16 14 18 20 + +0.2035654336 + 18.40097618 1 + 3 24 24 576 + 1 15 5 22 22 + -2 19 5 22 13 + -2 15 14 18 22 + +0.2074880302 + -0.5108286142 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.180094108 + 4.005913258 -1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.2347869575 + 13.37313557 1 + 3 24 24 576 + 1 15 3 20 22 + -2 18 3 20 12 + -2 15 13 17 22 + +0.2173642367 + -4.409193039 -1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.2094285935 + 3.683289289 -1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.3384480774 + 4.774012566 1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.2172615081 + -2.554105759 -1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.2786359489 + -11.54773998 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.4404603541 + -0.8322934508 -1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.6592643261 + -6.169219971 1 + 3 24 24 576 + 1 15 4 20 9 + -2 18 4 20 6 + -2 15 7 17 9 + +0.26496014 + -1.696957231 1 + 3 24 24 576 + 1 13 2 22 13 + -2 18 2 22 7 + -2 13 8 17 13 + +0.2113497257 + -1.783888102 1 + 3 24 24 576 + 1 15 7 22 12 + -2 19 7 22 9 + -2 15 10 18 12 + +0.1766149849 + -4.027322769 1 + 2 24 24 576 + 1 13 9 15 12 + -1 16 9 18 12 + +0.2109595537 + 7.554017544 1 + 2 24 24 576 + 1 18 5 23 8 + -2 20 5 21 8 + +0.2290372998 + 4.03279829 -1 + 3 24 24 576 + 1 16 0 23 13 + -2 20 0 23 6 + -2 16 7 19 13 + +0.1998441219 + -0.1075412929 -1 + 3 24 24 576 + 1 15 15 20 18 + -2 18 15 20 16 + -2 15 17 17 18 + +0.1962596029 + 0.7173896432 1 + 2 24 24 576 + 1 17 0 18 3 + -1 19 0 20 3 + +0.1946045458 + 4.610215664 1 + 2 24 24 576 + 1 13 9 21 18 + -2 16 9 18 18 + +0.1881868243 + -0.7336018682 -1 + 3 24 24 576 + 1 0 0 19 5 + -2 10 0 19 2 + -2 0 3 9 5 + +0.1800986081 + -4.693257809 -1 + 2 24 24 576 + 1 17 16 22 20 + -2 19 16 20 20 + +0.2173494995 + 8.750033379 -1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.1754577756 + 10.44141865 1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.2264189571 + 1.156068921 -1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.2619016767 + 0.2906046212 1 + 3 24 24 576 + 1 14 13 21 20 + -2 18 13 21 16 + -2 14 17 17 20 + +0.2051551193 + 4.355422497 -1 + 3 24 24 576 + 1 15 9 22 14 + -2 19 9 22 11 + -2 15 12 18 14 + +0.1836955249 + 1.49250555 1 + 2 24 24 576 + 1 15 9 18 10 + -1 15 11 18 12 + +0.2022577673 + -4.220995903 -1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.2477688491 + -1.317339301 -1 + 3 24 24 576 + 1 15 20 18 23 + -2 17 20 18 21 + -2 15 22 16 23 + +0.3633918464 + -9.63513279 -1 + 3 24 24 576 + 1 15 7 18 20 + -2 17 7 18 13 + -2 15 14 16 20 + +0.5920292139 + 2.876050472 -1 + 3 24 24 576 + 1 10 19 13 22 + -2 12 19 13 20 + -2 10 21 11 22 + +0.204122752 + -3.249878407 1 + 3 24 24 576 + 1 11 8 22 11 + -2 17 8 22 9 + -2 11 10 16 11 + +0.2017110288 + 26.32694435 1 + 2 24 24 576 + 1 2 7 10 18 + -2 5 7 7 18 + +0.2133534253 + -5.698172092 1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1906276941 + 41.87923813 1 + 2 24 24 576 + 1 5 3 16 14 + -2 5 7 16 10 + +0.1840426773 + 2.180142403 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.1802381426 + 14.10050488 -1 + 2 24 24 576 + 1 4 3 14 11 + -2 4 6 14 8 + +0.1865452826 + 3.049951792 1 + 2 24 24 576 + 1 4 18 10 20 + -1 4 21 10 23 + +0.1699714512 + 0.4965263605 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.1703648269 + 5.153112411 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.2067035139 + -1.395190954 -1 + 2 24 24 576 + 1 7 7 14 8 + -1 7 9 14 10 + +0.1712194383 + -14.766469 -1 + 2 24 24 576 + 1 9 4 17 19 + -2 12 4 14 19 + +0.1778374165 + 11.40807343 -1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.1799246967 + 19.36014748 1 + 2 24 24 576 + 1 7 4 12 16 + -2 9 4 10 16 + +0.1637218893 + -3.319711924 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1566429138 + 1.215648651 1 + 2 24 24 576 + 1 16 20 18 23 + -2 17 20 17 23 + +0.1677399874 + -10.696702 1 + 2 24 24 576 + 1 6 15 18 17 + -1 6 18 18 20 + +0.1635411233 + -0.3048092425 -1 + 2 24 24 576 + 1 15 3 19 11 + -2 15 6 19 8 + +0.169429943 + 5.477745533 -1 + 2 24 24 576 + 1 7 1 8 17 + -1 9 1 10 17 + +0.1778787076 + 6.151975155 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.1952851415 + 4.132422924 -1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1697499156 + 5.570914745 1 + 2 24 24 576 + 1 13 4 17 5 + -1 13 6 17 7 + +0.1508311182 + 2.208559513 1 + 2 24 24 576 + 1 19 14 23 17 + -1 19 18 23 21 + +0.1489868611 + -0.3050825596 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1578236967 + 0.5416941643 1 + 2 24 24 576 + 1 5 9 7 12 + -1 8 9 10 12 + +0.1514054388 + -9.396080971 -1 + 2 24 24 576 + 1 1 0 3 18 + -2 2 0 2 18 + +0.1561797112 + -4.011888981 1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.1883577108 + 5.447520733 1 + 2 24 24 576 + 1 2 11 3 18 + -1 4 11 5 18 + +0.1717842072 + -5.258191109 1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1734233052 + 23.19322968 1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.1895264238 + -7.470545292 1 + 3 24 24 576 + 1 19 9 22 14 + -2 21 9 22 11 + -2 19 12 20 14 + +0.1949739158 + -32.38246918 -1 + 2 24 24 576 + 1 9 0 13 23 + -2 9 8 13 15 + +0.1688930988 + -1.141333342 1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1574708074 + 1.594256401 1 + 3 24 24 576 + 1 6 17 11 20 + -2 9 17 11 18 + -2 6 19 8 20 + +0.1771838218 + -1.303633094 -1 + 3 24 24 576 + 1 7 15 10 20 + -2 9 15 10 17 + -2 7 18 8 20 + +0.1793602407 + 5.11870718 1 + 3 24 24 576 + 1 14 10 17 21 + -2 16 10 17 15 + -2 14 16 15 21 + +0.2803279757 + 41.50302887 1 + 3 24 24 576 + 1 14 8 23 21 + -2 19 8 23 14 + -2 14 15 18 21 + +0.4882006645 + -7.425082207 1 + 2 24 24 576 + 1 14 15 15 18 + -1 16 15 17 18 + +0.1594743729 + 0.5665240884 1 + 2 24 24 576 + 1 14 20 15 23 + -1 16 20 17 23 + +0.1523412466 + -2.669402361 -1 + 2 24 24 576 + 1 15 8 16 17 + -1 17 8 18 17 + +0.157749787 + -2.500736952 -1 + 2 24 24 576 + 1 12 1 20 13 + -2 15 1 17 13 + +0.1679236293 + -1.660121202 1 + 3 24 24 576 + 1 14 8 21 15 + -2 18 8 21 11 + -2 14 12 17 15 + +0.196040377 + 0.8641343713 1 + 2 24 24 576 + 1 19 9 23 12 + -1 19 13 23 16 + +0.1654428244 + -0.9949056506 -1 + 3 24 24 576 + 1 5 2 8 9 + -2 7 2 8 5 + -2 5 6 6 9 + +0.1606123149 + -2.343238354 -1 + 2 24 24 576 + 1 4 8 17 11 + -1 4 12 17 15 + +0.1551321298 + 4.107721806 -1 + 2 24 24 576 + 1 3 17 8 18 + -1 3 19 8 20 + +0.1735930443 + -4.51880312 -1 + 2 24 24 576 + 1 1 18 3 21 + -2 2 18 2 21 + +0.1580689102 + 3.821619034 -1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.1751290709 + 3.484714031 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1377929002 + -8.599331856 -1 + 2 24 24 576 + 1 3 5 10 6 + -1 3 7 10 8 + +0.1572124213 + -13.10804081 1 + 3 24 24 576 + 1 14 6 23 13 + -2 19 6 23 9 + -2 14 10 18 13 + +0.13949503 + 3.700612545 1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.140645504 + 1.867636323 1 + 3 24 24 576 + 1 14 4 17 15 + -2 16 4 17 9 + -2 14 10 15 15 + +0.1514650136 + 0.7427920699 -1 + 3 24 24 576 + 1 12 9 21 12 + -2 17 9 21 10 + -2 12 11 16 12 + +0.1453455389 + 7.683569908 1 + 2 24 24 576 + 1 13 10 17 15 + -2 13 12 17 13 + +0.1705929935 + 6.371312618 -1 + 3 24 24 576 + 1 8 6 23 9 + -2 16 6 23 7 + -2 8 8 15 9 + +0.1552177519 + -2.220293045 -1 + 2 24 24 576 + 1 8 14 11 16 + -2 8 15 11 15 + +0.1574027836 + 7.055515289 1 + 3 24 24 576 + 1 14 3 21 10 + -2 18 3 21 6 + -2 14 7 17 10 + +0.1989596784 + -3.354828358 1 + 3 24 24 576 + 1 14 2 19 5 + -2 17 2 19 3 + -2 14 4 16 5 + +0.1673361659 + 8.374480247 1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.1699941307 + -0.06917171925 1 + 3 24 24 576 + 1 14 2 17 5 + -2 16 2 17 3 + -2 14 4 15 5 + +0.1798242331 + 15.08636093 -1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.1739275455 + -0.08409061283 -1 + 3 24 24 576 + 1 20 9 23 12 + -2 22 9 23 10 + -2 20 11 21 12 + +0.1653253138 + 2.03890419 1 + 3 24 24 576 + 1 4 12 13 15 + -2 9 12 13 13 + -2 4 14 8 15 + +0.1559727192 + 2.636980057 1 + 2 24 24 576 + 1 5 14 9 18 + -1 10 14 14 18 + +0.1517623663 + 3.207822323 -1 + 2 24 24 576 + 1 5 3 9 11 + -2 5 6 9 8 + +0.1686988324 + 19.34368134 -1 + 2 24 24 576 + 1 5 8 8 21 + -1 9 8 12 21 + +0.1588065475 + -31.11597633 1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.2645218372 + -42.00662994 -1 + 3 24 24 576 + 1 12 0 23 21 + -2 18 0 23 10 + -2 12 11 17 21 + +0.143415451 + 2.031117439 -1 + 2 24 24 576 + 1 17 0 23 1 + -1 17 2 23 3 + +0.1422718912 + 5.986121178 1 + 3 24 24 576 + 1 13 19 20 22 + -2 17 19 20 20 + -2 13 21 16 22 + +0.1752424836 + 5.134229183 -1 + 2 24 24 576 + 1 15 19 18 20 + -1 15 21 18 22 + +0.1522311568 + 5.946608543 1 + 3 24 24 576 + 1 13 16 16 19 + -2 15 16 16 17 + -2 13 18 14 19 + + +200 18.53881645 1 +0.3569420278 + -11.22851086 -1 + 3 24 24 576 + 1 5 3 12 14 + -2 9 3 12 8 + -2 5 9 8 14 + +0.3601253033 + 18.80404663 1 + 2 24 24 576 + 1 5 4 19 9 + -2 5 6 19 7 + +0.2893303633 + -0.7398337126 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2561841905 + -7.616075039 -1 + 2 24 24 576 + 1 0 0 2 7 + -1 3 0 5 7 + +0.2590535581 + 4.266309738 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.250044167 + 1.606947541 1 + 3 24 24 576 + 1 6 17 11 20 + -2 9 17 11 18 + -2 6 19 8 20 + +0.2301236242 + 1.205365181 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.2531309128 + 20.57875824 1 + 2 24 24 576 + 1 19 0 20 19 + -1 21 0 22 19 + +0.2149242461 + -2.202939272 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.2050699443 + -1.376818776 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.2076941729 + 0.314016819 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.2119366676 + 66.20309448 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2588718534 + -3.901436329 -1 + 2 24 24 576 + 1 16 3 20 8 + -1 16 9 20 14 + +0.2042393535 + -11.18054867 -1 + 3 24 24 576 + 1 20 0 23 21 + -2 22 0 23 10 + -2 20 11 21 21 + +0.257817477 + 1.781731963 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.2101095617 + 35.17191315 1 + 2 24 24 576 + 1 11 0 16 3 + -1 17 0 22 3 + +0.2132328749 + 6.713067055 -1 + 3 24 24 576 + 1 3 10 20 15 + -2 12 10 20 12 + -2 3 13 11 15 + +0.1923431456 + 2.865015507 -1 + 3 24 24 576 + 1 19 15 22 20 + -2 21 15 22 17 + -2 19 18 20 20 + +0.2779712081 + 4.029867172 1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.1851328313 + -0.8003214598 -1 + 3 24 24 576 + 1 8 11 11 14 + -2 10 11 11 12 + -2 8 13 9 14 + +0.1749321073 + 0.9043657184 1 + 2 24 24 576 + 1 4 20 13 21 + -1 4 22 13 23 + +0.1775139719 + 19.53725243 1 + 2 24 24 576 + 1 0 6 2 18 + -1 3 6 5 18 + +0.2118513584 + 3.038656712 -1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.2036094218 + 3.063714027 -1 + 3 24 24 576 + 1 19 7 22 20 + -2 21 7 22 13 + -2 19 14 20 20 + +0.2218181342 + 7.249630928 1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.1966874003 + -6.117297649 -1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.187792927 + -2.68489933 1 + 3 24 24 576 + 1 7 10 16 15 + -2 12 10 16 12 + -2 7 13 11 15 + +0.1838307679 + 16.82866478 1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.1905848682 + -44.5662384 -1 + 2 24 24 576 + 1 1 18 21 23 + -2 8 18 14 23 + +0.1771629602 + -2.336299896 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2073325515 + -0.3641991913 1 + 3 24 24 576 + 1 18 17 23 20 + -2 21 17 23 18 + -2 18 19 20 20 + +0.2630040944 + -8.863449097 -1 + 2 24 24 576 + 1 18 13 20 16 + -1 21 13 23 16 + +0.2019876838 + 1.077087164 -1 + 3 24 24 576 + 1 18 12 21 15 + -2 20 12 21 13 + -2 18 14 19 15 + +0.1844022721 + -2.035794497 -1 + 2 24 24 576 + 1 12 0 23 3 + -2 16 0 19 3 + +0.1788912416 + -0.3689391017 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1723245233 + 14.83535099 -1 + 3 24 24 576 + 1 18 9 21 20 + -2 20 9 21 14 + -2 18 15 19 20 + +0.267605722 + 3.314229488 1 + 3 24 24 576 + 1 16 16 19 21 + -2 18 16 19 18 + -2 16 19 17 21 + +0.1895790845 + 0.1838126183 1 + 2 24 24 576 + 1 13 11 16 13 + -1 13 14 16 16 + +0.1974751502 + -185.2483826 -1 + 2 24 24 576 + 1 0 4 10 21 + -1 11 4 21 21 + +0.216645956 + 1.210516334 -1 + 3 24 24 576 + 1 18 7 21 14 + -2 20 7 21 10 + -2 18 11 19 14 + +0.2066221684 + 1.716367126 1 + 3 24 24 576 + 1 17 8 22 17 + -2 20 8 22 12 + -2 17 13 19 17 + +0.1659657806 + -11.33989811 -1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.2118034661 + -7.072194576 -1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.3407252431 + 6.939258099 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.1661723852 + 1.773876905 -1 + 3 24 24 576 + 1 18 3 21 6 + -2 20 3 21 4 + -2 18 5 19 6 + +0.1944454759 + 7.838433743 1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.1638894081 + 0.8725554347 -1 + 3 24 24 576 + 1 18 2 21 5 + -2 20 2 21 3 + -2 18 4 19 5 + +0.1727404296 + 47.78720474 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2164895535 + 1.955449581 -1 + 3 24 24 576 + 1 18 1 21 4 + -2 20 1 21 2 + -2 18 3 19 4 + +0.1883870661 + 34.66100693 1 + 2 24 24 576 + 1 12 1 20 9 + -2 12 4 20 6 + +0.2231986672 + 8.442575455 -1 + 3 24 24 576 + 1 18 0 21 7 + -2 20 0 21 3 + -2 18 4 19 7 + +0.1984052956 + 15.75307274 1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.1997243166 + 9.839325905 -1 + 3 24 24 576 + 1 17 16 20 19 + -2 19 16 20 17 + -2 17 18 18 19 + +0.2251878977 + 7.292717934 1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.1965622455 + 20.20631218 -1 + 3 24 24 576 + 1 17 13 20 20 + -2 19 13 20 16 + -2 17 17 18 20 + +0.2235663682 + 156.4273987 1 + 2 24 24 576 + 1 2 8 11 21 + -1 12 8 21 21 + +0.2013127208 + 6.48712635 -1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.1906363517 + -3.993712664 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.181122452 + -3.576742172 -1 + 3 24 24 576 + 1 17 9 22 12 + -2 20 9 22 10 + -2 17 11 19 12 + +0.25862813 + 0.06207776442 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.1843462288 + -2.824813366 -1 + 3 24 24 576 + 1 17 7 20 18 + -2 19 7 20 12 + -2 17 13 18 18 + +0.2261376381 + -14.8888073 1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.1796162874 + -7.052405357 -1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.194719255 + -9.023144722 -1 + 3 24 24 576 + 1 17 6 22 13 + -2 20 6 22 9 + -2 17 10 19 13 + +0.2509188354 + 15.76775169 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.2857264876 + 18.68494225 1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.2437699139 + -6.580243111 -1 + 3 24 24 576 + 1 17 4 20 15 + -2 19 4 20 9 + -2 17 10 18 15 + +0.3601757884 + -14.05232525 1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.1875822246 + -3.800288677 -1 + 3 24 24 576 + 1 17 3 20 10 + -2 19 3 20 6 + -2 17 7 18 10 + +0.2619801462 + -4.748949051 -1 + 3 24 24 576 + 1 17 2 20 9 + -2 19 2 20 5 + -2 17 6 18 9 + +0.4377417862 + -6.297093391 -1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.7572467327 + -7.172275066 1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.22277309 + 0.2483110577 -1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.2996360064 + 2.433757544 -1 + 3 24 24 576 + 1 18 1 23 4 + -2 21 1 23 2 + -2 18 3 20 4 + +0.1979532242 + -3.393840551 -1 + 3 24 24 576 + 1 16 19 19 22 + -2 18 19 19 20 + -2 16 21 17 22 + +0.31400159 + -4.102619648 -1 + 3 24 24 576 + 1 16 17 21 20 + -2 19 17 21 18 + -2 16 19 18 20 + +0.49460572 + -4.523404598 -1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.7641447186 + 32.94340134 -1 + 3 24 24 576 + 1 6 5 21 12 + -2 14 5 21 8 + -2 6 9 13 12 + +0.2101445049 + 3.506597757 1 + 3 24 24 576 + 1 16 0 23 13 + -2 20 0 23 6 + -2 16 7 19 13 + +0.2182290107 + -1.422567964 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.279918313 + -8.080525398 1 + 2 24 24 576 + 1 10 12 15 16 + -1 10 17 15 21 + +0.1807209104 + 25.54525566 -1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2712458074 + 6.505122185 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.220511362 + 5.344790936 -1 + 3 24 24 576 + 1 16 11 19 22 + -2 18 11 19 16 + -2 16 17 17 22 + +0.2796115279 + 4.759751797 1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.2200263143 + -6.114943504 1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.2081204206 + 31.34794998 1 + 2 24 24 576 + 1 2 1 10 9 + -2 2 4 10 6 + +0.2090420276 + -6.333828449 1 + 2 24 24 576 + 1 15 9 23 12 + -2 18 9 20 12 + +0.174293384 + 12.10324478 1 + 2 24 24 576 + 1 8 14 14 19 + -2 8 16 14 17 + +0.2002702504 + 14.93269825 -1 + 3 24 24 576 + 1 3 0 18 7 + -2 11 0 18 3 + -2 3 4 10 7 + +0.1851149052 + -5.296705723 -1 + 2 24 24 576 + 1 7 15 14 16 + -1 7 17 14 18 + +0.1891958714 + -0.2438687831 -1 + 3 24 24 576 + 1 16 10 19 17 + -2 18 10 19 13 + -2 16 14 17 17 + +0.2111230344 + 3.189753532 -1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.1647379547 + 15.25045776 1 + 2 24 24 576 + 1 11 14 23 22 + -2 11 17 23 19 + +0.1902246922 + -2.133851767 -1 + 3 24 24 576 + 1 16 6 19 21 + -2 18 6 19 13 + -2 16 14 17 21 + +0.2349024415 + 0.1216502935 1 + 3 24 24 576 + 1 15 11 20 18 + -2 18 11 20 14 + -2 15 15 17 18 + +0.1854754686 + 1.381923079 -1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.1850867867 + 99.50466919 1 + 2 24 24 576 + 1 4 0 13 10 + -1 14 0 23 10 + +0.2028062493 + -4.816408634 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.2349821925 + -2.854766369 1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.1760022044 + 3.468829155 1 + 2 24 24 576 + 1 7 1 13 6 + -1 7 7 13 12 + +0.1589672416 + -11.88860321 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.2316855788 + -11.29815292 -1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.3361746073 + 10.27161789 -1 + 2 24 24 576 + 1 8 18 16 21 + -2 11 18 13 21 + +0.1655620337 + -10.9738884 -1 + 2 24 24 576 + 1 1 19 4 22 + -1 5 19 8 22 + +0.1936280727 + -14.78530121 1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.1776223183 + 0.1994032115 1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.1884465814 + 13.17319393 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2034001797 + -0.4035054743 -1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.2098784596 + 0.03103888221 -1 + 3 24 24 576 + 1 16 0 19 17 + -2 18 0 19 8 + -2 16 9 17 17 + +0.2655208111 + -1.696957231 1 + 3 24 24 576 + 1 13 2 22 13 + -2 18 2 22 7 + -2 13 8 17 13 + +0.1798215955 + 8.464481354 -1 + 2 24 24 576 + 1 7 4 12 9 + -2 7 6 12 7 + +0.1624273956 + 0.8210608959 -1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1763128489 + -1.586414456 -1 + 2 24 24 576 + 1 16 11 17 19 + -1 18 11 19 19 + +0.1677817851 + 14.60147953 1 + 2 24 24 576 + 1 6 4 14 17 + -2 9 4 11 17 + +0.1763897836 + -3.874284267 -1 + 2 24 24 576 + 1 6 6 15 7 + -1 6 8 15 9 + +0.1650740802 + 4.64462328 1 + 2 24 24 576 + 1 16 0 17 6 + -1 18 0 19 6 + +0.1628150046 + -5.098816395 1 + 3 24 24 576 + 1 2 10 21 13 + -2 12 10 21 11 + -2 2 12 11 13 + +0.1938792765 + 5.420615673 1 + 3 24 24 576 + 1 6 1 11 12 + -2 9 1 11 6 + -2 6 7 8 12 + +0.1787754893 + -1.093957186 -1 + 2 24 24 576 + 1 7 2 8 8 + -1 9 2 10 8 + +0.1551956832 + 0.579454422 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.1641052216 + 0.5871300101 1 + 3 24 24 576 + 1 20 19 23 22 + -2 22 19 23 20 + -2 20 21 21 22 + +0.1658970267 + -1.954131722 1 + 3 24 24 576 + 1 2 8 13 11 + -2 8 8 13 9 + -2 2 10 7 11 + +0.1482119262 + 2.6943326 1 + 2 24 24 576 + 1 7 14 12 15 + -1 7 16 12 17 + +0.1429337263 + -0.3501040339 -1 + 2 24 24 576 + 1 0 6 5 8 + -1 0 9 5 11 + +0.1900744587 + 27.30380058 1 + 2 24 24 576 + 1 2 7 10 18 + -2 5 7 7 18 + +0.1887940913 + 6.324950695 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1852319688 + 6.680945396 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1698329896 + -3.40866971 1 + 3 24 24 576 + 1 11 13 14 22 + -2 13 13 14 17 + -2 11 18 12 22 + +0.1694409549 + -1.861907363 -1 + 2 24 24 576 + 1 3 7 11 11 + -2 6 7 8 11 + +0.1673033983 + 3.074760675 -1 + 3 24 24 576 + 1 11 14 14 23 + -2 13 14 14 18 + -2 11 19 12 23 + +0.1846755445 + 5.743085861 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.188015312 + -5.633612156 1 + 2 24 24 576 + 1 4 7 5 11 + -1 6 7 7 11 + +0.1813885421 + 4.496249199 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1703142822 + -8.231581688 1 + 2 24 24 576 + 1 14 7 16 12 + -1 17 7 19 12 + +0.1705696583 + 17.66439247 1 + 2 24 24 576 + 1 12 7 20 11 + -2 15 7 17 11 + +0.1753905118 + -23.61366653 1 + 2 24 24 576 + 1 7 0 9 12 + -1 10 0 12 12 + +0.1543229967 + -180.5097198 -1 + 2 24 24 576 + 1 1 0 9 20 + -1 10 0 18 20 + +0.1780192852 + 6.296764374 -1 + 2 24 24 576 + 1 2 16 10 17 + -1 2 18 10 19 + +0.1614097506 + -1.235007405 -1 + 3 24 24 576 + 1 7 16 10 19 + -2 9 16 10 17 + -2 7 18 8 19 + +0.1529698968 + 7.298100948 -1 + 2 24 24 576 + 1 14 1 15 20 + -1 16 1 17 20 + +0.1554258466 + 46.28884888 1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.1741697937 + 3.078906775 1 + 3 24 24 576 + 1 15 15 20 18 + -2 18 15 20 16 + -2 15 17 17 18 + +0.2736196518 + 20.88238525 -1 + 2 24 24 576 + 1 5 5 7 18 + -1 8 5 10 18 + +0.1710695624 + -1.743046403 -1 + 2 24 24 576 + 1 11 3 16 15 + -2 13 3 14 15 + +0.1783236563 + -1.799640536 1 + 2 24 24 576 + 1 16 15 20 16 + -1 16 17 20 18 + +0.1637476534 + -2.251688242 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1674278378 + -1.189293861 1 + 2 24 24 576 + 1 4 15 8 16 + -1 4 17 8 18 + +0.1558278203 + -27.45402908 -1 + 3 24 24 576 + 1 1 2 6 21 + -2 4 2 6 11 + -2 1 12 3 21 + +0.1722867787 + 4.531503201 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1566054076 + -4.066773891 -1 + 2 24 24 576 + 1 18 19 20 22 + -2 19 19 19 22 + +0.1718457937 + 3.340037107 -1 + 2 24 24 576 + 1 18 4 22 5 + -1 18 6 22 7 + +0.1531605124 + 14.54061127 1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.1651144326 + 13.98092842 -1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.1568890959 + -4.580782413 -1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.1512477547 + -3.187934875 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1528335661 + 0 -1 + 3 24 24 576 + 1 15 20 18 23 + -2 17 20 18 21 + -2 15 22 16 23 + +0.1754326373 + -8.754824638 1 + 2 24 24 576 + 1 14 10 15 23 + -1 16 10 17 23 + +0.1665501148 + -5.295848846 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1466978043 + 0 -1 + 2 24 24 576 + 1 14 0 18 1 + -1 14 2 18 3 + +0.1346930265 + 0.4621163011 -1 + 3 24 24 576 + 1 10 18 15 21 + -2 13 18 15 19 + -2 10 20 12 21 + +0.1476670802 + 0.5770653486 1 + 3 24 24 576 + 1 13 16 16 19 + -2 15 16 16 17 + -2 13 18 14 19 + +0.1357768178 + -3.227664471 1 + 2 24 24 576 + 1 10 0 15 8 + -1 10 9 15 17 + +0.1424322873 + -8.210618973 -1 + 2 24 24 576 + 1 14 7 19 10 + -1 14 11 19 14 + +0.1576279402 + 5.949417114 1 + 2 24 24 576 + 1 2 10 23 11 + -1 2 12 23 13 + +0.151960507 + 7.713084221 -1 + 2 24 24 576 + 1 6 4 11 10 + -1 6 11 11 17 + +0.1653696001 + 4.009178638 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1691322923 + -9.929309845 1 + 2 24 24 576 + 1 3 17 18 18 + -1 3 19 18 20 + +0.1463158429 + 19.5212059 1 + 2 24 24 576 + 1 5 19 22 22 + -2 11 19 16 22 + +0.1778858304 + -2.174636602 1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1664352268 + -6.917888165 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.1415642798 + 2.208582401 -1 + 2 24 24 576 + 1 3 14 7 15 + -1 3 16 7 17 + +0.1399140209 + -9.396080971 -1 + 2 24 24 576 + 1 1 0 3 18 + -2 2 0 2 18 + +0.1414888203 + 1.517698526 1 + 2 24 24 576 + 1 8 13 11 15 + -1 8 16 11 18 + +0.1466497034 + 1.089731932 1 + 2 24 24 576 + 1 5 7 6 18 + -1 7 7 8 18 + +0.1279691905 + -5.308809757 1 + 2 24 24 576 + 1 9 5 12 9 + -1 9 10 12 14 + +0.1523788571 + 8.85669136 1 + 2 24 24 576 + 1 9 12 13 17 + -2 9 14 13 15 + +0.1629499793 + -1.796091437 1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.1379333436 + 1.246938467 1 + 3 24 24 576 + 1 14 4 17 15 + -2 16 4 17 9 + -2 14 10 15 15 + +0.1454777569 + 1.500443339 1 + 3 24 24 576 + 1 15 9 18 18 + -2 17 9 18 13 + -2 15 14 16 18 + +0.1523963511 + -13.82143497 1 + 2 24 24 576 + 1 11 9 14 17 + -1 15 9 18 17 + +0.166002363 + 8.427361488 1 + 2 24 24 576 + 1 17 5 22 10 + -2 19 5 20 10 + +0.1798557043 + 8.339422226 -1 + 2 24 24 576 + 1 12 7 16 12 + -2 12 9 16 10 + +0.1625451297 + 10.66857719 1 + 3 24 24 576 + 1 1 15 8 22 + -2 5 15 8 18 + -2 1 19 4 22 + +0.1590036452 + 12.91525364 -1 + 2 24 24 576 + 1 8 6 12 10 + -1 13 6 17 10 + +0.1426229626 + 3.607823849 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.1439078152 + 5.313146114 -1 + 2 24 24 576 + 1 2 18 10 19 + -1 2 20 10 21 + +0.1587305963 + -2.449881792 -1 + 2 24 24 576 + 1 5 19 7 22 + -2 6 19 6 22 + +0.1469051093 + -8.216376305 1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1518056542 + -3.1595788 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.1592915058 + -30.74384499 -1 + 2 24 24 576 + 1 0 5 4 13 + -1 0 14 4 22 + +0.1602769792 + 23.25006104 1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.2386301011 + 6.914952755 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.2320833206 + 9.316922188 -1 + 3 24 24 576 + 1 12 0 19 5 + -2 16 0 19 2 + -2 12 3 15 5 + +0.1653227806 + -4.183283329 -1 + 2 24 24 576 + 1 13 0 17 11 + -2 13 4 17 7 + +0.1815609783 + -2.344338894 1 + 2 24 24 576 + 1 19 10 23 11 + -1 19 12 23 13 + +0.1506919563 + 0.7723414898 -1 + 3 24 24 576 + 1 14 1 17 4 + -2 16 1 17 2 + -2 14 3 15 4 + +0.2064979523 + 17.15938377 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + +0.1884125471 + -12.27933216 1 + 3 24 24 576 + 1 10 0 17 7 + -2 14 0 17 3 + -2 10 4 13 7 + +0.1585555524 + -6.895751953 -1 + 2 24 24 576 + 1 9 14 12 21 + -1 13 14 16 21 + + +200 15.68214512 1 +0.3557036221 + 3.764961243 1 + 2 24 24 576 + 1 10 0 12 4 + -2 11 0 11 4 + +0.3343322575 + 6.646905422 1 + 3 24 24 576 + 1 9 5 18 12 + -2 14 5 18 8 + -2 9 9 13 12 + +0.29135409 + 4.134347439 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.2543552816 + -18.43932533 -1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.2875946462 + 0.2630060315 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.2407169491 + 4.258675575 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2435654998 + 25.90064812 1 + 2 24 24 576 + 1 18 0 20 10 + -1 21 0 23 10 + +0.2319882959 + -0.2270197868 -1 + 2 24 24 576 + 1 6 5 10 8 + -1 11 5 15 8 + +0.2255534977 + -0.7398950458 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2082126886 + 35.14821625 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.23525244 + -2.339167833 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.2235406637 + -36.78036499 -1 + 2 24 24 576 + 1 2 19 22 22 + -2 9 19 15 22 + +0.2145971656 + -3.099437714 -1 + 2 24 24 576 + 1 6 6 15 7 + -1 6 8 15 9 + +0.1969972104 + 4.127253532 1 + 3 24 24 576 + 1 13 19 20 22 + -2 17 19 20 20 + -2 13 21 16 22 + +0.1960751116 + 0.1925465167 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1853487492 + -5.610943794 -1 + 3 24 24 576 + 1 1 0 10 13 + -2 6 0 10 6 + -2 1 7 5 13 + +0.1877161115 + -21.59493256 -1 + 2 24 24 576 + 1 1 12 3 20 + -1 4 12 6 20 + +0.179769516 + -0.1893262118 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.183111608 + 15.1302166 1 + 2 24 24 576 + 1 0 13 8 23 + -2 3 13 5 23 + +0.2226094753 + 3.124158621 -1 + 3 24 24 576 + 1 2 10 11 13 + -2 7 10 11 11 + -2 2 12 6 13 + +0.1789615303 + 33.95756912 1 + 2 24 24 576 + 1 4 19 11 23 + -1 12 19 19 23 + +0.1990148127 + -4.03278923 -1 + 2 24 24 576 + 1 17 4 20 8 + -1 17 9 20 13 + +0.1693094224 + 7.578494549 1 + 2 24 24 576 + 1 10 11 14 16 + -2 10 13 14 14 + +0.1855744123 + -0.8900043964 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.1650072336 + -4.099411964 -1 + 3 24 24 576 + 1 20 1 23 20 + -2 22 1 23 10 + -2 20 11 21 20 + +0.2009281814 + -14.8334589 1 + 2 24 24 576 + 1 18 5 21 8 + -1 18 9 21 12 + +0.1837979555 + 3.423956156 1 + 2 24 24 576 + 1 20 21 23 23 + -2 20 22 23 22 + +0.1956896186 + 2.575175047 -1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.1647403389 + 5.681699753 1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1753924936 + -2.202939272 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.1538452357 + 0 -1 + 2 24 24 576 + 1 3 0 10 1 + -1 3 2 10 3 + +0.1551150829 + -48.51321411 -1 + 2 24 24 576 + 1 17 1 23 21 + -2 17 8 23 14 + +0.1842059791 + 11.2534914 -1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.1663256139 + -173.8358459 -1 + 2 24 24 576 + 1 2 0 10 20 + -1 11 0 19 20 + +0.200373441 + -1.453734517 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1802628338 + 31.38358307 1 + 2 24 24 576 + 1 5 0 9 11 + -2 5 4 9 7 + +0.1726029962 + 11.53048134 -1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.1957014352 + -10.11333466 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.1574921608 + 0 -1 + 3 24 24 576 + 1 2 13 9 16 + -2 6 13 9 14 + -2 2 15 5 16 + +0.1537910104 + -3.216318607 1 + 2 24 24 576 + 1 9 15 14 18 + -2 11 15 12 18 + +0.1823245138 + -4.778025627 -1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.181918323 + -6.615512371 1 + 3 24 24 576 + 1 4 15 19 18 + -2 12 15 19 16 + -2 4 17 11 18 + +0.1763292104 + 8.487740517 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.1405938417 + 4.548956871 -1 + 2 24 24 576 + 1 10 16 15 21 + -2 12 16 13 21 + +0.1677054465 + 4.971065044 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.180434227 + -7.312532425 1 + 3 24 24 576 + 1 4 12 21 15 + -2 13 12 21 13 + -2 4 14 12 15 + +0.1634022743 + 133.8744812 1 + 2 24 24 576 + 1 2 8 11 21 + -1 12 8 21 21 + +0.1720126271 + -18.90776443 1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.1595273763 + -4.160111904 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1502420306 + 6.816515446 -1 + 2 24 24 576 + 1 6 2 7 15 + -1 8 2 9 15 + +0.1734727919 + 17.74988365 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.1755487025 + -6.068758965 1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1580415517 + 36.51324844 1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.1544757485 + -5.310543537 1 + 2 24 24 576 + 1 9 5 12 9 + -1 9 10 12 14 + +0.1465991139 + -3.14480257 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1637713164 + -3.099494457 -1 + 2 24 24 576 + 1 1 2 5 6 + -1 1 7 5 11 + +0.1458589882 + -52.74925232 -1 + 2 24 24 576 + 1 1 9 4 22 + -1 5 9 8 22 + +0.1597735733 + -1.107815385 1 + 3 24 24 576 + 1 15 0 18 3 + -2 17 0 18 1 + -2 15 2 16 3 + +0.1519242227 + 3.637052774 1 + 2 24 24 576 + 1 4 9 9 11 + -1 4 12 9 14 + +0.1463794559 + 2.661595345 1 + 2 24 24 576 + 1 7 14 12 15 + -1 7 16 12 17 + +0.1514434367 + 19.8902874 -1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1595246494 + 27.07621384 1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.1733362526 + 12.45965195 -1 + 3 24 24 576 + 1 5 7 18 20 + -2 12 7 18 13 + -2 5 14 11 20 + +0.1361547709 + -2.438150406 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1510575712 + -9.514531136 1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.1681735963 + -38.98326111 -1 + 2 24 24 576 + 1 3 18 10 22 + -1 11 18 18 22 + +0.1595414281 + -8.213199615 1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1425120234 + -2.15195775 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.1284299344 + 0.8908441067 1 + 2 24 24 576 + 1 14 1 15 10 + -1 16 1 17 10 + +0.1502633691 + -59.68029404 -1 + 2 24 24 576 + 1 4 0 13 20 + -1 14 0 23 20 + +0.1536087692 + 3.344865561 -1 + 3 24 24 576 + 1 2 10 21 13 + -2 12 10 21 11 + -2 2 12 11 13 + +0.1390426457 + 5.20611763 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.1593125463 + 20.37446785 -1 + 2 24 24 576 + 1 7 5 12 9 + -1 13 5 18 9 + +0.1538386345 + -2.278302193 -1 + 3 24 24 576 + 1 12 16 17 19 + -2 15 16 17 17 + -2 12 18 14 19 + +0.1415986866 + 4.934320927 -1 + 2 24 24 576 + 1 11 18 23 19 + -1 11 20 23 21 + +0.1516893208 + 14.79637909 1 + 2 24 24 576 + 1 4 8 20 10 + -1 4 11 20 13 + +0.1632396728 + -0.1819266528 -1 + 3 24 24 576 + 1 19 0 22 3 + -2 21 0 22 1 + -2 19 2 20 3 + +0.1699161977 + -1.947005987 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.2477635741 + -10.89396191 -1 + 3 24 24 576 + 1 16 14 19 21 + -2 18 14 19 17 + -2 16 18 17 21 + +0.4359168708 + 8.123538971 -1 + 2 24 24 576 + 1 8 20 13 23 + -2 10 20 11 23 + +0.1599944383 + -1.915488601 -1 + 2 24 24 576 + 1 14 3 20 5 + -2 14 4 20 4 + +0.1429240257 + 0 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1429225802 + -0.2985058129 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1751851737 + 3.419973135 -1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.145859465 + 8.905947685 1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.1842225343 + -6.703420639 1 + 3 24 24 576 + 1 7 9 20 14 + -2 14 9 20 11 + -2 7 12 13 14 + +0.1478653103 + 27.51900482 1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.184260875 + 6.939599514 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1602633446 + 23.19322968 1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.1731637418 + -3.020241261 1 + 2 24 24 576 + 1 1 15 5 16 + -1 1 17 5 18 + +0.1490957588 + -2.048850775 -1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.1477050781 + -1.736424446 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.1535740197 + 17.2364521 1 + 2 24 24 576 + 1 8 5 13 18 + -2 10 5 11 18 + +0.1458196789 + -1.446604967 -1 + 3 24 24 576 + 1 16 10 23 13 + -2 20 10 23 11 + -2 16 12 19 13 + +0.1983024627 + 11.90373325 -1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.1817794144 + -8.296205521 -1 + 2 24 24 576 + 1 11 14 20 19 + -2 11 16 20 17 + +0.1502563655 + 4.122261047 -1 + 2 24 24 576 + 1 19 10 23 11 + -1 19 12 23 13 + +0.1625211388 + 7.853235722 1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.1450150162 + 5.84305954 -1 + 2 24 24 576 + 1 4 6 6 10 + -1 7 6 9 10 + +0.1476260424 + 2.768317699 1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1450689733 + -7.185381413 -1 + 2 24 24 576 + 1 0 0 8 4 + -2 3 0 5 4 + +0.1430110186 + 4.069620609 1 + 2 24 24 576 + 1 3 10 20 11 + -1 3 12 20 13 + +0.1404362023 + -8.249142647 -1 + 2 24 24 576 + 1 6 7 17 10 + -1 6 11 17 14 + +0.1440340579 + 1.525776863 1 + 3 24 24 576 + 1 1 5 6 8 + -2 4 5 6 6 + -2 1 7 3 8 + +0.1469071805 + 0.7325373888 -1 + 3 24 24 576 + 1 16 5 19 8 + -2 18 5 19 6 + -2 16 7 17 8 + +0.135311231 + 0 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.1811626852 + 1.653147817 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.143285647 + 10.5760088 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.1527733654 + 21.67383575 1 + 2 24 24 576 + 1 0 20 6 23 + -1 7 20 13 23 + +0.1564206928 + -1.517333269 1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1471723765 + 8.576700211 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.1501643211 + 2.352087975 -1 + 3 24 24 576 + 1 2 8 13 11 + -2 8 8 13 9 + -2 2 10 7 11 + +0.1350757629 + 3.570144176 1 + 2 24 24 576 + 1 17 3 18 6 + -1 19 3 20 6 + +0.1438991427 + 22.50263405 -1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.177404359 + -35.54713821 -1 + 2 24 24 576 + 1 16 5 18 20 + -1 19 5 21 20 + +0.161120221 + -1.510858417 -1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.1886720657 + 6.264234543 -1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.1865161806 + -2.608921766 1 + 3 24 24 576 + 1 14 13 21 20 + -2 18 13 21 16 + -2 14 17 17 20 + +0.1328513771 + 7.676656246 1 + 2 24 24 576 + 1 10 0 14 9 + -1 10 10 14 19 + +0.1275116354 + 3.228611708 -1 + 3 24 24 576 + 1 20 15 23 18 + -2 22 15 23 16 + -2 20 17 21 18 + +0.1996361166 + 14.21612549 1 + 3 24 24 576 + 1 1 2 4 21 + -2 3 2 4 11 + -2 1 12 2 21 + +0.1543339193 + -2.778002024 1 + 2 24 24 576 + 1 13 17 14 20 + -1 15 17 16 20 + +0.1465587467 + 4.716350555 1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.1440604329 + -0.8886128068 -1 + 2 24 24 576 + 1 7 4 16 9 + -1 7 10 16 15 + +0.1489276439 + 29.67861938 1 + 2 24 24 576 + 1 13 1 21 9 + -2 13 4 21 6 + +0.148445949 + -8.85340786 1 + 3 24 24 576 + 1 1 17 22 20 + -2 12 17 22 18 + -2 1 19 11 20 + +0.1555409431 + -18.89650345 -1 + 3 24 24 576 + 1 2 4 5 23 + -2 4 4 5 13 + -2 2 14 3 23 + +0.1550548077 + 6.727408409 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.151503846 + -8.972719193 -1 + 2 24 24 576 + 1 7 0 17 2 + -1 7 3 17 5 + +0.1418290436 + 2.721365213 1 + 2 24 24 576 + 1 8 1 12 3 + -1 8 4 12 6 + +0.1328573674 + 2.541606903 1 + 2 24 24 576 + 1 17 14 20 18 + -1 17 19 20 23 + +0.1399510354 + 2.801212788 -1 + 2 24 24 576 + 1 5 3 9 11 + -2 5 6 9 8 + +0.1430331618 + -5.976608276 1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.1594194323 + 12.75692749 1 + 3 24 24 576 + 1 7 16 22 23 + -2 15 16 22 19 + -2 7 20 14 23 + +0.1538462043 + -0.9958745837 -1 + 3 24 24 576 + 1 5 2 8 9 + -2 7 2 8 5 + -2 5 6 6 9 + +0.1358203143 + 3.602447987 1 + 2 24 24 576 + 1 6 13 9 18 + -1 10 13 13 18 + +0.1462446451 + -6.421610832 1 + 3 24 24 576 + 1 6 7 17 18 + -2 12 7 17 12 + -2 6 13 11 18 + +0.1288505644 + -1.38690114 -1 + 3 24 24 576 + 1 6 16 13 19 + -2 10 16 13 17 + -2 6 18 9 19 + +0.1414673328 + -1.317246199 -1 + 2 24 24 576 + 1 3 11 4 14 + -1 5 11 6 14 + +0.1297373921 + 13.55659485 1 + 3 24 24 576 + 1 0 12 7 21 + -2 4 12 7 16 + -2 0 17 3 21 + +0.1810274422 + 21.04063225 -1 + 2 24 24 576 + 1 5 9 8 20 + -1 9 9 12 20 + +0.1551660299 + 1.305548072 1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.1323978454 + 0.7105243802 1 + 2 24 24 576 + 1 7 15 8 18 + -1 9 15 10 18 + +0.1267716885 + -6.858867645 -1 + 3 24 24 576 + 1 11 10 20 23 + -2 16 10 20 16 + -2 11 17 15 23 + +0.1389071643 + 2.7344172 -1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.1582429707 + 8.551240921 1 + 2 24 24 576 + 1 2 1 7 8 + -1 8 1 13 8 + +0.1555965245 + -1.7653234 1 + 2 24 24 576 + 1 9 6 14 11 + -2 9 8 14 9 + +0.1481281519 + -6.785288811 -1 + 2 24 24 576 + 1 9 5 17 17 + -2 12 5 14 17 + +0.1328790188 + 5.550487041 -1 + 2 24 24 576 + 1 7 0 8 23 + -1 9 0 10 23 + +0.1546186358 + -2.967946768 -1 + 2 24 24 576 + 1 12 6 13 13 + -1 14 6 15 13 + +0.1374715567 + 0.9973860383 -1 + 3 24 24 576 + 1 5 0 8 3 + -2 7 0 8 1 + -2 5 2 6 3 + +0.1377055347 + -5.444610596 1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.1993032992 + -1.368443251 -1 + 3 24 24 576 + 1 13 6 16 9 + -2 15 6 16 7 + -2 13 8 14 9 + +0.1421883404 + -3.465676546 -1 + 2 24 24 576 + 1 16 5 19 9 + -1 16 10 19 14 + +0.1482483596 + -8.017373085 -1 + 2 24 24 576 + 1 9 12 23 17 + -2 9 14 23 15 + +0.1436787844 + 3.606687307 -1 + 3 24 24 576 + 1 7 0 18 3 + -2 13 0 18 1 + -2 7 2 12 3 + +0.1368634254 + -73.6499939 -1 + 2 24 24 576 + 1 2 10 9 21 + -1 10 10 17 21 + +0.1363975406 + -4.192098141 1 + 3 24 24 576 + 1 2 0 21 3 + -2 12 0 21 1 + -2 2 2 11 3 + +0.1373906583 + 1.384755135 1 + 2 24 24 576 + 1 5 19 7 22 + -2 6 19 6 22 + +0.1284685731 + -18.74550056 1 + 2 24 24 576 + 1 6 6 23 10 + -2 12 6 17 10 + +0.152042672 + -3.507748127 -1 + 3 24 24 576 + 1 10 7 13 18 + -2 12 7 13 12 + -2 10 13 11 18 + +0.127184242 + 18.84672165 -1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.145022586 + 24.65512466 1 + 2 24 24 576 + 1 6 5 16 13 + -2 6 8 16 10 + +0.1547109634 + -1.94175756 -1 + 3 24 24 576 + 1 15 12 18 19 + -2 17 12 18 15 + -2 15 16 16 19 + +0.202333793 + 2.233880281 -1 + 3 24 24 576 + 1 14 8 21 15 + -2 18 8 21 11 + -2 14 12 17 15 + +0.1651952863 + -4.7427001 -1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.2050271481 + 12.40662766 -1 + 3 24 24 576 + 1 14 7 23 16 + -2 19 7 23 11 + -2 14 12 18 16 + +0.1978454888 + 16.87359047 1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.1657336652 + 4.26990509 -1 + 2 24 24 576 + 1 16 15 20 16 + -1 16 17 20 18 + +0.1771930605 + 1.537168741 1 + 2 24 24 576 + 1 15 9 18 10 + -1 15 11 18 12 + +0.1587700695 + -3.405230999 1 + 2 24 24 576 + 1 14 8 15 11 + -1 16 8 17 11 + +0.1635766327 + 22.02119637 1 + 3 24 24 576 + 1 19 7 22 20 + -2 21 7 22 13 + -2 19 14 20 20 + +0.1850515008 + -4.845802307 -1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.2509441078 + 0.8248173594 -1 + 3 24 24 576 + 1 14 5 21 12 + -2 18 5 21 8 + -2 14 9 17 12 + +0.217704758 + -7.161468029 1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.1818867326 + 12.3358593 1 + 3 24 24 576 + 1 12 5 21 16 + -2 17 5 21 10 + -2 12 11 16 16 + +0.146048516 + 13.17920971 -1 + 2 24 24 576 + 1 11 5 14 15 + -1 15 5 18 15 + +0.1403110325 + -17.077034 1 + 3 24 24 576 + 1 14 5 23 16 + -2 19 5 23 10 + -2 14 11 18 16 + +0.186950177 + 2.254138231 1 + 3 24 24 576 + 1 14 4 17 15 + -2 16 4 17 9 + -2 14 10 15 15 + +0.1997852325 + -2.821560383 -1 + 3 24 24 576 + 1 13 6 18 13 + -2 16 6 18 9 + -2 13 10 15 13 + +0.1583507955 + 0.4007078707 1 + 2 24 24 576 + 1 13 13 16 15 + -1 13 16 16 18 + +0.1349258125 + 4.527876377 1 + 2 24 24 576 + 1 20 13 21 16 + -1 22 13 23 16 + +0.1594406813 + -13.49499035 1 + 2 24 24 576 + 1 11 9 14 17 + -1 15 9 18 17 + +0.1484346837 + -4.903710365 -1 + 2 24 24 576 + 1 7 3 12 14 + -2 9 3 10 14 + +0.1487940103 + 8.196622849 -1 + 3 24 24 576 + 1 14 5 19 8 + -2 17 5 19 6 + -2 14 7 16 8 + +0.1642695069 + 5.9228158 1 + 2 24 24 576 + 1 18 5 23 8 + -2 20 5 21 8 + +0.139579311 + -4.467760563 -1 + 3 24 24 576 + 1 14 2 19 5 + -2 17 2 19 3 + -2 14 4 16 5 + +0.2392775118 + 11.26271915 -1 + 2 24 24 576 + 1 4 4 5 10 + -1 6 4 7 10 + +0.1318451464 + 10.99725246 1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.143939212 + 9.321746826 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 9 9 14 10 + +0.1632941365 + 17.26954651 1 + 2 24 24 576 + 1 7 15 16 20 + -2 7 17 16 18 + +0.1563483477 + -1.615267396 -1 + 3 24 24 576 + 1 14 1 23 4 + -2 19 1 23 2 + -2 14 3 18 4 + +0.2113612145 + -8.127887726 -1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.3546473086 + -7.178778172 -1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.4382551312 + 11.48911285 -1 + 3 24 24 576 + 1 14 0 17 11 + -2 16 0 17 5 + -2 14 6 15 11 + +0.1928875297 + 3.206732035 1 + 3 24 24 576 + 1 8 0 23 5 + -2 16 0 23 2 + -2 8 3 15 5 + +0.1497881562 + -23.82190514 1 + 2 24 24 576 + 1 12 4 20 8 + -1 12 9 20 13 + +0.1530278325 + 2.658091068 1 + 2 24 24 576 + 1 10 3 12 8 + -1 13 3 15 8 + +0.1437475979 + -2.181577206 -1 + 2 24 24 576 + 1 7 16 13 21 + -2 7 18 13 19 + +0.1385842413 + 8.641677856 -1 + 3 24 24 576 + 1 2 0 19 5 + -2 11 0 19 2 + -2 2 3 10 5 + + +200 15.81414795 1 +0.3486904502 + -29.85700035 -1 + 2 24 24 576 + 1 2 19 22 22 + -2 9 19 15 22 + +0.3439955115 + 10.54246426 1 + 3 24 24 576 + 1 9 0 18 17 + -2 14 0 18 8 + -2 9 9 13 17 + +0.3117634952 + 15.34048367 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.281747669 + 2.946687937 1 + 2 24 24 576 + 1 11 3 12 10 + -1 13 3 14 10 + +0.2660762072 + -10.63504791 -1 + 2 24 24 576 + 1 0 2 2 10 + -1 3 2 5 10 + +0.259960115 + -4.44507122 -1 + 2 24 24 576 + 1 3 6 7 7 + -1 3 8 7 9 + +0.2335101813 + 5.977454662 1 + 2 24 24 576 + 1 8 20 15 21 + -1 8 22 15 23 + +0.2360845208 + -2.830042601 -1 + 2 24 24 576 + 1 9 3 10 12 + -1 11 3 12 12 + +0.1992883831 + 0.5102857351 1 + 3 24 24 576 + 1 11 15 16 18 + -2 14 15 16 16 + -2 11 17 13 18 + +0.1973827779 + -17.64284515 -1 + 3 24 24 576 + 1 2 1 15 20 + -2 9 1 15 10 + -2 2 11 8 20 + +0.1953800023 + 19.62005234 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2226017267 + -1.946211934 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1904237568 + -0.642665863 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1866542399 + -1.032627821 -1 + 2 24 24 576 + 1 7 16 10 17 + -1 7 18 10 19 + +0.171802327 + 0.4833682477 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1825585663 + 7.616774559 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.2217483521 + 3.512615442 -1 + 3 24 24 576 + 1 11 8 22 11 + -2 17 8 22 9 + -2 11 10 16 11 + +0.1727795303 + 8.70512867 1 + 2 24 24 576 + 1 21 13 23 23 + -2 22 13 22 23 + +0.2030903548 + -0.8033182621 -1 + 3 24 24 576 + 1 20 0 23 21 + -2 22 0 23 10 + -2 20 11 21 21 + +0.2245003879 + 8.33442688 -1 + 3 24 24 576 + 1 19 6 22 15 + -2 21 6 22 10 + -2 19 11 20 15 + +0.2134877145 + 19.61903381 1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.206493631 + -2.66334796 -1 + 3 24 24 576 + 1 19 5 22 10 + -2 21 5 22 7 + -2 19 8 20 10 + +0.2583060265 + 2.801570177 -1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1844709367 + 47.4668808 1 + 2 24 24 576 + 1 8 2 15 7 + -1 16 2 23 7 + +0.1936936229 + 1.180347443 -1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.211320132 + 2.406092644 -1 + 3 24 24 576 + 1 19 0 22 3 + -2 21 0 22 1 + -2 19 2 20 3 + +0.2156682163 + 11.89188671 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.190787673 + 7.03668642 -1 + 3 24 24 576 + 1 18 17 23 20 + -2 21 17 23 18 + -2 18 19 20 20 + +0.2382470667 + 143.7798004 1 + 2 24 24 576 + 1 3 7 11 22 + -1 12 7 20 22 + +0.2111649215 + 6.128726959 -1 + 3 24 24 576 + 1 18 14 21 21 + -2 20 14 21 17 + -2 18 18 19 21 + +0.2104081213 + 4.05390358 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.1591341197 + 0.1649987847 1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.1618338972 + -0.3041033745 -1 + 2 24 24 576 + 1 7 20 8 23 + -1 9 20 10 23 + +0.1639507115 + 3.705185652 1 + 2 24 24 576 + 1 13 4 17 5 + -1 13 6 17 7 + +0.1577043533 + 0.1399117708 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.1507257819 + -0.4113890231 -1 + 2 24 24 576 + 1 14 15 15 18 + -1 16 15 17 18 + +0.1601697356 + -11.35875511 -1 + 2 24 24 576 + 1 18 11 20 20 + -1 21 11 23 20 + +0.1962493807 + 5.86414957 -1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.1786800623 + -80.99820709 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.1847161949 + 0.3902435303 1 + 2 24 24 576 + 1 13 11 18 13 + -1 13 14 18 16 + +0.1669565886 + -3.318736315 -1 + 3 24 24 576 + 1 18 13 21 16 + -2 20 13 21 14 + -2 18 15 19 16 + +0.2055473626 + -13.51272869 1 + 2 24 24 576 + 1 9 11 13 16 + -1 9 17 13 22 + +0.1791274995 + -9.276545525 -1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.1794032305 + -9.257709503 1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.1803108007 + 5.681699753 1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1700790524 + -0.2139436305 -1 + 2 24 24 576 + 1 1 1 4 5 + -1 1 6 4 10 + +0.1563762277 + 4.182515621 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1670585871 + 2.348148823 -1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.1715150923 + 6.898562908 1 + 2 24 24 576 + 1 3 0 8 3 + -1 9 0 14 3 + +0.1861787289 + 7.920676231 -1 + 2 24 24 576 + 1 4 19 10 20 + -1 4 21 10 22 + +0.1673641354 + -69.31419373 -1 + 2 24 24 576 + 1 0 11 4 23 + -1 5 11 9 23 + +0.169848457 + 3.723859072 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1572189033 + 25.32660294 1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.1905446947 + 8.271445274 -1 + 2 24 24 576 + 1 10 16 15 21 + -2 12 16 13 21 + +0.1693133712 + -29.39305687 -1 + 2 24 24 576 + 1 2 19 10 22 + -1 11 19 19 22 + +0.1587850302 + -22.16059494 -1 + 2 24 24 576 + 1 18 2 21 22 + -2 18 9 21 15 + +0.167618826 + 10.00711918 -1 + 2 24 24 576 + 1 9 6 14 11 + -2 9 8 14 9 + +0.1614504457 + -18.09319115 -1 + 3 24 24 576 + 1 0 3 3 22 + -2 2 3 3 12 + -2 0 13 1 22 + +0.1694539487 + 21.63080406 -1 + 2 24 24 576 + 1 7 5 12 9 + -1 13 5 18 9 + +0.1622871011 + 4.531545162 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1738787591 + 3.273752213 -1 + 3 24 24 576 + 1 2 9 11 12 + -2 7 9 11 10 + -2 2 11 6 12 + +0.1588145792 + 2.784360886 1 + 3 24 24 576 + 1 7 0 12 9 + -2 10 0 12 4 + -2 7 5 9 9 + +0.1564118415 + 18.95273209 1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.1599023193 + 0.862993896 -1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1503193378 + -5.697971344 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1707534641 + -7.450365543 1 + 3 24 24 576 + 1 4 16 21 19 + -2 13 16 21 17 + -2 4 18 12 19 + +0.1635747403 + 14.97560501 1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.1638660282 + -19.0327816 1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.1593688875 + -11.73370361 -1 + 3 24 24 576 + 1 2 15 9 22 + -2 6 15 9 18 + -2 2 19 5 22 + +0.1622245014 + -1.983155131 1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.1358637959 + -2.230947018 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1498814225 + 1.201536298 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1572149992 + 3.505059958 1 + 2 24 24 576 + 1 2 10 13 11 + -1 2 12 13 13 + +0.1485144049 + 1.506935596 -1 + 2 24 24 576 + 1 15 3 19 11 + -2 15 6 19 8 + +0.1666914374 + -5.344737053 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.151123777 + 10.24386692 1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1689620465 + 4.664915085 -1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.1392236948 + 0.9542031884 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.136578247 + -0.3329184949 -1 + 3 24 24 576 + 1 18 12 21 15 + -2 20 12 21 13 + -2 18 14 19 15 + +0.1691576391 + 6.043421268 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.162859261 + -4.658062935 -1 + 2 24 24 576 + 1 15 10 17 21 + -2 16 10 16 21 + +0.1660145372 + -17.56113434 1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.1586710811 + 17.05574417 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + +0.1763651073 + 3.619440794 -1 + 3 24 24 576 + 1 5 3 8 10 + -2 7 3 8 6 + -2 5 7 6 10 + +0.1637244821 + 41.98601913 1 + 2 24 24 576 + 1 5 3 16 14 + -2 5 7 16 10 + +0.1459144354 + 1.613431811 -1 + 3 24 24 576 + 1 2 8 13 11 + -2 8 8 13 9 + -2 2 10 7 11 + +0.1320527941 + -2.220003843 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1549709439 + -4.10204649 1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.1634173095 + -26.53496552 -1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.1794948131 + -4.972271442 1 + 3 24 24 576 + 1 16 8 19 13 + -2 18 8 19 10 + -2 16 11 17 13 + +0.1697264016 + 5.723283291 1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.1744936407 + -9.994768143 1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.1754707098 + 14.81533241 1 + 3 24 24 576 + 1 1 3 4 22 + -2 3 3 4 12 + -2 1 13 2 22 + +0.1638953835 + 0.05826004967 1 + 3 24 24 576 + 1 17 14 22 17 + -2 20 14 22 15 + -2 17 16 19 17 + +0.1522955745 + 11.70241642 1 + 3 24 24 576 + 1 16 6 19 21 + -2 18 6 19 13 + -2 16 14 17 21 + +0.2534675598 + 8.210104942 -1 + 3 24 24 576 + 1 3 10 10 15 + -2 7 10 10 12 + -2 3 13 6 15 + +0.1497687101 + 8.647112846 1 + 2 24 24 576 + 1 7 14 22 15 + -1 7 16 22 17 + +0.1469620615 + 0.7463393211 1 + 3 24 24 576 + 1 4 6 7 21 + -2 6 6 7 13 + -2 4 14 5 21 + +0.1360114366 + 1.18767643 1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.1614617258 + 17.88808823 1 + 2 24 24 576 + 1 1 20 18 23 + -2 7 20 12 23 + +0.1572003514 + 5.541435242 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.1493351161 + 2.424062252 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.1629109681 + -4.056262493 -1 + 2 24 24 576 + 1 16 3 17 19 + -1 18 3 19 19 + +0.1393827796 + -7.130366802 1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.1668149531 + -39.15507507 -1 + 2 24 24 576 + 1 2 0 12 8 + -1 13 0 23 8 + +0.1407427937 + -0.8299640417 1 + 3 24 24 576 + 1 8 1 11 4 + -2 10 1 11 2 + -2 8 3 9 4 + +0.156524688 + 14.88259411 1 + 2 24 24 576 + 1 10 5 15 13 + -2 12 5 13 13 + +0.1541457325 + -21.13061142 1 + 2 24 24 576 + 1 6 1 8 14 + -1 9 1 11 14 + +0.1438158005 + 8.621811867 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.1639119536 + -0.3840695918 -1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1378023326 + 5.980686665 1 + 2 24 24 576 + 1 6 9 10 20 + -1 11 9 15 20 + +0.1381368488 + 0.2830938101 1 + 3 24 24 576 + 1 4 12 13 15 + -2 9 12 13 13 + -2 4 14 8 15 + +0.1280687749 + -1.193387508 -1 + 2 24 24 576 + 1 9 7 10 20 + -1 11 7 12 20 + +0.1280937046 + -6.860390186 -1 + 2 24 24 576 + 1 12 13 20 23 + -2 15 13 17 23 + +0.1329618096 + 7.980768681 -1 + 2 24 24 576 + 1 4 11 7 15 + -1 8 11 11 15 + +0.1453018486 + 8.736409187 1 + 2 24 24 576 + 1 9 12 13 17 + -2 9 14 13 15 + +0.1483073235 + 4.54781723 -1 + 2 24 24 576 + 1 16 15 20 16 + -1 16 17 20 18 + +0.1549320966 + -6.1176157 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.1310339123 + -8.226511955 1 + 3 24 24 576 + 1 16 7 21 20 + -2 19 7 21 13 + -2 16 14 18 20 + +0.1482522339 + 5.300039291 1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.1654730588 + -8.831232071 1 + 3 24 24 576 + 1 1 17 22 20 + -2 12 17 22 18 + -2 1 19 11 20 + +0.1485679299 + -10.57428741 1 + 3 24 24 576 + 1 17 4 20 15 + -2 19 4 20 9 + -2 17 10 18 15 + +0.2391136736 + 15.02351665 1 + 2 24 24 576 + 1 9 16 16 21 + -2 9 18 16 19 + +0.1470295191 + -0.3329184949 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1726415306 + 2.892393351 -1 + 3 24 24 576 + 1 12 12 15 21 + -2 14 12 15 16 + -2 12 17 13 21 + +0.1470699161 + -10.89355564 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.21470429 + 0.1707374305 1 + 3 24 24 576 + 1 18 5 21 16 + -2 20 5 21 10 + -2 18 11 19 16 + +0.2228699178 + -13.96343803 -1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.1599323153 + -12.25232983 -1 + 2 24 24 576 + 1 18 1 23 8 + -2 20 1 21 8 + +0.1786463559 + 5.941873074 -1 + 2 24 24 576 + 1 8 17 13 22 + -2 10 17 11 22 + +0.1407430023 + -6.228853703 -1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.1442315727 + -5.296521664 1 + 3 24 24 576 + 1 15 7 18 20 + -2 17 7 18 13 + -2 15 14 16 20 + +0.1812068373 + -4.156421185 -1 + 2 24 24 576 + 1 18 19 20 22 + -2 19 19 19 22 + +0.1468114257 + 14.19918537 1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.2363756001 + 6.954408646 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1455058157 + -3.96403265 -1 + 2 24 24 576 + 1 11 5 16 9 + -2 13 5 14 9 + +0.1573700607 + -1.32135725 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.1713870317 + 5.217020035 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1421840787 + -2.488833666 -1 + 2 24 24 576 + 1 15 13 16 17 + -1 17 13 18 17 + +0.1417229921 + -24.61706734 -1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.1933041215 + -18.29920006 -1 + 3 24 24 576 + 1 15 1 22 18 + -2 19 1 22 9 + -2 15 10 18 18 + +0.2786177695 + -16.00788879 1 + 2 24 24 576 + 1 7 6 12 11 + -1 7 12 12 17 + +0.1429467946 + 0.03756398335 1 + 3 24 24 576 + 1 15 4 18 7 + -2 17 4 18 5 + -2 15 6 16 7 + +0.147781983 + -6.635066986 -1 + 2 24 24 576 + 1 18 3 20 12 + -2 19 3 19 12 + +0.1612527966 + -15.78388405 -1 + 3 24 24 576 + 1 15 1 20 18 + -2 18 1 20 9 + -2 15 10 17 18 + +0.2484708726 + 0.3558071852 -1 + 2 24 24 576 + 1 18 5 21 8 + -1 18 9 21 12 + +0.1470615566 + 16.30276871 1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.1623452157 + -8.877020836 1 + 3 24 24 576 + 1 4 0 21 7 + -2 13 0 21 3 + -2 4 4 12 7 + +0.1407853365 + -1.178537726 -1 + 3 24 24 576 + 1 6 16 13 19 + -2 10 16 13 17 + -2 6 18 9 19 + +0.1432372183 + 1.450380445 1 + 3 24 24 576 + 1 6 17 11 20 + -2 9 17 11 18 + -2 6 19 8 20 + +0.1331548244 + -11.20679188 1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.1563060582 + 34.895298 1 + 2 24 24 576 + 1 12 1 20 9 + -2 12 4 20 6 + +0.1569062471 + -19.83310127 1 + 2 24 24 576 + 1 9 14 14 18 + -1 9 19 14 23 + +0.1569572985 + 12.8176918 1 + 3 24 24 576 + 1 1 16 8 23 + -2 5 16 8 19 + -2 1 20 4 23 + +0.1613361984 + 13.34155178 1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.2380527705 + 2.65923214 1 + 3 24 24 576 + 1 14 12 21 15 + -2 18 12 21 13 + -2 14 14 17 15 + +0.3415408134 + -1.328162789 1 + 3 24 24 576 + 1 19 20 22 23 + -2 21 20 22 21 + -2 19 22 20 23 + +0.1777802408 + -5.031748295 1 + 3 24 24 576 + 1 8 15 13 20 + -2 11 15 13 17 + -2 8 18 10 20 + +0.1441095769 + -11.63883877 -1 + 3 24 24 576 + 1 1 12 6 21 + -2 4 12 6 16 + -2 1 17 3 21 + +0.1445105374 + 6.661088467 -1 + 3 24 24 576 + 1 15 0 18 23 + -2 17 0 18 11 + -2 15 12 16 23 + +0.1438385099 + 0.63680619 1 + 3 24 24 576 + 1 6 19 9 22 + -2 8 19 9 20 + -2 6 21 7 22 + +0.1422136277 + 2.459933996 1 + 2 24 24 576 + 1 8 0 21 5 + -1 8 6 21 11 + +0.1347518116 + -0.5122841597 -1 + 2 24 24 576 + 1 2 0 7 11 + -2 2 4 7 7 + +0.1565295607 + 0.407820344 1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.1605669707 + 7.401109219 1 + 3 24 24 576 + 1 14 8 21 15 + -2 18 8 21 11 + -2 14 12 17 15 + +0.2359147966 + 5.270114422 1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.384011209 + -7.371568203 1 + 3 24 24 576 + 1 14 7 23 16 + -2 19 7 23 11 + -2 14 12 18 16 + +0.3541346192 + 9.454292297 -1 + 3 24 24 576 + 1 14 4 21 19 + -2 18 4 21 11 + -2 14 12 17 19 + +0.1911057681 + -7.861113071 -1 + 3 24 24 576 + 1 14 5 23 16 + -2 19 5 23 10 + -2 14 11 18 16 + +0.1603995711 + -0.1509322077 1 + 2 24 24 576 + 1 4 11 9 15 + -1 10 11 15 15 + +0.1525909454 + -11.04413509 -1 + 2 24 24 576 + 1 4 2 9 5 + -1 10 2 15 5 + +0.1483400911 + -3.023643255 1 + 2 24 24 576 + 1 13 17 14 20 + -1 15 17 16 20 + +0.1726610214 + 2.188195467 1 + 3 24 24 576 + 1 15 9 18 18 + -2 17 9 18 13 + -2 15 14 16 18 + +0.150448814 + 1.030179381 1 + 3 24 24 576 + 1 11 9 14 18 + -2 13 9 14 13 + -2 11 14 12 18 + +0.1491982341 + -9.076542854 -1 + 2 24 24 576 + 1 19 1 23 6 + -1 19 7 23 12 + +0.1375675797 + 9.959534645 1 + 2 24 24 576 + 1 8 14 14 19 + -2 8 16 14 17 + +0.1583368927 + -7.178236485 1 + 2 24 24 576 + 1 11 12 17 16 + -1 11 17 17 21 + +0.1488996297 + -5.724722385 -1 + 2 24 24 576 + 1 5 10 16 18 + -2 9 10 12 18 + +0.1559137106 + -7.735339642 1 + 3 24 24 576 + 1 1 9 12 20 + -2 7 9 12 14 + -2 1 15 6 20 + +0.1338259876 + 3.957833052 -1 + 2 24 24 576 + 1 2 18 10 19 + -1 2 20 10 21 + +0.1454377025 + -15.74448586 -1 + 2 24 24 576 + 1 2 8 5 14 + -1 2 15 5 21 + +0.1561202705 + -29.2397213 1 + 2 24 24 576 + 1 5 0 16 8 + -2 9 0 12 8 + +0.1368145496 + 11.98353004 1 + 3 24 24 576 + 1 1 2 6 21 + -2 4 2 6 11 + -2 1 12 3 21 + +0.1455163658 + -2.68489933 1 + 3 24 24 576 + 1 7 10 16 15 + -2 12 10 16 12 + -2 7 13 11 15 + +0.1296841204 + 0.3019115329 1 + 3 24 24 576 + 1 7 19 12 22 + -2 10 19 12 20 + -2 7 21 9 22 + +0.1414978802 + 0.2584454417 1 + 3 24 24 576 + 1 18 1 21 4 + -2 20 1 21 2 + -2 18 3 19 4 + +0.1575859338 + -0.4919966459 -1 + 3 24 24 576 + 1 14 1 23 4 + -2 19 1 23 2 + -2 14 3 18 4 + +0.1372427493 + -4.153962612 -1 + 2 24 24 576 + 1 7 7 14 8 + -1 7 9 14 10 + +0.1343656629 + 2.753001928 1 + 3 24 24 576 + 1 13 7 18 12 + -2 16 7 18 9 + -2 13 10 15 12 + +0.1247493997 + 2.495709896 1 + 3 24 24 576 + 1 11 5 14 14 + -2 13 5 14 9 + -2 11 10 12 14 + +0.1204367056 + -0.2351989001 1 + 2 24 24 576 + 1 19 10 23 11 + -1 19 12 23 13 + +0.1316424459 + -1.741520524 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.1498731077 + -8.393358231 1 + 2 24 24 576 + 1 3 18 15 19 + -1 3 20 15 21 + +0.1539830267 + 3.450629711 1 + 3 24 24 576 + 1 14 5 21 12 + -2 18 5 21 8 + -2 14 9 17 12 + +0.1409109682 + 1.407280684 -1 + 3 24 24 576 + 1 5 0 8 3 + -2 7 0 8 1 + -2 5 2 6 3 + +0.153612867 + 15.02693653 1 + 3 24 24 576 + 1 14 0 17 11 + -2 16 0 17 5 + -2 14 6 15 11 + +0.1836390942 + 12.11087322 -1 + 2 24 24 576 + 1 4 2 12 5 + -2 7 2 9 5 + +0.1526274085 + 1.22441709 1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.1575083435 + 19.8847599 -1 + 2 24 24 576 + 1 5 9 22 12 + -2 11 9 16 12 + +0.1592959911 + 1.335727692 1 + 3 24 24 576 + 1 13 16 16 19 + -2 15 16 16 17 + -2 13 18 14 19 + + +200 17.01103401 1 +0.3495151401 + -20.43268585 -1 + 2 24 24 576 + 1 0 0 4 5 + -1 5 0 9 5 + +0.3131630123 + -12.17938995 -1 + 3 24 24 576 + 1 5 3 12 14 + -2 9 3 12 8 + -2 5 9 8 14 + +0.2758060992 + -58.1068306 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2667861283 + -6.400522709 -1 + 2 24 24 576 + 1 10 6 22 7 + -1 10 8 22 9 + +0.2452316135 + 3.484714031 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.2450219393 + 2.101405859 1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.2309398055 + 21.29858589 1 + 2 24 24 576 + 1 16 0 19 4 + -1 20 0 23 4 + +0.2263186425 + -1.837072968 -1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.2127161026 + -0.7059745789 -1 + 2 24 24 576 + 1 13 11 14 14 + -1 15 11 16 14 + +0.2159151733 + 1.2108289 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.1991167814 + 0.4807496667 1 + 2 24 24 576 + 1 4 5 5 8 + -1 6 5 7 8 + +0.1885641068 + 0.4605110884 1 + 2 24 24 576 + 1 14 20 15 23 + -1 16 20 17 23 + +0.1720905751 + 1.192733049 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.1911938041 + 1.090488553 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1860996783 + 0.9400782585 1 + 2 24 24 576 + 1 2 10 8 11 + -1 2 12 8 13 + +0.1962517053 + 5.280664921 1 + 2 24 24 576 + 1 16 21 23 23 + -2 16 22 23 22 + +0.2214106172 + 6.777653217 -1 + 3 24 24 576 + 1 3 10 20 15 + -2 12 10 20 12 + -2 3 13 11 15 + +0.1845369637 + 48.86150742 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.2190555036 + 3.282172441 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1626727581 + -1.98606658 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.1647274792 + 0.8989002705 1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1644743681 + 24.51947784 1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.1918138713 + 2.275736094 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1742725372 + 17.94371223 1 + 2 24 24 576 + 1 0 19 4 23 + -1 5 19 9 23 + +0.1791822463 + -0.1947311163 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.1529453099 + 18.25685501 1 + 2 24 24 576 + 1 9 5 17 17 + -2 12 5 14 17 + +0.1671722829 + -2.456836462 1 + 3 24 24 576 + 1 12 10 21 13 + -2 17 10 21 11 + -2 12 12 16 13 + +0.1867729276 + -4.160111904 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1754405797 + -2.389631271 1 + 3 24 24 576 + 1 9 8 14 13 + -2 12 8 14 10 + -2 9 11 11 13 + +0.1539397091 + -10.42635345 -1 + 2 24 24 576 + 1 20 6 21 23 + -1 22 6 23 23 + +0.16904293 + -10.07079601 1 + 2 24 24 576 + 1 7 4 10 13 + -1 7 14 10 23 + +0.1591235548 + -22.52523613 -1 + 2 24 24 576 + 1 0 2 1 19 + -1 2 2 3 19 + +0.1646966338 + 1.51429677 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.1745939255 + -105.6251602 -1 + 2 24 24 576 + 1 3 7 11 22 + -1 12 7 20 22 + +0.171179682 + 0 -1 + 2 24 24 576 + 1 2 5 5 8 + -1 2 9 5 12 + +0.1721579134 + 107.0739899 1 + 2 24 24 576 + 1 2 9 11 20 + -1 12 9 21 20 + +0.176194191 + -25.84494019 1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.1858754158 + -17.53024483 -1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.1715912968 + -4.608973026 1 + 3 24 24 576 + 1 18 6 23 9 + -2 21 6 23 7 + -2 18 8 20 9 + +0.1804335117 + -5.278839111 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1532224119 + -2.494065046 1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.1589850634 + 47.81588745 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1579550654 + -17.56113434 1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.1664671898 + -6.933983326 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1587213874 + 0.400822103 1 + 3 24 24 576 + 1 8 2 11 5 + -2 10 2 11 3 + -2 8 4 9 5 + +0.1608448476 + -16.76407433 1 + 2 24 24 576 + 1 5 4 8 15 + -1 9 4 12 15 + +0.1433967501 + -114.2890091 -1 + 2 24 24 576 + 1 2 0 9 21 + -1 10 0 17 21 + +0.1552582085 + 3.749566317 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1531402916 + 5.193419456 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.143279314 + 8.522313118 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1498375237 + 5.70054245 1 + 3 24 24 576 + 1 3 11 8 22 + -2 6 11 8 16 + -2 3 17 5 22 + +0.1388132721 + 0.6456956863 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.1558965743 + 0.1636313051 1 + 3 24 24 576 + 1 18 5 21 16 + -2 20 5 21 10 + -2 18 11 19 16 + +0.1766761541 + 2.953805447 1 + 3 24 24 576 + 1 17 13 20 20 + -2 19 13 20 16 + -2 17 17 18 20 + +0.2423484027 + -0.8171085715 1 + 3 24 24 576 + 1 17 12 20 19 + -2 19 12 20 15 + -2 17 16 18 19 + +0.298719883 + 1.328720927 -1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.1851335466 + 0.7433827519 1 + 3 24 24 576 + 1 17 11 20 18 + -2 19 11 20 14 + -2 17 15 18 18 + +0.1966981441 + -0.3893919885 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.1997085959 + -8.437664032 1 + 3 24 24 576 + 1 17 9 22 12 + -2 20 9 22 10 + -2 17 11 19 12 + +0.2049781233 + -4.789228916 -1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.1768376231 + 2.403604269 1 + 3 24 24 576 + 1 19 0 22 3 + -2 21 0 22 1 + -2 19 2 20 3 + +0.2812871933 + -0.3595277667 1 + 3 24 24 576 + 1 17 6 22 13 + -2 20 6 22 9 + -2 17 10 19 13 + +0.389171958 + -1.540258884 -1 + 2 24 24 576 + 1 16 5 19 9 + -1 16 10 19 14 + +0.2152064294 + -0.6112161875 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.1693550944 + -14.2808342 1 + 2 24 24 576 + 1 13 0 18 8 + -1 13 9 18 17 + +0.157770589 + -0.2801918387 -1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.1757384092 + -26.16518021 -1 + 2 24 24 576 + 1 6 0 20 3 + -1 6 4 20 7 + +0.1837974489 + -4.387359142 1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.1835720539 + -6.138348579 -1 + 2 24 24 576 + 1 21 17 23 21 + -2 22 17 22 21 + +0.154272303 + -15.29952621 1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.1982954144 + 14.63722897 1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1798451394 + 10.0108881 1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.2529498339 + 15.89290524 1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.4037224352 + -17.25126839 1 + 2 24 24 576 + 1 9 11 13 16 + -1 9 17 13 22 + +0.1609205306 + 0.5784924626 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.1521036029 + 1.313799739 1 + 2 24 24 576 + 1 15 9 18 10 + -1 15 11 18 12 + +0.1813192964 + -12.96522903 1 + 2 24 24 576 + 1 18 4 23 6 + -1 18 7 23 9 + +0.1717379242 + -62.17715073 -1 + 2 24 24 576 + 1 3 0 20 11 + -1 3 12 20 23 + +0.1733115911 + 7.676775455 -1 + 2 24 24 576 + 1 6 4 7 21 + -1 8 4 9 21 + +0.1663604677 + 8.026098251 1 + 2 24 24 576 + 1 0 12 2 15 + -1 3 12 5 15 + +0.1680399776 + -1.700101614 1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.1837123632 + -0.5351792574 -1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.1416345984 + -0.9182543755 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.1499627829 + 2.277584314 1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.1490914077 + -5.845506191 1 + 3 24 24 576 + 1 10 0 19 5 + -2 15 0 19 2 + -2 10 3 14 5 + +0.1514171511 + -2.242575645 -1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1390933394 + 0 -1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1308616102 + 0.1376566142 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.1600124091 + -9.005711555 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1490715444 + 5.376982689 1 + 2 24 24 576 + 1 11 15 17 17 + -2 11 16 17 16 + +0.1694040298 + 6.251986504 1 + 3 24 24 576 + 1 16 11 23 22 + -2 20 11 23 16 + -2 16 17 19 22 + +0.1718145758 + -18.75802422 1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.1867852062 + -7.648999691 -1 + 2 24 24 576 + 1 13 1 17 4 + -1 18 1 22 4 + +0.1767017543 + -2.502722025 1 + 3 24 24 576 + 1 16 6 19 21 + -2 18 6 19 13 + -2 16 14 17 21 + +0.2169720829 + -1.990604281 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.1773264259 + -6.375483513 1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1651713103 + -2.247652292 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1499427706 + 2.004995108 1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.2302065343 + 1.804605961 1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.27995646 + 6.976418972 -1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.2146472484 + -5.038834572 1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.2147678286 + -22.99530602 1 + 3 24 24 576 + 1 16 2 23 13 + -2 20 2 23 7 + -2 16 8 19 13 + +0.2557641268 + -11.65224838 -1 + 3 24 24 576 + 1 15 1 22 18 + -2 19 1 22 9 + -2 15 10 18 18 + +0.1689252108 + 2.953421593 1 + 2 24 24 576 + 1 13 1 17 3 + -1 13 4 17 6 + +0.1440966427 + -24.83104897 1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.2271062136 + 5.042167187 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1618975252 + -3.020512104 1 + 3 24 24 576 + 1 16 11 19 22 + -2 18 11 19 16 + -2 16 17 17 22 + +0.1771430373 + -1.434521079 -1 + 2 24 24 576 + 1 15 7 16 18 + -1 17 7 18 18 + +0.1463001072 + -6.498969078 1 + 2 24 24 576 + 1 14 3 15 16 + -1 16 3 17 16 + +0.1886505485 + 16.88593864 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + +0.1660431772 + -5.34359169 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.1387064606 + -1.675393581 -1 + 2 24 24 576 + 1 14 15 15 18 + -1 16 15 17 18 + +0.1277818978 + 6.590420246 -1 + 3 24 24 576 + 1 0 0 21 3 + -2 11 0 21 1 + -2 0 2 10 3 + +0.1679928005 + 6.199304104 1 + 2 24 24 576 + 1 0 0 2 6 + -2 1 0 1 6 + +0.1607788354 + -4.962164879 1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1483270377 + 20.85523796 -1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.2460708916 + 29.44373131 1 + 2 24 24 576 + 1 19 0 23 23 + -2 19 8 23 15 + +0.1692455262 + 9.0601511 -1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.1723100692 + 18.19771194 1 + 2 24 24 576 + 1 7 3 12 14 + -2 9 3 10 14 + +0.1677850336 + -5.931392193 -1 + 3 24 24 576 + 1 15 11 20 18 + -2 18 11 20 14 + -2 15 15 17 18 + +0.2367039323 + 11.11573505 -1 + 2 24 24 576 + 1 18 11 22 13 + -1 18 14 22 16 + +0.1515829861 + 5.356795311 1 + 2 24 24 576 + 1 6 14 16 15 + -1 6 16 16 17 + +0.157496348 + -3.862081051 -1 + 3 24 24 576 + 1 15 10 18 23 + -2 17 10 18 16 + -2 15 17 16 23 + +0.1681812853 + -13.30272388 -1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.261893779 + 11.78511429 -1 + 3 24 24 576 + 1 7 13 18 18 + -2 13 13 18 15 + -2 7 16 12 18 + +0.1678255647 + 11.82061291 1 + 3 24 24 576 + 1 13 12 20 23 + -2 17 12 20 17 + -2 13 18 16 23 + +0.1829118431 + -3.94969821 -1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.2391668856 + 5.256827831 -1 + 2 24 24 576 + 1 16 15 20 16 + -1 16 17 20 18 + +0.1595105976 + -14.6186924 -1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.1812356263 + 25.34669495 -1 + 3 24 24 576 + 1 15 5 22 22 + -2 19 5 22 13 + -2 15 14 18 22 + +0.2286957502 + 29.47001266 1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.1898926795 + -32.84199142 -1 + 3 24 24 576 + 1 15 5 20 18 + -2 18 5 20 11 + -2 15 12 17 18 + +0.3283526301 + -4.975222111 1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.156816721 + 11.70067501 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.2387940884 + 11.44182777 1 + 2 24 24 576 + 1 10 6 15 11 + -2 12 6 13 11 + +0.1719140261 + 14.18048859 1 + 3 24 24 576 + 1 10 1 21 20 + -2 16 1 21 10 + -2 10 11 15 20 + +0.1420576572 + 9.125954628 -1 + 3 24 24 576 + 1 15 4 18 7 + -2 17 4 18 5 + -2 15 6 16 7 + +0.2162399441 + -2.018174648 -1 + 3 24 24 576 + 1 20 7 23 18 + -2 22 7 23 12 + -2 20 13 21 18 + +0.1488368213 + -6.567246914 -1 + 2 24 24 576 + 1 4 1 8 9 + -2 4 4 8 6 + +0.1633972228 + -11.06516075 1 + 2 24 24 576 + 1 13 5 16 13 + -1 13 14 16 22 + +0.1496651322 + -4.560948849 -1 + 2 24 24 576 + 1 15 12 17 20 + -2 16 12 16 20 + +0.158165127 + 4.691713333 -1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.1525244415 + -28.09306335 -1 + 3 24 24 576 + 1 15 1 18 18 + -2 17 1 18 9 + -2 15 10 16 18 + +0.2428067923 + 5.782040596 -1 + 2 24 24 576 + 1 15 18 19 19 + -1 15 20 19 21 + +0.1480766535 + 21.16992569 -1 + 3 24 24 576 + 1 16 4 21 23 + -2 19 4 21 13 + -2 16 14 18 23 + +0.21056813 + 28.23226547 1 + 3 24 24 576 + 1 14 8 23 21 + -2 19 8 23 14 + -2 14 15 18 21 + +0.1586891711 + -29.66650391 -1 + 3 24 24 576 + 1 15 0 18 23 + -2 17 0 18 11 + -2 15 12 16 23 + +0.2476672828 + 6.558426857 -1 + 2 24 24 576 + 1 2 16 10 17 + -1 2 18 10 19 + +0.1670827419 + 7.032811642 1 + 2 24 24 576 + 1 19 12 22 17 + -1 19 18 22 23 + +0.1510184109 + 3.719041109 -1 + 3 24 24 576 + 1 14 18 23 21 + -2 19 18 23 19 + -2 14 20 18 21 + +0.1800011247 + 3.46500802 1 + 3 24 24 576 + 1 12 18 23 21 + -2 18 18 23 19 + -2 12 20 17 21 + +0.1559843421 + 28.35053635 -1 + 3 24 24 576 + 1 14 15 21 22 + -2 18 15 21 18 + -2 14 19 17 22 + +0.2078791261 + 15.37343311 1 + 3 24 24 576 + 1 16 5 23 16 + -2 20 5 23 10 + -2 16 11 19 16 + +0.1599523276 + -0.5435521603 -1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.1874935031 + 19.26315498 -1 + 2 24 24 576 + 1 6 6 23 10 + -2 12 6 17 10 + +0.1465421766 + -37.79337692 -1 + 2 24 24 576 + 1 0 1 7 18 + -2 0 7 7 12 + +0.1371869594 + 0.616876781 1 + 2 24 24 576 + 1 1 3 11 4 + -1 1 5 11 6 + +0.1424067914 + 0.9897468686 -1 + 2 24 24 576 + 1 12 1 20 13 + -2 15 1 17 13 + +0.1355447173 + -0.7181269526 -1 + 3 24 24 576 + 1 14 13 17 16 + -2 16 13 17 14 + -2 14 15 15 16 + +0.1673003733 + -4.108428478 1 + 2 24 24 576 + 1 13 11 15 14 + -1 16 11 18 14 + +0.1392656863 + 4.012892723 -1 + 2 24 24 576 + 1 1 4 12 15 + -2 5 4 8 15 + +0.1547212601 + 9.158600807 1 + 3 24 24 576 + 1 1 12 6 21 + -2 4 12 6 16 + -2 1 17 3 21 + +0.1612824202 + -16.2800827 1 + 3 24 24 576 + 1 16 0 23 13 + -2 20 0 23 6 + -2 16 7 19 13 + +0.1385806799 + -0.269105643 -1 + 3 24 24 576 + 1 10 18 15 21 + -2 13 18 15 19 + -2 10 20 12 21 + +0.1443814784 + -0.8999721408 1 + 3 24 24 576 + 1 15 0 18 3 + -2 17 0 18 1 + -2 15 2 16 3 + +0.1833250821 + -11.09303761 -1 + 2 24 24 576 + 1 7 0 17 2 + -1 7 3 17 5 + +0.1634156108 + 28.71729279 1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.2667803764 + -1.14928031 1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.3223659098 + -10.83764267 -1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.4427782893 + 8.270936966 -1 + 2 24 24 576 + 1 12 7 16 12 + -2 12 9 16 10 + +0.1667657197 + 4.023299217 -1 + 3 24 24 576 + 1 14 6 23 13 + -2 19 6 23 9 + -2 14 10 18 13 + +0.1780076772 + -2.966632605 -1 + 2 24 24 576 + 1 5 19 7 22 + -2 6 19 6 22 + +0.1485811323 + -0.2045391202 1 + 3 24 24 576 + 1 14 7 17 18 + -2 16 7 17 12 + -2 14 13 15 18 + +0.1407419741 + 0.7119620442 1 + 3 24 24 576 + 1 14 3 17 6 + -2 16 3 17 4 + -2 14 5 15 6 + +0.1383819431 + -18.40852165 1 + 3 24 24 576 + 1 14 5 21 12 + -2 18 5 21 8 + -2 14 9 17 12 + +0.1755072176 + 0.8582331538 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.2338947207 + 20.27882385 1 + 3 24 24 576 + 1 14 4 21 19 + -2 18 4 21 11 + -2 14 12 17 19 + +0.1607035249 + 4.749059677 -1 + 3 24 24 576 + 1 11 7 20 14 + -2 16 7 20 10 + -2 11 11 15 14 + +0.1449702233 + 3.391896009 1 + 3 24 24 576 + 1 0 4 9 11 + -2 5 4 9 7 + -2 0 8 4 11 + +0.1293072402 + 20.80223274 -1 + 2 24 24 576 + 1 4 3 14 11 + -2 4 6 14 8 + +0.1517344117 + 3.501007795 1 + 2 24 24 576 + 1 9 5 16 10 + -2 9 7 16 8 + +0.1497597098 + 6.421886921 1 + 3 24 24 576 + 1 6 1 13 12 + -2 10 1 13 6 + -2 6 7 9 12 + +0.1566038728 + -11.24965191 1 + 3 24 24 576 + 1 15 5 18 14 + -2 17 5 18 9 + -2 15 10 16 14 + +0.1858442575 + 169.5211029 1 + 2 24 24 576 + 1 8 0 15 20 + -1 16 0 23 20 + +0.1395188123 + -0.9817878008 1 + 3 24 24 576 + 1 14 2 23 5 + -2 19 2 23 3 + -2 14 4 18 5 + +0.1489752382 + 0.7020563483 -1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.1591814905 + -8.774199486 -1 + 2 24 24 576 + 1 8 6 13 10 + -2 10 6 11 10 + +0.1600526273 + 4.584193707 1 + 3 24 24 576 + 1 14 2 19 5 + -2 17 2 19 3 + -2 14 4 16 5 + +0.2434864938 + -2.778169155 1 + 3 24 24 576 + 1 14 1 21 4 + -2 18 1 21 2 + -2 14 3 17 4 + +0.1857851148 + 2.018532276 -1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.1450582892 + 2.249930382 1 + 3 24 24 576 + 1 14 1 19 4 + -2 17 1 19 2 + -2 14 3 16 4 + +0.1870396435 + 24.09333229 -1 + 3 24 24 576 + 1 4 0 21 7 + -2 13 0 21 3 + -2 4 4 12 7 + +0.1481728703 + -2.748425484 -1 + 2 24 24 576 + 1 14 1 18 9 + -2 14 4 18 6 + +0.1534849852 + 15.57370663 -1 + 2 24 24 576 + 1 9 3 12 16 + -1 13 3 16 16 + +0.1342832446 + -17.05016136 -1 + 2 24 24 576 + 1 6 5 16 13 + -2 6 8 16 10 + +0.1669110954 + 3.190810442 1 + 3 24 24 576 + 1 14 1 17 4 + -2 16 1 17 2 + -2 14 3 15 4 + +0.273447454 + -0.6861404181 1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2949510217 + -9.515298843 1 + 3 24 24 576 + 1 13 16 22 21 + -2 18 16 22 18 + -2 13 19 17 21 + +0.2720232606 + -3.548841715 -1 + 3 24 24 576 + 1 8 17 23 20 + -2 16 17 23 18 + -2 8 19 15 20 + +0.2094546109 + 1.963575602 1 + 3 24 24 576 + 1 13 16 16 19 + -2 15 16 16 17 + -2 13 18 14 19 + + +200 15.28606319 1 +0.3355122805 + 17.15937614 1 + 2 24 24 576 + 1 11 1 16 17 + -2 13 1 14 17 + +0.3106789589 + 3.296792269 1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.2889955938 + 4.069031715 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.2636430264 + 65.55710602 1 + 2 24 24 576 + 1 5 0 19 11 + -2 5 4 19 7 + +0.2538420856 + -3.724374771 -1 + 3 24 24 576 + 1 1 3 16 14 + -2 9 3 16 8 + -2 1 9 8 14 + +0.2251913399 + -7.352947235 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.2148563415 + -0.7380858064 -1 + 3 24 24 576 + 1 13 18 16 21 + -2 15 18 16 19 + -2 13 20 14 21 + +0.2021605074 + 0.9198947549 1 + 2 24 24 576 + 1 14 9 18 12 + -1 14 13 18 16 + +0.2020161301 + 62.53226471 1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.2388505489 + 28.36917305 -1 + 2 24 24 576 + 1 7 5 17 12 + -1 7 13 17 20 + +0.1904575825 + 6.574051857 1 + 2 24 24 576 + 1 19 1 20 9 + -1 21 1 22 9 + +0.195195809 + 1.536027908 1 + 2 24 24 576 + 1 4 10 7 12 + -1 4 13 7 15 + +0.1860753447 + 0.9992128015 1 + 3 24 24 576 + 1 8 3 11 6 + -2 10 3 11 4 + -2 8 5 9 6 + +0.1752409339 + -2.031208754 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.1836711019 + 0.1666443646 1 + 3 24 24 576 + 1 12 14 19 17 + -2 16 14 19 15 + -2 12 16 15 17 + +0.1705734134 + -0.8668125868 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.1912282258 + 3.197975636 1 + 2 24 24 576 + 1 9 4 21 5 + -1 9 6 21 7 + +0.1747792512 + 6.760798931 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1836604327 + -3.363899469 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1823200732 + -5.86943531 -1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.1691090018 + -3.67723608 -1 + 3 24 24 576 + 1 19 6 22 15 + -2 21 6 22 10 + -2 19 11 20 15 + +0.2108017504 + 1.094607353 -1 + 3 24 24 576 + 1 19 4 22 7 + -2 21 4 22 5 + -2 19 6 20 7 + +0.171859026 + 1.180347443 -1 + 3 24 24 576 + 1 19 2 22 23 + -2 21 2 22 12 + -2 19 13 20 23 + +0.252995342 + 3.292351246 1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.1859890521 + -13.67186069 -1 + 3 24 24 576 + 1 19 1 22 22 + -2 21 1 22 11 + -2 19 12 20 22 + +0.2797169089 + 1.599326253 -1 + 3 24 24 576 + 1 19 0 22 3 + -2 21 0 22 1 + -2 19 2 20 3 + +0.1709305197 + 7.03668642 -1 + 3 24 24 576 + 1 18 17 23 20 + -2 21 17 23 18 + -2 18 19 20 20 + +0.2344563156 + 7.671606064 1 + 2 24 24 576 + 1 0 15 2 21 + -2 1 15 1 21 + +0.1866266578 + -6.589107513 -1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.283703804 + 20.92986107 -1 + 2 24 24 576 + 1 5 5 7 18 + -1 8 5 10 18 + +0.1804982722 + 19.54522324 1 + 2 24 24 576 + 1 6 5 14 18 + -2 9 5 11 18 + +0.1809968054 + 5.669419765 -1 + 2 24 24 576 + 1 8 13 13 17 + -1 8 18 13 22 + +0.176194191 + 0 -1 + 2 24 24 576 + 1 20 18 21 21 + -1 22 18 23 21 + +0.1875016987 + 8.485106468 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.1637518704 + 1.428354859 -1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.1854439676 + -102.4290619 -1 + 2 24 24 576 + 1 2 8 11 21 + -1 12 8 21 21 + +0.1756461114 + 0.1739587635 1 + 2 24 24 576 + 1 14 0 15 3 + -1 16 0 17 3 + +0.1551459134 + -0.7731175423 -1 + 2 24 24 576 + 1 14 10 15 13 + -1 16 10 17 13 + +0.1507011801 + 5.283845425 1 + 2 24 24 576 + 1 10 11 14 16 + -2 10 13 14 14 + +0.1612522304 + 1.109279037 1 + 2 24 24 576 + 1 5 8 6 17 + -1 7 8 8 17 + +0.1445166618 + -11.89396 -1 + 2 24 24 576 + 1 16 18 19 23 + -1 20 18 23 23 + +0.1757476479 + -1.841132641 1 + 2 24 24 576 + 1 18 14 22 15 + -1 18 16 22 17 + +0.1507388055 + 142.9293976 1 + 2 24 24 576 + 1 3 7 11 22 + -1 12 7 20 22 + +0.1794537306 + -25.87994194 1 + 3 24 24 576 + 1 3 4 18 15 + -2 11 4 18 9 + -2 3 10 10 15 + +0.1514077187 + 8.586241722 1 + 2 24 24 576 + 1 7 14 17 15 + -1 7 16 17 17 + +0.14791058 + -5.218380451 1 + 3 24 24 576 + 1 4 14 19 17 + -2 12 14 19 15 + -2 4 16 11 17 + +0.1718616486 + 2.159475803 1 + 3 24 24 576 + 1 20 7 23 18 + -2 22 7 23 12 + -2 20 13 21 18 + +0.1610872447 + 8.688001633 1 + 2 24 24 576 + 1 21 4 23 21 + -2 22 4 22 21 + +0.1572364122 + -6.351679802 1 + 3 24 24 576 + 1 4 12 21 15 + -2 13 12 21 13 + -2 4 14 12 15 + +0.1737938523 + 4.529707909 1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1580854654 + -8.841004372 1 + 2 24 24 576 + 1 10 17 20 18 + -1 10 19 20 20 + +0.164627403 + 9.158600807 1 + 3 24 24 576 + 1 1 12 6 21 + -2 4 12 6 16 + -2 1 17 3 21 + +0.1621367335 + 1.27398622 -1 + 3 24 24 576 + 1 4 13 7 16 + -2 6 13 7 14 + -2 4 15 5 16 + +0.1558655053 + -8.043999672 -1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.1523455381 + 3.209442139 1 + 3 24 24 576 + 1 0 7 7 10 + -2 4 7 7 8 + -2 0 9 3 10 + +0.1445816159 + -3.635054827 1 + 2 24 24 576 + 1 5 13 8 16 + -1 9 13 12 16 + +0.1359331012 + -4.930993557 -1 + 3 24 24 576 + 1 19 5 22 10 + -2 21 5 22 7 + -2 19 8 20 10 + +0.154904753 + -4.358065128 1 + 3 24 24 576 + 1 5 10 18 13 + -2 12 10 18 11 + -2 5 12 11 13 + +0.1496905386 + 2.786334038 1 + 3 24 24 576 + 1 6 2 13 13 + -2 10 2 13 7 + -2 6 8 9 13 + +0.1638990343 + -0.5937219262 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1405594796 + 0.7411476374 -1 + 2 24 24 576 + 1 1 2 9 5 + -2 4 2 6 5 + +0.1597514004 + 17.52238846 1 + 2 24 24 576 + 1 0 1 23 9 + -2 8 1 15 9 + +0.1743991226 + -33.38963318 1 + 2 24 24 576 + 1 11 4 20 9 + -1 11 10 20 15 + +0.1392538399 + 0 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1396908313 + 6.472400665 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.1548235416 + -4.39087677 1 + 2 24 24 576 + 1 8 17 13 22 + -2 10 17 11 22 + +0.1614831537 + 19.53725243 1 + 2 24 24 576 + 1 0 6 2 18 + -1 3 6 5 18 + +0.1565432996 + -3.1553514 -1 + 3 24 24 576 + 1 17 8 22 17 + -2 20 8 22 12 + -2 17 13 19 17 + +0.2118097395 + -2.532072067 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.2816413343 + -1.451853275 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1720808148 + 0.8953145742 1 + 2 24 24 576 + 1 17 0 18 3 + -1 19 0 20 3 + +0.1550793797 + 0.2771606147 1 + 3 24 24 576 + 1 17 9 22 12 + -2 20 9 22 10 + -2 17 11 19 12 + +0.1396451145 + -0.3252530098 -1 + 3 24 24 576 + 1 11 4 18 7 + -2 15 4 18 5 + -2 11 6 14 7 + +0.1375458986 + 0 -1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1373134553 + 4.374622822 1 + 2 24 24 576 + 1 10 4 11 9 + -1 12 4 13 9 + +0.1658572853 + 6.026061535 -1 + 3 24 24 576 + 1 7 9 16 18 + -2 12 9 16 13 + -2 7 14 11 18 + +0.138350457 + 4.13209343 1 + 3 24 24 576 + 1 3 17 8 22 + -2 6 17 8 19 + -2 3 20 5 22 + +0.1502671838 + -6.370105267 1 + 2 24 24 576 + 1 14 3 15 16 + -1 16 3 17 16 + +0.1664042473 + -11.80378151 1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.2744450867 + -9.778816223 -1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.1646881253 + 1.881371737 -1 + 2 24 24 576 + 1 12 12 14 15 + -1 15 12 17 15 + +0.1543049812 + -5.359993935 -1 + 2 24 24 576 + 1 13 1 21 9 + -2 13 4 21 6 + +0.1511572748 + -5.094009876 1 + 3 24 24 576 + 1 9 14 16 21 + -2 13 14 16 17 + -2 9 18 12 21 + +0.1311745793 + 2.286042929 1 + 2 24 24 576 + 1 8 12 12 14 + -1 8 15 12 17 + +0.1548344642 + -2.003463268 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1459168494 + 3.282172441 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1370060742 + 24.90234184 1 + 2 24 24 576 + 1 11 13 23 21 + -2 11 16 23 18 + +0.1513232589 + 6.775392532 -1 + 3 24 24 576 + 1 2 0 21 3 + -2 12 0 21 1 + -2 2 2 11 3 + +0.1461690962 + 33.78768539 1 + 2 24 24 576 + 1 3 1 11 9 + -2 3 4 11 6 + +0.1478693932 + 0 -1 + 3 24 24 576 + 1 17 2 20 9 + -2 19 2 20 5 + -2 17 6 18 9 + +0.1907938123 + -7.897591114 1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.148594901 + 25.41606522 1 + 2 24 24 576 + 1 14 2 18 13 + -2 14 6 18 9 + +0.1452440768 + -2.758304834 1 + 2 24 24 576 + 1 18 9 23 10 + -1 18 11 23 12 + +0.1536367089 + 1.190160275 1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1296721101 + 3.956202269 -1 + 2 24 24 576 + 1 14 13 18 14 + -1 14 15 18 16 + +0.1633200943 + 12.14176369 1 + 3 24 24 576 + 1 0 0 3 21 + -2 2 0 3 10 + -2 0 11 1 21 + +0.1458705813 + -0.4658087194 1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.1521294862 + -5.021498203 1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.1378951669 + -5.526908398 1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.1656389087 + -3.503221273 -1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.1473550498 + -2.673784733 1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.1598630846 + -2.84516573 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.139743194 + -11.46140575 1 + 3 24 24 576 + 1 16 2 23 13 + -2 20 2 23 7 + -2 16 8 19 13 + +0.1658510119 + -8.838914871 -1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.1561706513 + -0.3586784303 1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.1701702029 + 7.495880127 1 + 3 24 24 576 + 1 13 2 16 13 + -2 15 2 16 7 + -2 13 8 14 13 + +0.147660926 + -2.634131193 -1 + 2 24 24 576 + 1 10 6 17 7 + -1 10 8 17 9 + +0.1466483921 + -11.55922794 1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.2195592374 + -28.49107552 -1 + 2 24 24 576 + 1 7 0 16 3 + -1 7 4 16 7 + +0.166983217 + -5.936001778 1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.1541217417 + -12.12985229 1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.2112895697 + 16.98741531 1 + 2 24 24 576 + 1 9 8 14 14 + -2 11 8 12 14 + +0.1608505994 + -0.1866422743 1 + 3 24 24 576 + 1 3 8 6 11 + -2 5 8 6 9 + -2 3 10 4 11 + +0.1404512972 + 10.81335735 1 + 3 24 24 576 + 1 15 17 22 22 + -2 19 17 22 19 + -2 15 20 18 22 + +0.1691213548 + 15.05877209 -1 + 2 24 24 576 + 1 3 18 20 19 + -1 3 20 20 21 + +0.1558161825 + -1.379894853 1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.18176727 + -8.009283066 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.134869203 + -0.5055390596 1 + 2 24 24 576 + 1 1 15 5 16 + -1 1 17 5 18 + +0.1597613245 + -0.7526699305 1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.1739253551 + -3.323518276 -1 + 3 24 24 576 + 1 13 13 22 20 + -2 18 13 22 16 + -2 13 17 17 20 + +0.1848436743 + -5.6450243 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.2339371145 + -10.7442503 -1 + 2 24 24 576 + 1 10 5 15 13 + -2 12 5 13 13 + +0.1396268755 + -12.80161762 1 + 2 24 24 576 + 1 7 17 19 18 + -1 7 19 19 20 + +0.1643902063 + -8.404813766 1 + 3 24 24 576 + 1 15 9 22 14 + -2 19 9 22 11 + -2 15 12 18 14 + +0.2819780707 + -32.12842941 -1 + 2 24 24 576 + 1 1 7 5 14 + -1 1 15 5 22 + +0.1491080821 + -1.764763117 1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1682385504 + -13.83766174 -1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.1300869435 + 3.211391687 1 + 3 24 24 576 + 1 15 8 18 19 + -2 17 8 18 13 + -2 15 14 16 19 + +0.1488956958 + -6.227129459 1 + 2 24 24 576 + 1 4 7 5 11 + -1 6 7 7 11 + +0.1487336308 + 3.408223629 1 + 2 24 24 576 + 1 8 14 11 16 + -2 8 15 11 15 + +0.1454224735 + 3.363397598 -1 + 3 24 24 576 + 1 11 14 14 23 + -2 13 14 14 18 + -2 11 19 12 23 + +0.1551958919 + -3.612815619 1 + 3 24 24 576 + 1 15 6 20 11 + -2 18 6 20 8 + -2 15 9 17 11 + +0.1644306779 + -6.096626282 1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.2345433533 + -16.71362686 -1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.1437589526 + 2.515333891 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.1548434496 + -0.8647608161 -1 + 2 24 24 576 + 1 16 6 17 9 + -1 18 6 19 9 + +0.1312941909 + 4.531503201 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1473954618 + -2.358365774 1 + 3 24 24 576 + 1 15 4 20 9 + -2 18 4 20 6 + -2 15 7 17 9 + +0.217738986 + -7.910394669 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1404471099 + -3.329639435 1 + 2 24 24 576 + 1 18 4 22 5 + -1 18 6 22 7 + +0.1393434554 + -17.035429 1 + 3 24 24 576 + 1 15 2 20 19 + -2 18 2 20 10 + -2 15 11 17 19 + +0.2109630853 + -4.511926651 -1 + 2 24 24 576 + 1 16 20 18 23 + -2 17 20 17 23 + +0.1538840979 + -2.788763046 1 + 2 24 24 576 + 1 17 9 22 12 + -2 19 9 20 12 + +0.1499087811 + 18.06435013 1 + 3 24 24 576 + 1 15 1 20 18 + -2 18 1 20 9 + -2 15 10 17 18 + +0.1644238532 + -6.895244122 1 + 2 24 24 576 + 1 18 6 22 7 + -1 18 8 22 9 + +0.1425824016 + -1.833489895 -1 + 2 24 24 576 + 1 15 1 17 7 + -1 18 1 20 7 + +0.1396209896 + -5.307254314 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.1677679718 + -18.06407738 1 + 3 24 24 576 + 1 15 0 20 21 + -2 18 0 20 10 + -2 15 11 17 21 + +0.251162529 + -44.97510147 -1 + 3 24 24 576 + 1 12 0 23 21 + -2 18 0 23 10 + -2 12 11 17 21 + +0.1399195045 + -3.339487791 1 + 2 24 24 576 + 1 10 6 13 9 + -1 10 10 13 13 + +0.1382648349 + 3.186302662 1 + 3 24 24 576 + 1 14 17 21 20 + -2 18 17 21 18 + -2 14 19 17 20 + +0.1712008417 + 2.819510937 -1 + 2 24 24 576 + 1 13 17 14 20 + -1 15 17 16 20 + +0.1359491497 + 3.712739944 1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.147796765 + -3.347993374 -1 + 2 24 24 576 + 1 6 5 10 6 + -1 6 7 10 8 + +0.1546098739 + 14.5539093 -1 + 2 24 24 576 + 1 2 8 23 13 + -2 2 10 23 11 + +0.1589022577 + 15.54262733 1 + 2 24 24 576 + 1 6 15 15 20 + -2 6 17 15 18 + +0.142162025 + -6.954900265 1 + 3 24 24 576 + 1 5 1 8 8 + -2 7 1 8 4 + -2 5 5 6 8 + +0.1573402137 + 20.45617104 1 + 2 24 24 576 + 1 0 20 6 23 + -1 7 20 13 23 + +0.1468681097 + -9.380273819 1 + 2 24 24 576 + 1 2 18 15 19 + -1 2 20 15 21 + +0.1452785432 + 10.84045315 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1359449923 + 2.562103033 -1 + 3 24 24 576 + 1 1 13 8 16 + -2 5 13 8 14 + -2 1 15 4 16 + +0.140326336 + -52.52224731 -1 + 2 24 24 576 + 1 19 0 23 23 + -2 19 8 23 15 + +0.1335494518 + -2.861473083 -1 + 2 24 24 576 + 1 9 8 10 17 + -1 11 8 12 17 + +0.1478075534 + -14.49673843 1 + 2 24 24 576 + 1 6 5 10 8 + -1 11 5 15 8 + +0.1341252923 + -1.465021849 -1 + 2 24 24 576 + 1 10 19 13 20 + -1 10 21 13 22 + +0.139222458 + -0.3265054524 -1 + 3 24 24 576 + 1 9 7 12 10 + -2 11 7 12 8 + -2 9 9 10 10 + +0.1253821552 + -12.85811615 -1 + 2 24 24 576 + 1 2 12 10 23 + -2 5 12 7 23 + +0.1224872693 + -2.259483099 -1 + 2 24 24 576 + 1 1 3 4 7 + -1 1 8 4 12 + +0.1364560872 + 4.257451534 1 + 3 24 24 576 + 1 4 3 13 12 + -2 9 3 13 7 + -2 4 8 8 12 + +0.1461570263 + -4.14696312 1 + 3 24 24 576 + 1 6 0 11 5 + -2 9 0 11 2 + -2 6 3 8 5 + +0.1475101858 + -5.232513428 -1 + 3 24 24 576 + 1 11 6 16 19 + -2 14 6 16 12 + -2 11 13 13 19 + +0.1388395131 + 23.60942841 -1 + 2 24 24 576 + 1 1 7 18 13 + -2 7 7 12 13 + +0.1309606582 + 11.41201973 1 + 2 24 24 576 + 1 0 4 5 9 + -2 2 4 3 9 + +0.1521435082 + -5.498233318 1 + 3 24 24 576 + 1 2 9 11 12 + -2 7 9 11 10 + -2 2 11 6 12 + +0.1330245137 + -2.248161554 -1 + 3 24 24 576 + 1 12 16 17 19 + -2 15 16 17 17 + -2 12 18 14 19 + +0.1149433851 + 0.5691417456 1 + 2 24 24 576 + 1 13 2 14 5 + -1 15 2 16 5 + +0.1345220655 + 7.877944946 1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.1295594722 + 4.523602486 -1 + 2 24 24 576 + 1 14 1 15 20 + -1 16 1 17 20 + +0.1192735732 + 7.831654072 1 + 2 24 24 576 + 1 4 20 23 21 + -1 4 22 23 23 + +0.1180182174 + -6.385011196 1 + 2 24 24 576 + 1 13 11 15 14 + -1 16 11 18 14 + +0.1453540921 + -2.230843306 -1 + 3 24 24 576 + 1 17 18 20 21 + -2 19 18 20 19 + -2 17 20 18 21 + +0.1395704746 + 8.026130676 -1 + 2 24 24 576 + 1 4 19 10 20 + -1 4 21 10 22 + +0.1403802335 + 18.60502625 -1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.2350668013 + 5.818881035 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1426396072 + 19.91483879 -1 + 2 24 24 576 + 1 5 9 22 12 + -2 11 9 16 12 + +0.1377872229 + 4.274367332 -1 + 3 24 24 576 + 1 14 2 23 5 + -2 19 2 23 3 + -2 14 4 18 5 + +0.1624388993 + -21.04041672 -1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.14259547 + 2.33143878 1 + 2 24 24 576 + 1 13 2 20 4 + -1 13 5 20 7 + +0.1301896572 + 1.541612983 1 + 3 24 24 576 + 1 8 4 23 13 + -2 16 4 23 8 + -2 8 9 15 13 + +0.1294565499 + -67.68748474 -1 + 2 24 24 576 + 1 1 0 8 23 + -2 1 8 8 15 + +0.1432978958 + 5.50350523 -1 + 3 24 24 576 + 1 8 7 23 10 + -2 16 7 23 8 + -2 8 9 15 10 + +0.1372773498 + 0.4966069758 -1 + 3 24 24 576 + 1 14 2 17 5 + -2 16 2 17 3 + -2 14 4 15 5 + +0.1592772454 + 12.2378149 -1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.2015501708 + 11.12044907 -1 + 3 24 24 576 + 1 14 0 19 9 + -2 17 0 19 4 + -2 14 5 16 9 + +0.2964545786 + 59.19920731 1 + 2 24 24 576 + 1 9 0 15 4 + -1 16 0 22 4 + +0.1894525886 + -1.532425761 -1 + 3 24 24 576 + 1 13 5 20 20 + -2 17 5 20 12 + -2 13 13 16 20 + +0.1636570841 + 4.907917976 1 + 3 24 24 576 + 1 8 2 23 5 + -2 16 2 23 3 + -2 8 4 15 5 + +0.1548216641 + -0.2861022055 -1 + 3 24 24 576 + 1 10 0 17 7 + -2 14 0 17 3 + -2 10 4 13 7 + +0.1332056969 + 7.050008297 1 + 3 24 24 576 + 1 14 4 19 17 + -2 17 4 19 10 + -2 14 11 16 17 + +0.1511019468 + -6.201094627 1 + 3 24 24 576 + 1 10 0 19 5 + -2 15 0 19 2 + -2 10 3 14 5 + + +200 14.79426956 1 +0.3227734268 + -46.14082336 -1 + 2 24 24 576 + 1 0 2 23 7 + -2 8 2 15 7 + +0.2973940074 + 17.44362259 1 + 2 24 24 576 + 1 3 3 18 8 + -2 3 5 18 6 + +0.2848172784 + -2.439287424 -1 + 2 24 24 576 + 1 8 3 9 9 + -1 10 3 11 9 + +0.2654006481 + 4.072647095 1 + 3 24 24 576 + 1 5 16 10 21 + -2 8 16 10 18 + -2 5 19 7 21 + +0.2371637374 + 10.14372444 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.234654367 + 0.5530647635 1 + 2 24 24 576 + 1 5 9 7 12 + -1 8 9 10 12 + +0.2157564461 + 7.801354408 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.225632742 + -0.187967971 -1 + 3 24 24 576 + 1 17 8 20 11 + -2 19 8 20 9 + -2 17 10 18 11 + +0.2026206851 + -9.043379784 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.1981833428 + 0 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1954992115 + -0.4106797874 -1 + 2 24 24 576 + 1 14 15 15 18 + -1 16 15 17 18 + +0.1818612814 + 5.182482719 1 + 2 24 24 576 + 1 10 11 14 16 + -2 10 13 14 14 + +0.1685865819 + -0.4217353165 -1 + 3 24 24 576 + 1 4 14 9 17 + -2 7 14 9 15 + -2 4 16 6 17 + +0.1653230488 + 2.338675261 1 + 3 24 24 576 + 1 12 6 17 9 + -2 15 6 17 7 + -2 12 8 14 9 + +0.1773763895 + 0.1946099997 1 + 2 24 24 576 + 1 13 11 16 13 + -1 13 14 16 16 + +0.2020807564 + 4.491004467 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.2096203417 + -10.59548283 1 + 3 24 24 576 + 1 4 9 19 16 + -2 12 9 19 12 + -2 4 13 11 16 + +0.193812415 + -69.87913513 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.1836600751 + 8.579964638 -1 + 2 24 24 576 + 1 2 7 22 12 + -2 2 9 22 10 + +0.1784382164 + 5.60311079 1 + 2 24 24 576 + 1 21 15 23 20 + -2 22 15 22 20 + +0.2011013329 + -2.359315872 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1598518193 + 36.2304306 1 + 2 24 24 576 + 1 5 20 12 23 + -1 13 20 20 23 + +0.1864743084 + 0.6976795793 1 + 2 24 24 576 + 1 16 10 21 12 + -1 16 13 21 15 + +0.1474741995 + 0 -1 + 3 24 24 576 + 1 15 5 18 14 + -2 17 5 18 9 + -2 15 10 16 14 + +0.1434759349 + -3.14480257 -1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1703214347 + -5.848835468 1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.177916944 + -128.8969421 -1 + 2 24 24 576 + 1 0 0 23 9 + -2 8 0 15 9 + +0.1852036268 + 3.382194996 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1556068957 + -22.51330185 -1 + 2 24 24 576 + 1 2 17 9 20 + -1 10 17 17 20 + +0.1700878739 + -12.03733635 1 + 2 24 24 576 + 1 7 0 8 23 + -1 9 0 10 23 + +0.1570778787 + 5.729228497 1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.181894809 + -1.792640448 1 + 3 24 24 576 + 1 7 0 14 7 + -2 11 0 14 3 + -2 7 4 10 7 + +0.1313816756 + -0.8596473336 -1 + 2 24 24 576 + 1 12 16 15 17 + -1 12 18 15 19 + +0.133778289 + -0.946741879 -1 + 3 24 24 576 + 1 10 13 17 16 + -2 14 13 17 14 + -2 10 15 13 16 + +0.1400972158 + -2.145800352 -1 + 2 24 24 576 + 1 4 1 8 9 + -2 4 4 8 6 + +0.1488508582 + -2.360449076 -1 + 2 24 24 576 + 1 1 2 4 6 + -1 1 7 4 11 + +0.1399884075 + -3.279800892 -1 + 3 24 24 576 + 1 3 17 8 22 + -2 6 17 8 19 + -2 3 20 5 22 + +0.151421383 + -14.83245468 1 + 2 24 24 576 + 1 2 5 5 8 + -1 2 9 5 12 + +0.1798410118 + 24.2770195 1 + 2 24 24 576 + 1 2 7 10 18 + -2 5 7 7 18 + +0.1657632887 + 1.094607353 -1 + 3 24 24 576 + 1 19 4 22 7 + -2 21 4 22 5 + -2 19 6 20 7 + +0.1607843637 + 2.765206575 1 + 3 24 24 576 + 1 18 3 23 8 + -2 21 3 23 5 + -2 18 6 20 8 + +0.1623525172 + -10.96753693 -1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.2159376591 + 11.87394619 -1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.1614157706 + 1.877055049 1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.1557777375 + 1.244303346 1 + 2 24 24 576 + 1 8 4 14 12 + -1 8 13 14 21 + +0.1515291631 + -17.02122116 -1 + 2 24 24 576 + 1 0 12 3 16 + -1 4 12 7 16 + +0.1445536464 + 19.95085144 -1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1736198366 + -5.124959946 -1 + 2 24 24 576 + 1 10 7 15 13 + -2 12 7 13 13 + +0.1650281101 + -3.284029245 -1 + 2 24 24 576 + 1 6 6 15 7 + -1 6 8 15 9 + +0.1489493698 + -15.22804928 1 + 2 24 24 576 + 1 6 0 15 8 + -1 6 9 15 17 + +0.1699779481 + -6.308393478 -1 + 2 24 24 576 + 1 15 0 23 4 + -2 18 0 20 4 + +0.1355581582 + 24.1493454 1 + 2 24 24 576 + 1 17 10 23 16 + -1 17 17 23 23 + +0.1404526085 + 2.821827888 -1 + 2 24 24 576 + 1 6 7 7 10 + -1 8 7 9 10 + +0.1803045869 + 20.51607704 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.1676401049 + 1.668889523 -1 + 2 24 24 576 + 1 9 8 13 9 + -1 9 10 13 11 + +0.1583278775 + -1.131290674 1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.219026342 + -8.583162308 -1 + 2 24 24 576 + 1 20 2 21 9 + -1 22 2 23 9 + +0.1699826121 + 5.532832146 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.1526155323 + -5.107957363 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1676427126 + -9.56836319 1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.1520823687 + -4.145153522 -1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.1363029331 + -1.519143939 1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1647042185 + -94.8855896 -1 + 2 24 24 576 + 1 4 0 12 21 + -1 13 0 21 21 + +0.1492710263 + 2.045111418 1 + 2 24 24 576 + 1 11 0 12 7 + -1 13 0 14 7 + +0.1271343529 + 0.9588507414 -1 + 3 24 24 576 + 1 2 4 17 15 + -2 10 4 17 9 + -2 2 10 9 15 + +0.1417255402 + -0.6670221686 -1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.1490929872 + -16.2779541 1 + 3 24 24 576 + 1 3 5 22 14 + -2 13 5 22 9 + -2 3 10 12 14 + +0.1619246453 + 4.967559814 -1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.2414646596 + -21.34016991 -1 + 3 24 24 576 + 1 2 2 5 21 + -2 4 2 5 11 + -2 2 12 3 21 + +0.1517708302 + -9.067251205 1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.1606603265 + 19.43140984 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.2692221403 + -7.021565914 -1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.1352764964 + 10.34240341 -1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.1480019391 + 45.53377914 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1556809247 + -15.92392635 1 + 2 24 24 576 + 1 0 6 17 9 + -2 6 6 11 9 + +0.1378701329 + 2.685768127 1 + 3 24 24 576 + 1 1 6 6 9 + -2 4 6 6 7 + -2 1 8 3 9 + +0.128391847 + 2.267855644 -1 + 3 24 24 576 + 1 6 0 13 3 + -2 10 0 13 1 + -2 6 2 9 3 + +0.144377768 + 4.735285282 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.1568052173 + 7.660670757 -1 + 2 24 24 576 + 1 3 18 20 19 + -1 3 20 20 21 + +0.1374739408 + 9.143113136 1 + 2 24 24 576 + 1 20 14 21 19 + -1 22 14 23 19 + +0.1615494937 + -1.451853275 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1579587609 + -19.13898849 -1 + 2 24 24 576 + 1 16 11 18 19 + -1 19 11 21 19 + +0.1626548767 + 10.07783985 -1 + 3 24 24 576 + 1 0 8 13 15 + -2 7 8 13 11 + -2 0 12 6 15 + +0.1396092623 + 133.8744812 1 + 2 24 24 576 + 1 2 8 11 21 + -1 12 8 21 21 + +0.1601055115 + -0.645340085 -1 + 2 24 24 576 + 1 6 1 7 4 + -1 8 1 9 4 + +0.1285892874 + 0.3443782032 1 + 2 24 24 576 + 1 15 18 19 19 + -1 15 20 19 21 + +0.1237759069 + -4.519668579 -1 + 3 24 24 576 + 1 11 2 16 11 + -2 14 2 16 6 + -2 11 7 13 11 + +0.1529819965 + -7.150063992 1 + 3 24 24 576 + 1 5 2 8 9 + -2 7 2 8 5 + -2 5 6 6 9 + +0.1558308154 + 21.41039848 1 + 2 24 24 576 + 1 3 0 20 1 + -1 3 2 20 3 + +0.1583669931 + -5.175605774 1 + 2 24 24 576 + 1 7 0 8 3 + -1 9 0 10 3 + +0.1315652132 + -5.887082577 -1 + 2 24 24 576 + 1 16 1 20 9 + -2 16 4 20 6 + +0.1428778917 + -0.1683774143 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.1264116615 + -4.583686829 1 + 2 24 24 576 + 1 1 4 22 6 + -1 1 7 22 9 + +0.1417562366 + -37.87486267 -1 + 2 24 24 576 + 1 0 1 7 18 + -2 0 7 7 12 + +0.1444653571 + -3.642086029 1 + 2 24 24 576 + 1 2 18 10 19 + -1 2 20 10 21 + +0.1365595907 + 20.50277901 1 + 2 24 24 576 + 1 5 0 16 2 + -1 5 3 16 5 + +0.1253201365 + 6.744876385 -1 + 3 24 24 576 + 1 2 0 21 3 + -2 12 0 21 1 + -2 2 2 11 3 + +0.1442804635 + -2.528767347 1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.1970465034 + -8.318313599 1 + 3 24 24 576 + 1 16 3 23 18 + -2 20 3 23 10 + -2 16 11 19 18 + +0.2252115756 + 39.80822754 1 + 2 24 24 576 + 1 12 19 17 23 + -1 18 19 23 23 + +0.1304435283 + -18.04852295 1 + 2 24 24 576 + 1 6 6 23 10 + -2 12 6 17 10 + +0.154009372 + 2.403547049 1 + 3 24 24 576 + 1 20 5 23 8 + -2 22 5 23 6 + -2 20 7 21 8 + +0.1576190889 + 22.40368271 -1 + 2 24 24 576 + 1 7 5 12 9 + -1 13 5 18 9 + +0.1512362361 + -19.25508308 1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.2542060912 + -3.384543419 1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.3121500909 + -4.160143852 -1 + 3 24 24 576 + 1 15 1 22 18 + -2 19 1 22 9 + -2 15 10 18 18 + +0.2172807604 + 5.290447712 1 + 3 24 24 576 + 1 16 1 21 12 + -2 19 1 21 6 + -2 16 7 18 12 + +0.1916735917 + -4.266427994 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.167324543 + -4.305354118 -1 + 2 24 24 576 + 1 13 2 18 12 + -2 15 2 16 12 + +0.1391208768 + -1.854334712 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.1392721981 + 2.65297246 1 + 2 24 24 576 + 1 16 8 18 11 + -1 19 8 21 11 + +0.1360744685 + -3.830484629 -1 + 3 24 24 576 + 1 0 14 15 17 + -2 8 14 15 15 + -2 0 16 7 17 + +0.1199494451 + 0.1434022635 1 + 3 24 24 576 + 1 9 14 12 17 + -2 11 14 12 15 + -2 9 16 10 17 + +0.1179446429 + -0.7317983508 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.1608559191 + 4.031029701 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1583829075 + 25.47292519 -1 + 3 24 24 576 + 1 5 1 22 8 + -2 14 1 22 4 + -2 5 5 13 8 + +0.129264161 + 11.90005016 1 + 2 24 24 576 + 1 4 0 10 3 + -1 11 0 17 3 + +0.148196578 + 14.32429695 -1 + 2 24 24 576 + 1 3 11 7 13 + -1 3 14 7 16 + +0.1508327872 + 11.42607594 1 + 3 24 24 576 + 1 0 1 3 20 + -2 2 1 3 10 + -2 0 11 1 20 + +0.1317090094 + -2.118783474 1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.1443420202 + -20.37709618 -1 + 2 24 24 576 + 1 17 7 21 14 + -1 17 15 21 22 + +0.1499840468 + 7.730059624 -1 + 2 24 24 576 + 1 8 18 16 21 + -2 11 18 13 21 + +0.1307522357 + 21.16559219 1 + 2 24 24 576 + 1 12 13 22 21 + -2 12 16 22 18 + +0.1427044272 + 0.2034966499 1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1268959194 + 5.248594284 1 + 3 24 24 576 + 1 3 9 10 22 + -2 7 9 10 15 + -2 3 16 6 22 + +0.1195668131 + 15.74389172 -1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.1633006632 + -1.737463713 -1 + 3 24 24 576 + 1 5 17 8 20 + -2 7 17 8 18 + -2 5 19 6 20 + +0.1455868185 + 6.043421268 -1 + 3 24 24 576 + 1 5 17 18 20 + -2 12 17 18 18 + -2 5 19 11 20 + +0.1410276443 + 5.424628735 1 + 3 24 24 576 + 1 6 1 11 12 + -2 9 1 11 6 + -2 6 7 8 12 + +0.1427330226 + -1.317246199 -1 + 2 24 24 576 + 1 3 11 4 14 + -1 5 11 6 14 + +0.1329855025 + 0.8778558373 -1 + 2 24 24 576 + 1 10 21 13 23 + -2 10 22 13 22 + +0.1212310418 + -1.203861356 -1 + 2 24 24 576 + 1 10 18 14 19 + -1 10 20 14 21 + +0.1150341928 + -6.135263443 -1 + 3 24 24 576 + 1 10 16 21 19 + -2 16 16 21 17 + -2 10 18 15 19 + +0.1345468163 + -11.27964687 1 + 2 24 24 576 + 1 7 17 14 18 + -1 7 19 14 20 + +0.146535486 + -5.740627766 -1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1432378441 + 5.910740376 -1 + 2 24 24 576 + 1 8 8 14 10 + -2 8 9 14 9 + +0.1364105195 + 3.398167849 1 + 2 24 24 576 + 1 8 14 11 16 + -2 8 15 11 15 + +0.1449686438 + 12.01613331 -1 + 2 24 24 576 + 1 6 6 11 9 + -1 12 6 17 9 + +0.1404960155 + 5.196453571 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.1328365356 + -3.22325635 -1 + 3 24 24 576 + 1 18 4 21 11 + -2 20 4 21 7 + -2 18 8 19 11 + +0.149887383 + -2.012643576 -1 + 3 24 24 576 + 1 16 1 19 12 + -2 18 1 19 6 + -2 16 7 17 12 + +0.2085598707 + -6.718117237 1 + 2 24 24 576 + 1 9 1 10 4 + -1 11 1 12 4 + +0.148303315 + 22.86880875 -1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.2597654164 + 29.78899574 1 + 2 24 24 576 + 1 1 20 6 23 + -1 7 20 12 23 + +0.1400031447 + -9.185523987 -1 + 3 24 24 576 + 1 15 1 20 18 + -2 18 1 20 9 + -2 15 10 17 18 + +0.1892543584 + 2.900403261 1 + 3 24 24 576 + 1 13 1 22 12 + -2 18 1 22 6 + -2 13 7 17 12 + +0.142838493 + -4.282542229 -1 + 3 24 24 576 + 1 15 0 18 23 + -2 17 0 18 11 + -2 15 12 16 23 + +0.1916120052 + -8.916694641 1 + 3 24 24 576 + 1 12 8 21 15 + -2 17 8 21 11 + -2 12 12 16 15 + +0.141876027 + 10.8829937 -1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.1796313375 + -18.22276306 -1 + 2 24 24 576 + 1 17 12 23 17 + -1 17 18 23 23 + +0.1510235369 + 5.307881355 1 + 3 24 24 576 + 1 10 1 23 20 + -2 17 1 23 10 + -2 10 11 16 20 + +0.1334056556 + -2.645247221 1 + 2 24 24 576 + 1 16 5 18 8 + -2 17 5 17 8 + +0.1591290087 + -9.196297646 -1 + 3 24 24 576 + 1 9 2 20 13 + -2 15 2 20 7 + -2 9 8 14 13 + +0.1592569798 + -1.2604146 -1 + 2 24 24 576 + 1 18 5 21 8 + -1 18 9 21 12 + +0.1328406334 + -9.110118866 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.1676198095 + 9.049329758 -1 + 3 24 24 576 + 1 14 18 23 21 + -2 19 18 23 19 + -2 14 20 18 21 + +0.1494167745 + -2.135860443 -1 + 3 24 24 576 + 1 14 12 21 15 + -2 18 12 21 13 + -2 14 14 17 15 + +0.1428954303 + 1.725123048 -1 + 3 24 24 576 + 1 20 2 23 21 + -2 22 2 23 11 + -2 20 12 21 21 + +0.1451866776 + -0.1664592475 -1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1444028914 + -0.1664592475 -1 + 3 24 24 576 + 1 14 10 21 17 + -2 18 10 21 13 + -2 14 14 17 17 + +0.1678188741 + -0.9946932197 1 + 3 24 24 576 + 1 8 11 23 14 + -2 16 11 23 12 + -2 8 13 15 14 + +0.1416312456 + 2.139352322 -1 + 3 24 24 576 + 1 7 11 16 18 + -2 12 11 16 14 + -2 7 15 11 18 + +0.1295129359 + 8.792140007 1 + 2 24 24 576 + 1 5 5 8 10 + -2 5 7 8 8 + +0.1624402255 + -3.404848337 -1 + 3 24 24 576 + 1 14 10 17 21 + -2 16 10 17 15 + -2 14 16 15 21 + +0.1859536618 + -8.019591331 1 + 3 24 24 576 + 1 14 8 17 23 + -2 16 8 17 15 + -2 14 16 15 23 + +0.1280718297 + -1.392204642 -1 + 3 24 24 576 + 1 14 8 21 15 + -2 18 8 21 11 + -2 14 12 17 15 + +0.1318572611 + 7.348162174 1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.143814832 + -4.893538952 -1 + 3 24 24 576 + 1 14 7 23 16 + -2 19 7 23 11 + -2 14 12 18 16 + +0.1574069709 + -2.358354568 1 + 3 24 24 576 + 1 13 10 22 13 + -2 18 10 22 11 + -2 13 12 17 13 + +0.1375618279 + -2.382009506 -1 + 3 24 24 576 + 1 11 6 16 19 + -2 14 6 16 12 + -2 11 13 13 19 + +0.1575538367 + 15.38889217 -1 + 3 24 24 576 + 1 14 7 17 18 + -2 16 7 17 12 + -2 14 13 15 18 + +0.1883806586 + 14.33152199 1 + 3 24 24 576 + 1 2 16 9 23 + -2 6 16 9 19 + -2 2 20 5 23 + +0.1376565546 + 14.35867405 -1 + 3 24 24 576 + 1 14 6 17 21 + -2 16 6 17 13 + -2 14 14 15 21 + +0.1791068166 + -4.293295383 -1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.1593773514 + 6.219050884 -1 + 2 24 24 576 + 1 18 11 22 13 + -1 18 14 22 16 + +0.1349889189 + 4.643270969 -1 + 3 24 24 576 + 1 14 5 19 8 + -2 17 5 19 6 + -2 14 7 16 8 + +0.203168422 + -6.043129921 -1 + 2 24 24 576 + 1 11 15 17 17 + -2 11 16 17 16 + +0.1483709961 + 2.961878777 -1 + 3 24 24 576 + 1 14 5 21 12 + -2 18 5 21 8 + -2 14 9 17 12 + +0.1420381367 + 4.124469757 -1 + 3 24 24 576 + 1 14 4 21 19 + -2 18 4 21 11 + -2 14 12 17 19 + +0.1764765382 + 21.87169838 1 + 3 24 24 576 + 1 12 1 23 20 + -2 18 1 23 10 + -2 12 11 17 20 + +0.1453003883 + -2.348148823 -1 + 3 24 24 576 + 1 14 2 23 5 + -2 19 2 23 3 + -2 14 4 18 5 + +0.1578128785 + 0.6470722556 -1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.1384009719 + -18.05428123 -1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.1461222619 + -15.1933794 1 + 2 24 24 576 + 1 14 3 17 8 + -1 14 9 17 14 + +0.1364030689 + -0.8996472955 1 + 2 24 24 576 + 1 18 16 22 17 + -1 18 18 22 19 + +0.1462160796 + -1.537715077 -1 + 2 24 24 576 + 1 3 0 7 11 + -2 3 4 7 7 + +0.1324249953 + 0.3193656206 1 + 2 24 24 576 + 1 1 3 11 4 + -1 1 5 11 6 + +0.1290385276 + -30.50945473 -1 + 3 24 24 576 + 1 15 3 20 22 + -2 18 3 20 12 + -2 15 13 17 22 + +0.1702754945 + -6.643779755 1 + 3 24 24 576 + 1 4 15 19 18 + -2 12 15 19 16 + -2 4 17 11 18 + +0.1406195015 + -0.1067510694 -1 + 3 24 24 576 + 1 14 1 21 4 + -2 18 1 21 2 + -2 14 3 17 4 + +0.1284527183 + 18.48792839 -1 + 2 24 24 576 + 1 7 3 17 11 + -2 7 6 17 8 + +0.145220235 + 1.147879004 1 + 2 24 24 576 + 1 3 11 9 13 + -1 3 14 9 16 + +0.1334231496 + 6.296856403 -1 + 3 24 24 576 + 1 18 15 23 20 + -2 21 15 23 17 + -2 18 18 20 20 + +0.2027904838 + 9.337949753 1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.1365951896 + 3.338308811 -1 + 3 24 24 576 + 1 8 1 17 4 + -2 13 1 17 2 + -2 8 3 12 4 + +0.1395456642 + 3.147151232 1 + 2 24 24 576 + 1 4 5 7 7 + -2 4 6 7 6 + +0.1587067097 + -7.274834156 1 + 3 24 24 576 + 1 3 0 22 3 + -2 13 0 22 1 + -2 3 2 12 3 + +0.133592844 + -14.15648937 -1 + 2 24 24 576 + 1 18 1 23 8 + -2 20 1 21 8 + +0.1308605224 + 15.86107635 -1 + 3 24 24 576 + 1 14 4 17 15 + -2 16 4 17 9 + -2 14 10 15 15 + +0.174955532 + 3.063557625 -1 + 3 24 24 576 + 1 14 3 19 8 + -2 17 3 19 5 + -2 14 6 16 8 + + +200 16.35638809 1 +0.3211316168 + -35.88776016 -1 + 2 24 24 576 + 1 0 0 6 3 + -1 7 0 13 3 + +0.297642827 + 3.296792269 1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.292429924 + 18.13621521 1 + 2 24 24 576 + 1 5 9 19 14 + -2 10 9 14 14 + +0.2461611629 + 0.4654114544 1 + 3 24 24 576 + 1 11 15 16 18 + -2 14 15 16 16 + -2 11 17 13 18 + +0.2299879789 + 8.530589104 1 + 2 24 24 576 + 1 13 2 17 4 + -1 13 5 17 7 + +0.2321454883 + 3.721940756 1 + 3 24 24 576 + 1 3 15 10 20 + -2 7 15 10 17 + -2 3 18 6 20 + +0.21592848 + -2.570971489 -1 + 2 24 24 576 + 1 8 3 9 9 + -1 10 3 11 9 + +0.221747309 + 13.06381893 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.2224123776 + 1.137970567 1 + 2 24 24 576 + 1 17 10 18 13 + -1 19 10 20 13 + +0.180091396 + 1.304670572 1 + 3 24 24 576 + 1 1 6 6 9 + -2 4 6 6 7 + -2 1 8 3 9 + +0.1796634346 + 7.801354408 1 + 3 24 24 576 + 1 10 20 21 23 + -2 16 20 21 21 + -2 10 22 15 23 + +0.1945363432 + -0.8366973996 -1 + 2 24 24 576 + 1 19 5 23 6 + -1 19 7 23 8 + +0.1732447445 + -0.5459955931 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.1809905916 + -19.93081665 -1 + 2 24 24 576 + 1 0 0 1 18 + -1 2 0 3 18 + +0.1776997149 + 4.157124043 -1 + 2 24 24 576 + 1 3 14 7 15 + -1 3 16 7 17 + +0.198774904 + 5.178776741 1 + 2 24 24 576 + 1 0 21 3 23 + -2 0 22 3 22 + +0.1996591836 + -5.848835468 1 + 3 24 24 576 + 1 8 13 15 20 + -2 12 13 15 16 + -2 8 17 11 20 + +0.1638951749 + -47.53773499 -1 + 2 24 24 576 + 1 1 18 21 23 + -2 8 18 14 23 + +0.1697124243 + -2.231484413 -1 + 2 24 24 576 + 1 9 5 10 14 + -1 11 5 12 14 + +0.156610772 + 23.83141708 1 + 2 24 24 576 + 1 0 19 9 23 + -1 10 19 19 23 + +0.1866171807 + 10.12966728 -1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.1754496098 + -29.49146652 -1 + 2 24 24 576 + 1 6 19 14 22 + -1 15 19 23 22 + +0.1852633953 + 1.412964344 -1 + 2 24 24 576 + 1 10 8 14 9 + -1 10 10 14 11 + +0.1649152189 + 8.256101608 1 + 2 24 24 576 + 1 10 6 11 13 + -1 12 6 13 13 + +0.1877773106 + -8.948633194 1 + 2 24 24 576 + 1 8 5 15 11 + -1 8 12 15 18 + +0.1637757421 + 7.669381618 1 + 2 24 24 576 + 1 18 4 19 9 + -1 20 4 21 9 + +0.1627402306 + 3.303524017 -1 + 3 24 24 576 + 1 7 14 14 19 + -2 11 14 14 16 + -2 7 17 10 19 + +0.1618279368 + -13.55620861 -1 + 2 24 24 576 + 1 1 2 18 7 + -2 1 4 18 5 + +0.1698269844 + -7.204877377 1 + 2 24 24 576 + 1 14 0 15 23 + -1 16 0 17 23 + +0.1628540009 + -5.212039948 -1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.1693228334 + -3.610202551 1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1698848307 + -54.2213707 -1 + 3 24 24 576 + 1 19 0 22 23 + -2 21 0 22 11 + -2 19 12 20 23 + +0.198083505 + 3.167918205 -1 + 3 24 24 576 + 1 18 11 21 14 + -2 20 11 21 12 + -2 18 13 19 14 + +0.1640986204 + -3.555080414 -1 + 3 24 24 576 + 1 18 10 21 17 + -2 20 10 21 13 + -2 18 14 19 17 + +0.1721537262 + -3.109077692 -1 + 3 24 24 576 + 1 18 9 21 20 + -2 20 9 21 14 + -2 18 15 19 20 + +0.2447663248 + 7.142477036 -1 + 2 24 24 576 + 1 9 16 14 20 + -2 11 16 12 20 + +0.1629737467 + -0.6411594748 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1430908591 + 10.989151 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.1640829593 + -3.833109379 -1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.2237454951 + -4.297375202 1 + 3 24 24 576 + 1 17 8 22 17 + -2 20 8 22 12 + -2 17 13 19 17 + +0.1465779245 + 1.009907246 -1 + 3 24 24 576 + 1 16 4 19 21 + -2 18 4 19 12 + -2 16 13 17 21 + +0.1410905868 + 4.737606049 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.162884444 + -12.35113049 -1 + 3 24 24 576 + 1 18 5 21 16 + -2 20 5 21 10 + -2 18 11 19 16 + +0.2664686441 + 0.1919056773 -1 + 3 24 24 576 + 1 18 3 21 6 + -2 20 3 21 4 + -2 18 5 19 6 + +0.3164282441 + 6.324950695 -1 + 2 24 24 576 + 1 13 1 14 4 + -1 15 1 16 4 + +0.1808992326 + 1.547304511 1 + 3 24 24 576 + 1 17 1 20 8 + -2 19 1 20 4 + -2 17 5 18 8 + +0.1680219918 + -6.536783218 -1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1629403532 + -0.8730971813 -1 + 3 24 24 576 + 1 18 2 23 5 + -2 21 2 23 3 + -2 18 4 20 5 + +0.2128706425 + -2.532251358 1 + 2 24 24 576 + 1 17 3 21 4 + -1 17 5 21 6 + +0.1497339457 + 12.17761803 1 + 3 24 24 576 + 1 6 0 21 15 + -2 14 0 21 7 + -2 6 8 13 15 + +0.1502418965 + -16.33568382 -1 + 2 24 24 576 + 1 16 12 19 22 + -1 20 12 23 22 + +0.1656164676 + -3.032906771 -1 + 2 24 24 576 + 1 1 4 14 8 + -1 1 9 14 13 + +0.1600045115 + 157.2940369 1 + 2 24 24 576 + 1 3 8 12 21 + -1 13 8 22 21 + +0.1766637117 + -1.554538846 -1 + 3 24 24 576 + 1 18 0 23 5 + -2 21 0 23 2 + -2 18 3 20 5 + +0.2173396498 + -7.240723133 1 + 3 24 24 576 + 1 5 2 8 9 + -2 7 2 8 5 + -2 5 6 6 9 + +0.1533117592 + -12.58344936 -1 + 3 24 24 576 + 1 18 8 23 13 + -2 21 8 23 10 + -2 18 11 20 13 + +0.1942223758 + -0.3502038717 1 + 2 24 24 576 + 1 3 11 7 13 + -1 3 14 7 16 + +0.1384477317 + -4.296787739 -1 + 3 24 24 576 + 1 17 10 20 21 + -2 19 10 20 15 + -2 17 16 18 21 + +0.1632871926 + 4.690995216 -1 + 3 24 24 576 + 1 4 12 17 15 + -2 11 12 17 13 + -2 4 14 10 15 + +0.1500670165 + 7.743636131 1 + 3 24 24 576 + 1 13 1 16 12 + -2 15 1 16 6 + -2 13 7 14 12 + +0.1464843452 + 7.385230064 -1 + 2 24 24 576 + 1 8 18 16 21 + -2 11 18 13 21 + +0.1615628153 + -18.21019554 -1 + 3 24 24 576 + 1 18 4 23 13 + -2 21 4 23 8 + -2 18 9 20 13 + +0.1743630767 + 5.500077248 -1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.1484808028 + 0.8440119028 -1 + 3 24 24 576 + 1 17 6 20 9 + -2 19 6 20 7 + -2 17 8 18 9 + +0.2042675018 + 49.94906616 1 + 2 24 24 576 + 1 6 3 17 14 + -2 6 7 17 10 + +0.1415890753 + 4.536201954 -1 + 3 24 24 576 + 1 17 12 20 19 + -2 19 12 20 15 + -2 17 16 18 19 + +0.16127716 + -36.82960892 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.1900192499 + -10.41088295 -1 + 3 24 24 576 + 1 17 3 22 12 + -2 20 3 22 7 + -2 17 8 19 12 + +0.2653751671 + 16.20092392 -1 + 3 24 24 576 + 1 11 4 20 9 + -2 16 4 20 6 + -2 11 7 15 9 + +0.1526326835 + 9.390530586 1 + 2 24 24 576 + 1 14 14 22 20 + -2 17 14 19 20 + +0.1594690681 + -19.40393257 1 + 2 24 24 576 + 1 0 6 17 9 + -2 6 6 11 9 + +0.1489425153 + 4.031029701 1 + 2 24 24 576 + 1 9 6 10 9 + -1 11 6 12 9 + +0.1731954962 + -3.790137053 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.2662682533 + -14.36621284 1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.1386297643 + -4.692000866 -1 + 2 24 24 576 + 1 2 9 3 16 + -1 4 9 5 16 + +0.1389462799 + -0.3690184057 -1 + 3 24 24 576 + 1 5 14 8 17 + -2 7 14 8 15 + -2 5 16 6 17 + +0.1335443407 + 10.93287373 -1 + 3 24 24 576 + 1 17 0 20 11 + -2 19 0 20 5 + -2 17 6 18 11 + +0.1727344096 + -26.5669136 -1 + 3 24 24 576 + 1 0 1 5 20 + -2 3 1 5 10 + -2 0 11 2 20 + +0.1448183656 + 0.8723465204 -1 + 3 24 24 576 + 1 16 15 19 18 + -2 18 15 19 16 + -2 16 17 17 18 + +0.132174626 + -1.41717875 -1 + 3 24 24 576 + 1 12 11 17 20 + -2 15 11 17 15 + -2 12 16 14 20 + +0.1530974358 + -5.213886738 -1 + 3 24 24 576 + 1 9 2 18 13 + -2 14 2 18 7 + -2 9 8 13 13 + +0.171236977 + 7.117033958 -1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.1524283588 + 9.166692734 1 + 3 24 24 576 + 1 1 12 6 21 + -2 4 12 6 16 + -2 1 17 3 21 + +0.156227231 + 6.747757435 -1 + 2 24 24 576 + 1 6 2 7 15 + -1 8 2 9 15 + +0.1631086767 + 1.278805852 -1 + 3 24 24 576 + 1 17 3 20 10 + -2 19 3 20 6 + -2 17 7 18 10 + +0.1871246696 + 2.678539753 1 + 3 24 24 576 + 1 18 1 21 4 + -2 20 1 21 2 + -2 18 3 19 4 + +0.1719537377 + -1.815684795 1 + 3 24 24 576 + 1 14 3 21 10 + -2 18 3 21 6 + -2 14 7 17 10 + +0.1411534548 + -1.125349164 -1 + 3 24 24 576 + 1 16 9 21 20 + -2 19 9 21 14 + -2 16 15 18 20 + +0.1595982015 + -0.4677810371 1 + 3 24 24 576 + 1 15 10 22 19 + -2 19 10 22 14 + -2 15 15 18 19 + +0.1486623287 + 2.634340048 -1 + 3 24 24 576 + 1 16 8 19 13 + -2 18 8 19 10 + -2 16 11 17 13 + +0.2320865542 + 3.989874363 -1 + 3 24 24 576 + 1 16 7 19 14 + -2 18 7 19 10 + -2 16 11 17 14 + +0.3967868388 + -9.65045929 -1 + 2 24 24 576 + 1 11 4 12 11 + -1 13 4 14 11 + +0.1411620975 + 0.4589262307 1 + 3 24 24 576 + 1 8 3 11 6 + -2 10 3 11 4 + -2 8 5 9 6 + +0.1365496218 + 0.6117416024 1 + 2 24 24 576 + 1 6 11 7 14 + -1 8 11 9 14 + +0.1312572807 + 1.675440431 1 + 2 24 24 576 + 1 10 15 13 16 + -1 10 17 13 18 + +0.1410868764 + -21.4987793 1 + 2 24 24 576 + 1 11 8 14 19 + -1 15 8 18 19 + +0.173114121 + -13.75936413 -1 + 2 24 24 576 + 1 9 14 15 22 + -2 9 17 15 19 + +0.1608203501 + -2.239109039 1 + 3 24 24 576 + 1 6 0 13 3 + -2 10 0 13 1 + -2 6 2 9 3 + +0.1395895928 + -1.329958081 -1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1701865196 + -1.13861239 1 + 3 24 24 576 + 1 16 9 19 12 + -2 18 9 19 10 + -2 16 11 17 12 + +0.2300192714 + -2.34646678 -1 + 3 24 24 576 + 1 12 6 17 9 + -2 15 6 17 7 + -2 12 8 14 9 + +0.1414062232 + 0.8944457173 1 + 2 24 24 576 + 1 17 0 18 3 + -1 19 0 20 3 + +0.1389734745 + 0.8259471655 -1 + 2 24 24 576 + 1 5 0 9 11 + -2 5 4 9 7 + +0.1670380831 + 7.273366451 -1 + 2 24 24 576 + 1 6 14 7 21 + -1 8 14 9 21 + +0.1519049406 + 16.14024353 1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.1608375013 + 5.477077007 -1 + 2 24 24 576 + 1 15 16 22 17 + -1 15 18 22 19 + +0.1368641704 + -3.359012842 -1 + 3 24 24 576 + 1 12 16 17 19 + -2 15 16 17 17 + -2 12 18 14 19 + +0.1423136741 + -18.91617393 1 + 2 24 24 576 + 1 6 3 9 18 + -1 10 3 13 18 + +0.1261498183 + -2.178325415 -1 + 2 24 24 576 + 1 5 19 7 22 + -2 6 19 6 22 + +0.1494088918 + -20.71466446 1 + 3 24 24 576 + 1 3 0 18 7 + -2 11 0 18 3 + -2 3 4 10 7 + +0.1529029459 + -7.851868153 -1 + 3 24 24 576 + 1 16 3 21 16 + -2 19 3 21 9 + -2 16 10 18 16 + +0.1569702625 + -2.534417391 -1 + 2 24 24 576 + 1 15 9 17 17 + -1 18 9 20 17 + +0.1588328034 + 3.610025167 -1 + 2 24 24 576 + 1 13 4 21 8 + -2 16 4 18 8 + +0.1502663493 + -2.225677967 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1313892156 + 1.244656444 1 + 2 24 24 576 + 1 8 6 14 8 + -2 8 7 14 7 + +0.1265368611 + 0 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1284062266 + -0.9545526505 1 + 3 24 24 576 + 1 15 0 18 3 + -2 17 0 18 1 + -2 15 2 16 3 + +0.1479320675 + 5.825268745 1 + 2 24 24 576 + 1 6 9 17 10 + -1 6 11 17 12 + +0.142888695 + 6.000975132 -1 + 2 24 24 576 + 1 0 16 7 17 + -1 0 18 7 19 + +0.1408164799 + -2.54190135 -1 + 2 24 24 576 + 1 9 10 14 13 + -2 11 10 12 13 + +0.1336660087 + -8.249598503 1 + 2 24 24 576 + 1 12 15 17 17 + -1 12 18 17 20 + +0.1420992166 + 30.63923454 1 + 2 24 24 576 + 1 12 11 23 22 + -2 12 15 23 18 + +0.1401618868 + -14.52921867 1 + 2 24 24 576 + 1 6 5 10 8 + -1 11 5 15 8 + +0.1396829486 + 8.231808662 1 + 2 24 24 576 + 1 20 16 23 19 + -1 20 20 23 23 + +0.1323905587 + -14.02963829 1 + 2 24 24 576 + 1 12 8 15 14 + -1 16 8 19 14 + +0.1531266123 + 26.32842064 1 + 2 24 24 576 + 1 8 10 16 17 + -2 11 10 13 17 + +0.1466643363 + -5.34937048 -1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.2569237351 + 4.92909193 -1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.1308016181 + -0.2123093754 1 + 3 24 24 576 + 1 18 12 21 15 + -2 20 12 21 13 + -2 18 14 19 15 + +0.1579258889 + -8.832270622 -1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.1477945596 + 6.324347496 -1 + 3 24 24 576 + 1 0 5 13 8 + -2 7 5 13 6 + -2 0 7 6 8 + +0.136306271 + 26.06097603 1 + 3 24 24 576 + 1 15 5 22 22 + -2 19 5 22 13 + -2 15 14 18 22 + +0.1521732062 + -0.6181824803 1 + 2 24 24 576 + 1 18 16 22 17 + -1 18 18 22 19 + +0.1297004074 + 1.257736802 1 + 2 24 24 576 + 1 16 20 18 23 + -2 17 20 17 23 + +0.12555103 + -3.352925062 1 + 2 24 24 576 + 1 17 0 23 1 + -1 17 2 23 3 + +0.1311800778 + -3.172426462 -1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1177256331 + -7.386948586 -1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.1299710572 + -20.3141098 -1 + 3 24 24 576 + 1 15 2 22 19 + -2 19 2 22 10 + -2 15 11 18 19 + +0.1950687319 + -27.61916351 1 + 2 24 24 576 + 1 14 3 18 9 + -1 14 10 18 16 + +0.1395807564 + -4.004198551 -1 + 2 24 24 576 + 1 20 0 22 6 + -2 21 0 21 6 + +0.1276261359 + 1.218512058 1 + 3 24 24 576 + 1 6 15 9 18 + -2 8 15 9 16 + -2 6 17 7 18 + +0.1486272663 + -11.49862671 -1 + 3 24 24 576 + 1 15 2 20 19 + -2 18 2 20 10 + -2 15 11 17 19 + +0.2027318627 + -17.19417 1 + 2 24 24 576 + 1 10 15 21 21 + -2 14 15 17 21 + +0.1321351677 + 1.819386005 -1 + 2 24 24 576 + 1 10 21 13 23 + -2 10 22 13 22 + +0.1378335953 + 8.268501282 1 + 3 24 24 576 + 1 3 18 10 23 + -2 7 18 10 20 + -2 3 21 6 23 + +0.1432239413 + -11.49035168 -1 + 3 24 24 576 + 1 15 1 18 18 + -2 17 1 18 9 + -2 15 10 16 18 + +0.2409651577 + 0.7916108966 -1 + 3 24 24 576 + 1 15 12 18 19 + -2 17 12 18 15 + -2 15 16 16 19 + +0.1918403059 + -0.3118467033 -1 + 3 24 24 576 + 1 14 18 23 21 + -2 19 18 23 19 + -2 14 20 18 21 + +0.217870906 + -3.958054543 -1 + 3 24 24 576 + 1 14 17 21 20 + -2 18 17 21 18 + -2 14 19 17 20 + +0.2982416451 + -9.453678131 1 + 3 24 24 576 + 1 12 17 23 20 + -2 18 17 23 18 + -2 12 19 17 20 + +0.1320096701 + 0.02099096589 1 + 2 24 24 576 + 1 14 18 18 19 + -1 14 20 18 21 + +0.139889136 + -1.551809907 -1 + 2 24 24 576 + 1 10 17 15 18 + -1 10 19 15 20 + +0.1515612751 + 7.056289196 1 + 3 24 24 576 + 1 7 16 22 23 + -2 15 16 22 19 + -2 7 20 14 23 + +0.1455763429 + 4.59062624 1 + 3 24 24 576 + 1 10 2 21 21 + -2 16 2 21 11 + -2 10 12 15 21 + +0.1349634677 + -7.666052818 1 + 2 24 24 576 + 1 12 10 15 15 + -1 16 10 19 15 + +0.1473160982 + -6.259476662 -1 + 2 24 24 576 + 1 7 5 12 13 + -2 9 5 10 13 + +0.1538352966 + -9.331413269 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.2605012059 + -2.086974144 -1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.3889743388 + -11.96580505 1 + 3 24 24 576 + 1 14 10 21 17 + -2 18 10 21 13 + -2 14 14 17 17 + +0.120666936 + -2.205949545 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.1584829837 + 0.06654298306 -1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1520201117 + -3.514252186 1 + 3 24 24 576 + 1 13 10 18 17 + -2 16 10 18 13 + -2 13 14 15 17 + +0.1348610818 + 11.20823097 1 + 2 24 24 576 + 1 9 11 15 16 + -2 9 13 15 14 + +0.1517834514 + -4.579819202 -1 + 3 24 24 576 + 1 14 9 23 12 + -2 19 9 23 10 + -2 14 11 18 12 + +0.2244931459 + -2.259896755 1 + 3 24 24 576 + 1 13 10 22 13 + -2 18 10 22 11 + -2 13 12 17 13 + +0.1376958936 + -15.63907719 -1 + 3 24 24 576 + 1 14 8 21 15 + -2 18 8 21 11 + -2 14 12 17 15 + +0.2174974382 + -31.85634041 -1 + 3 24 24 576 + 1 14 7 23 16 + -2 19 7 23 11 + -2 14 12 18 16 + +0.3844768703 + 30.95272827 -1 + 3 24 24 576 + 1 5 4 18 17 + -2 12 4 18 10 + -2 5 11 11 17 + +0.1376559436 + -4.525196075 -1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.182115972 + -9.751317978 1 + 3 24 24 576 + 1 14 5 21 12 + -2 18 5 21 8 + -2 14 9 17 12 + +0.1254721582 + -63.19505692 -1 + 2 24 24 576 + 1 4 0 13 20 + -1 14 0 23 20 + +0.1562751085 + -26.01082611 -1 + 3 24 24 576 + 1 14 6 23 13 + -2 19 6 23 9 + -2 14 10 18 13 + +0.2549301088 + -48.19231033 -1 + 3 24 24 576 + 1 14 5 23 16 + -2 19 5 23 10 + -2 14 11 18 16 + +0.4582112432 + -8.317583084 1 + 2 24 24 576 + 1 16 6 17 9 + -1 18 6 19 9 + +0.1409511268 + -0.1267054826 -1 + 3 24 24 576 + 1 14 6 21 9 + -2 18 6 21 7 + -2 14 8 17 9 + +0.1364387423 + 6.677024841 1 + 2 24 24 576 + 1 4 10 9 19 + -1 10 10 15 19 + +0.1428008825 + -56.00382614 -1 + 3 24 24 576 + 1 14 4 23 21 + -2 19 4 23 12 + -2 14 13 18 21 + +0.2251440883 + -23.65237427 -1 + 3 24 24 576 + 1 14 4 19 17 + -2 17 4 19 10 + -2 14 11 16 17 + +0.3928674757 + 13.85923576 -1 + 2 24 24 576 + 1 19 8 22 11 + -1 19 12 22 15 + +0.145027414 + -2.063489437 -1 + 3 24 24 576 + 1 14 4 17 15 + -2 16 4 17 9 + -2 14 10 15 15 + +0.1913512051 + 0.6515800953 -1 + 2 24 24 576 + 1 18 7 23 8 + -1 18 9 23 10 + +0.143938452 + 11.06585693 1 + 2 24 24 576 + 1 10 2 18 7 + -2 10 4 18 5 + +0.1505679935 + -18.49900055 -1 + 3 24 24 576 + 1 16 8 21 19 + -2 19 8 21 13 + -2 16 14 18 19 + +0.2505464554 + 5.157464981 -1 + 3 24 24 576 + 1 14 2 23 5 + -2 19 2 23 3 + -2 14 4 18 5 + +0.1967072934 + 3.934066296 -1 + 3 24 24 576 + 1 14 2 21 5 + -2 18 2 21 3 + -2 14 4 17 5 + +0.2311871946 + 5.552145004 1 + 3 24 24 576 + 1 14 0 23 5 + -2 19 0 23 2 + -2 14 3 18 5 + +0.1848287582 + 0 -1 + 2 24 24 576 + 1 14 0 18 1 + -1 14 2 18 3 + +0.1711511761 + -0.8155990839 -1 + 3 24 24 576 + 1 14 2 19 5 + -2 17 2 19 3 + -2 14 4 16 5 + +0.2384376973 + 1.27137506 -1 + 3 24 24 576 + 1 14 1 21 4 + -2 18 1 21 2 + -2 14 3 17 4 + +0.2719086707 + 9.207487106 1 + 3 24 24 576 + 1 14 0 21 7 + -2 18 0 21 3 + -2 14 4 17 7 + +0.2522080541 + -3.358349323 -1 + 3 24 24 576 + 1 14 1 19 4 + -2 17 1 19 2 + -2 14 3 16 4 + +0.4212773144 + -19.1124382 1 + 2 24 24 576 + 1 7 6 12 11 + -1 7 12 12 17 + +0.1610287726 + 15.19567299 1 + 2 24 24 576 + 1 5 0 16 2 + -1 5 3 16 5 + +0.164106071 + -2.326856136 -1 + 3 24 24 576 + 1 14 2 17 5 + -2 16 2 17 3 + -2 14 4 15 5 + +0.2667968869 + -8.053730965 1 + 3 24 24 576 + 1 12 0 19 5 + -2 16 0 19 2 + -2 12 3 15 5 + +0.1431188583 + 1.556248665 -1 + 3 24 24 576 + 1 8 1 17 4 + -2 13 1 17 2 + -2 8 3 12 4 + +0.159421742 + 31.68746567 1 + 2 24 24 576 + 1 10 1 14 21 + -2 10 8 14 14 + +0.1551626921 + 8.127252579 -1 + 3 24 24 576 + 1 14 0 17 11 + -2 16 0 17 5 + -2 14 6 15 11 + +0.1541065127 + -4.924440861 -1 + 2 24 24 576 + 1 5 9 16 16 + -2 9 9 12 16 + +0.1553057432 + -1.393760324 -1 + 3 24 24 576 + 1 13 16 16 19 + -2 15 16 16 17 + -2 13 18 14 19 + + +200 13.89657784 1 +0.3018716872 + 3.068682909 1 + 3 24 24 576 + 1 13 5 16 12 + -2 15 5 16 8 + -2 13 9 14 12 + +0.3017276525 + 13.00078011 1 + 2 24 24 576 + 1 10 0 18 12 + -2 13 0 15 12 + +0.2413664609 + 2.715188265 1 + 2 24 24 576 + 1 7 20 18 21 + -1 7 22 18 23 + +0.2325090468 + -5.229891777 -1 + 2 24 24 576 + 1 3 6 7 7 + -1 3 8 7 9 + +0.2353086323 + 13.06257725 1 + 3 24 24 576 + 1 11 1 22 10 + -2 17 1 22 5 + -2 11 6 16 10 + +0.2175135911 + 15.72106743 1 + 2 24 24 576 + 1 5 4 13 13 + -2 8 4 10 13 + +0.1879278421 + 0.4998830855 1 + 3 24 24 576 + 1 11 15 16 18 + -2 14 15 16 16 + -2 11 17 13 18 + +0.1798386574 + -9.043379784 -1 + 2 24 24 576 + 1 0 0 1 8 + -1 2 0 3 8 + +0.1911407709 + -0.5466464758 1 + 3 24 24 576 + 1 14 14 19 17 + -2 17 14 19 15 + -2 14 16 16 17 + +0.1838936657 + 11.89352989 1 + 3 24 24 576 + 1 16 12 21 23 + -2 19 12 21 17 + -2 16 18 18 23 + +0.2025179267 + 5.510742188 -1 + 2 24 24 576 + 1 8 13 13 17 + -1 8 18 13 22 + +0.1660325527 + 2.690609217 1 + 3 24 24 576 + 1 11 5 14 14 + -2 13 5 14 9 + -2 11 10 12 14 + +0.1559662372 + -7.031834126 -1 + 3 24 24 576 + 1 1 15 8 22 + -2 5 15 8 18 + -2 1 19 4 22 + +0.1655400097 + -9.296780586 -1 + 2 24 24 576 + 1 1 5 14 9 + -1 1 10 14 14 + +0.1655612588 + 11.80837059 1 + 2 24 24 576 + 1 20 0 21 8 + -1 22 0 23 8 + +0.1744199842 + 7.306937695 -1 + 3 24 24 576 + 1 7 9 16 18 + -2 12 9 16 13 + -2 7 14 11 18 + +0.167618826 + 14.64322376 1 + 2 24 24 576 + 1 0 13 3 20 + -1 4 13 7 20 + +0.1924937218 + -7.573776722 1 + 3 24 24 576 + 1 5 11 16 18 + -2 11 11 16 14 + -2 5 15 10 18 + +0.1793317795 + -89.90450287 -1 + 2 24 24 576 + 1 0 18 23 23 + -2 8 18 15 23 + +0.1868279576 + 4.650741577 -1 + 2 24 24 576 + 1 2 13 6 14 + -1 2 15 6 16 + +0.1748996675 + 204.2771759 1 + 2 24 24 576 + 1 3 4 12 23 + -1 13 4 22 23 + +0.1757643521 + -11.78173256 1 + 3 24 24 576 + 1 2 5 19 12 + -2 11 5 19 8 + -2 2 9 10 12 + +0.1469306499 + 6.459032536 1 + 2 24 24 576 + 1 6 10 17 11 + -1 6 12 17 13 + +0.1530159563 + 1.4414047 -1 + 2 24 24 576 + 1 10 9 13 10 + -1 10 11 13 12 + +0.1542486548 + -17.87080383 -1 + 2 24 24 576 + 1 20 0 21 18 + -1 22 0 23 18 + +0.1834960729 + -1.080278158 -1 + 2 24 24 576 + 1 7 2 8 8 + -1 9 2 10 8 + +0.1416085809 + 1.08805573 1 + 3 24 24 576 + 1 8 13 11 16 + -2 10 13 11 14 + -2 8 15 9 16 + +0.1436556578 + -3.410196304 1 + 2 24 24 576 + 1 6 4 7 21 + -1 8 4 9 21 + +0.1413066089 + 6.942695618 -1 + 2 24 24 576 + 1 4 11 7 15 + -1 8 11 11 15 + +0.1800245345 + -10.17926407 -1 + 3 24 24 576 + 1 0 10 3 21 + -2 2 10 3 15 + -2 0 16 1 21 + +0.1433079392 + 11.651577 -1 + 2 24 24 576 + 1 12 1 13 8 + -1 14 1 15 8 + +0.16329813 + -5.026823044 -1 + 2 24 24 576 + 1 10 5 11 8 + -1 12 5 13 8 + +0.1659635305 + 2.894051552 1 + 2 24 24 576 + 1 11 3 12 10 + -1 13 3 14 10 + +0.1334578991 + -0.6944063902 1 + 2 24 24 576 + 1 14 1 15 10 + -1 16 1 17 10 + +0.1559609473 + 9.840544701 1 + 3 24 24 576 + 1 0 11 5 20 + -2 3 11 5 15 + -2 0 16 2 20 + +0.1653407067 + 3.48101902 -1 + 3 24 24 576 + 1 2 9 11 12 + -2 7 9 11 10 + -2 2 11 6 12 + +0.1488994956 + -33.82404327 -1 + 2 24 24 576 + 1 0 18 11 21 + -1 12 18 23 21 + +0.1453340352 + 0.8061050773 1 + 3 24 24 576 + 1 2 7 7 12 + -2 5 7 7 9 + -2 2 10 4 12 + +0.1349803209 + -5.803548813 -1 + 2 24 24 576 + 1 21 0 23 5 + -2 22 0 22 5 + +0.1246223226 + 0.5408389568 1 + 2 24 24 576 + 1 13 2 23 4 + -1 13 5 23 7 + +0.1422899663 + -11.63077736 -1 + 2 24 24 576 + 1 4 1 18 9 + -2 4 4 18 6 + +0.1642664969 + 5.878713131 -1 + 3 24 24 576 + 1 5 15 20 18 + -2 13 15 20 16 + -2 5 17 12 18 + +0.1513510048 + -5.005185127 -1 + 2 24 24 576 + 1 14 5 18 6 + -1 14 7 18 8 + +0.1423619837 + 6.560791969 -1 + 2 24 24 576 + 1 0 2 14 14 + -2 5 2 9 14 + +0.1266215593 + 1.526386738 1 + 2 24 24 576 + 1 15 5 18 6 + -1 15 7 18 8 + +0.1454146802 + 0 -1 + 2 24 24 576 + 1 11 6 15 7 + -1 11 8 15 9 + +0.1323754638 + -3.288822889 -1 + 2 24 24 576 + 1 15 0 19 11 + -2 15 4 19 7 + +0.1581268609 + -14.04925823 1 + 2 24 24 576 + 1 18 5 21 8 + -1 18 9 21 12 + +0.1316202134 + 16.91737938 1 + 2 24 24 576 + 1 17 9 22 15 + -1 17 16 22 22 + +0.1299541593 + 5.60311079 1 + 2 24 24 576 + 1 21 15 23 20 + -2 22 15 22 20 + +0.159639582 + 3.088943005 -1 + 3 24 24 576 + 1 10 16 13 23 + -2 12 16 13 19 + -2 10 20 11 23 + +0.1438402981 + 6.570744514 1 + 2 24 24 576 + 1 8 12 11 18 + -1 12 12 15 18 + +0.1292290986 + -1.854334712 -1 + 2 24 24 576 + 1 9 0 10 9 + -1 11 0 12 9 + +0.1390949041 + -4.716063499 -1 + 3 24 24 576 + 1 6 20 13 23 + -2 10 20 13 21 + -2 6 22 9 23 + +0.139302969 + 16.08065033 -1 + 2 24 24 576 + 1 13 11 20 13 + -1 13 14 20 16 + +0.1404421777 + 2.732514858 1 + 3 24 24 576 + 1 4 16 7 21 + -2 6 16 7 18 + -2 4 19 5 21 + +0.1352805346 + 3.241632462 1 + 2 24 24 576 + 1 8 4 14 12 + -1 8 13 14 21 + +0.1309481561 + -3.125133991 -1 + 2 24 24 576 + 1 9 4 23 15 + -2 14 4 18 15 + +0.1312652379 + -14.70225143 -1 + 2 24 24 576 + 1 3 3 6 20 + -2 3 9 6 14 + +0.1308160275 + -12.68819237 -1 + 2 24 24 576 + 1 6 4 14 17 + -2 9 4 11 17 + +0.1499943733 + -0.2481258363 1 + 3 24 24 576 + 1 17 16 20 19 + -2 19 16 20 17 + -2 17 18 18 19 + +0.1582119018 + -2.469789982 -1 + 3 24 24 576 + 1 14 16 21 19 + -2 18 16 21 17 + -2 14 18 17 19 + +0.1593421847 + -6.776432037 1 + 3 24 24 576 + 1 17 6 22 13 + -2 20 6 22 9 + -2 17 10 19 13 + +0.161869213 + -1.436882973 -1 + 3 24 24 576 + 1 17 4 20 15 + -2 19 4 20 9 + -2 17 10 18 15 + +0.1357391328 + 4.233096123 -1 + 3 24 24 576 + 1 20 15 23 18 + -2 22 15 23 16 + -2 20 17 21 18 + +0.213316679 + -8.952729225 -1 + 3 24 24 576 + 1 20 2 23 21 + -2 22 2 23 11 + -2 20 12 21 21 + +0.1300020814 + -0.3365398347 -1 + 3 24 24 576 + 1 14 12 17 15 + -2 16 12 17 13 + -2 14 14 15 15 + +0.1359251142 + 8.803801537 -1 + 3 24 24 576 + 1 17 4 22 17 + -2 20 4 22 10 + -2 17 11 19 17 + +0.1762256175 + -21.34016991 -1 + 3 24 24 576 + 1 2 2 5 21 + -2 4 2 5 11 + -2 2 12 3 21 + +0.1566137075 + -7.738643646 1 + 3 24 24 576 + 1 16 3 19 14 + -2 18 3 19 8 + -2 16 9 17 14 + +0.1468746662 + -6.89965868 -1 + 2 24 24 576 + 1 11 2 16 19 + -2 13 2 14 19 + +0.1472674757 + -4.894465446 1 + 2 24 24 576 + 1 9 14 14 21 + -2 11 14 12 21 + +0.1296035051 + 8.241336823 1 + 2 24 24 576 + 1 10 12 13 17 + -2 10 14 13 15 + +0.1577442735 + -10.04230785 1 + 2 24 24 576 + 1 10 12 13 16 + -1 10 17 13 21 + +0.1484559774 + -9.928046227 -1 + 2 24 24 576 + 1 9 5 14 23 + -2 11 5 12 23 + +0.1218285933 + -8.69196701 1 + 2 24 24 576 + 1 8 0 9 6 + -1 10 0 11 6 + +0.1532031 + 13.72078419 1 + 2 24 24 576 + 1 9 7 14 12 + -2 11 7 12 12 + +0.1578324884 + 5.071394444 1 + 3 24 24 576 + 1 17 5 20 20 + -2 19 5 20 12 + -2 17 13 18 20 + +0.2318713516 + -4.728467464 1 + 3 24 24 576 + 1 16 14 19 21 + -2 18 14 19 17 + -2 16 18 17 21 + +0.2033432126 + -7.114416599 -1 + 3 24 24 576 + 1 15 13 20 22 + -2 18 13 20 17 + -2 15 18 17 22 + +0.194326967 + -9.291861534 1 + 2 24 24 576 + 1 14 3 15 16 + -1 16 3 17 16 + +0.1382730454 + 6.139320374 1 + 2 24 24 576 + 1 7 15 13 17 + -2 7 16 13 16 + +0.1553305984 + 6.369015217 -1 + 2 24 24 576 + 1 8 8 14 10 + -2 8 9 14 9 + +0.1458283067 + 16.18762016 1 + 2 24 24 576 + 1 4 8 20 10 + -1 4 11 20 13 + +0.1540144533 + -0.8603397012 1 + 2 24 24 576 + 1 15 13 20 14 + -1 15 15 20 16 + +0.137492612 + 2.173973322 1 + 2 24 24 576 + 1 14 17 16 23 + -2 15 17 15 23 + +0.1134924665 + 1.616067886 1 + 3 24 24 576 + 1 6 17 11 20 + -2 9 17 11 18 + -2 6 19 8 20 + +0.1178471372 + -1.04425025 -1 + 3 24 24 576 + 1 6 16 13 19 + -2 10 16 13 17 + -2 6 18 9 19 + +0.1321151704 + 2.901936769 -1 + 3 24 24 576 + 1 13 9 20 12 + -2 17 9 20 10 + -2 13 11 16 12 + +0.1474448442 + -13.75936413 -1 + 2 24 24 576 + 1 9 14 15 22 + -2 9 17 15 19 + +0.1527835727 + -0.743221581 1 + 3 24 24 576 + 1 16 13 21 16 + -2 19 13 21 14 + -2 16 15 18 16 + +0.1223786101 + -5.208832741 -1 + 3 24 24 576 + 1 12 15 19 22 + -2 16 15 19 18 + -2 12 19 15 22 + +0.1139300242 + 8.594884872 1 + 2 24 24 576 + 1 6 15 15 16 + -1 6 17 15 18 + +0.145198524 + -6.107604027 1 + 3 24 24 576 + 1 16 6 23 9 + -2 20 6 23 7 + -2 16 8 19 9 + +0.1319779009 + 2.799334288 1 + 2 24 24 576 + 1 15 10 22 11 + -1 15 12 22 13 + +0.1150712371 + -0.2634824812 -1 + 3 24 24 576 + 1 12 7 23 10 + -2 18 7 23 8 + -2 12 9 17 10 + +0.1361142844 + -21.34299469 -1 + 2 24 24 576 + 1 0 6 23 14 + -1 0 15 23 23 + +0.1514596045 + -2.716033936 1 + 2 24 24 576 + 1 1 15 5 16 + -1 1 17 5 18 + +0.1402712613 + 7.612069607 1 + 3 24 24 576 + 1 15 16 20 21 + -2 18 16 20 18 + -2 15 19 17 21 + +0.150672555 + -4.721642971 1 + 3 24 24 576 + 1 16 5 21 12 + -2 19 5 21 8 + -2 16 9 18 12 + +0.1595900208 + 5.727178097 1 + 3 24 24 576 + 1 17 1 22 8 + -2 20 1 22 4 + -2 17 5 19 8 + +0.1786780655 + -8.962378502 1 + 3 24 24 576 + 1 16 2 23 13 + -2 20 2 23 7 + -2 16 8 19 13 + +0.2523541152 + -3.744885921 -1 + 3 24 24 576 + 1 16 1 23 12 + -2 20 1 23 6 + -2 16 7 19 12 + +0.1798386574 + -4.41561079 1 + 3 24 24 576 + 1 16 2 21 13 + -2 19 2 21 7 + -2 16 8 18 13 + +0.2343240827 + -2.227628708 -1 + 3 24 24 576 + 1 15 4 22 11 + -2 19 4 22 7 + -2 15 8 18 11 + +0.134945333 + -4.771569729 1 + 3 24 24 576 + 1 5 10 18 13 + -2 12 10 18 11 + -2 5 12 11 13 + +0.1409935355 + 27.55716324 1 + 2 24 24 576 + 1 16 11 18 19 + -1 19 11 21 19 + +0.1305172145 + -1.136691809 1 + 3 24 24 576 + 1 16 2 19 13 + -2 18 2 19 7 + -2 16 8 17 13 + +0.1284634173 + 3.150273323 -1 + 3 24 24 576 + 1 16 0 19 17 + -2 18 0 19 8 + -2 16 9 17 17 + +0.1264732778 + -0.7077293992 -1 + 2 24 24 576 + 1 9 16 16 21 + -2 9 18 16 19 + +0.1183684617 + -30.49018097 -1 + 2 24 24 576 + 1 3 6 23 9 + -1 3 10 23 13 + +0.1371006072 + -2.910996675 1 + 2 24 24 576 + 1 10 6 13 9 + -1 10 10 13 13 + +0.1272467077 + 7.200618267 1 + 3 24 24 576 + 1 4 3 13 12 + -2 9 3 13 7 + -2 4 8 8 12 + +0.1550739408 + -0.08743783832 1 + 3 24 24 576 + 1 16 0 21 15 + -2 19 0 21 7 + -2 16 8 18 15 + +0.1704866737 + -1.819090605 -1 + 3 24 24 576 + 1 15 1 22 18 + -2 19 1 22 9 + -2 15 10 18 18 + +0.1593307853 + -2.09850812 1 + 3 24 24 576 + 1 15 14 20 19 + -2 18 14 20 16 + -2 15 17 17 19 + +0.1624698937 + -3.192481995 -1 + 3 24 24 576 + 1 13 13 22 20 + -2 18 13 22 16 + -2 13 17 17 20 + +0.1440441757 + -2.075906277 -1 + 2 24 24 576 + 1 1 2 4 6 + -1 1 7 4 11 + +0.1317631453 + 2.646075726 1 + 2 24 24 576 + 1 16 8 18 11 + -1 19 8 21 11 + +0.1298788935 + -12.79567814 -1 + 2 24 24 576 + 1 2 12 10 23 + -2 5 12 7 23 + +0.1348698884 + 3.376088858 -1 + 3 24 24 576 + 1 17 2 22 9 + -2 20 2 22 5 + -2 17 6 19 9 + +0.1404172778 + 0.393555969 1 + 2 24 24 576 + 1 16 4 21 5 + -1 16 6 21 7 + +0.1347492933 + 0.7531275153 -1 + 3 24 24 576 + 1 15 9 22 14 + -2 19 9 22 11 + -2 15 12 18 14 + +0.1376582682 + 3.125689745 1 + 3 24 24 576 + 1 15 6 22 15 + -2 19 6 22 10 + -2 15 11 18 15 + +0.1566267461 + -8.087999344 1 + 3 24 24 576 + 1 15 12 22 19 + -2 19 12 22 15 + -2 15 16 18 19 + +0.1471251547 + -3.476219177 -1 + 2 24 24 576 + 1 16 4 17 16 + -1 18 4 19 16 + +0.1266518682 + -4.004198551 -1 + 2 24 24 576 + 1 20 0 22 6 + -2 21 0 21 6 + +0.1194090322 + 2.908630371 -1 + 3 24 24 576 + 1 15 8 22 11 + -2 19 8 22 9 + -2 15 10 18 11 + +0.1821484268 + -30.88399506 -1 + 2 24 24 576 + 1 1 7 5 14 + -1 1 15 5 22 + +0.148224026 + -5.596021652 1 + 3 24 24 576 + 1 15 7 22 12 + -2 19 7 22 9 + -2 15 10 18 12 + +0.1406739056 + 3.098838568 -1 + 2 24 24 576 + 1 7 5 9 9 + -2 8 5 8 9 + +0.1514930278 + -4.026885986 -1 + 2 24 24 576 + 1 18 19 20 22 + -2 19 19 19 22 + +0.1339061856 + -2.103626251 -1 + 3 24 24 576 + 1 14 7 21 10 + -2 18 7 21 8 + -2 14 9 17 10 + +0.1300897896 + 10.72789192 -1 + 2 24 24 576 + 1 12 8 16 11 + -1 17 8 21 11 + +0.1282690614 + 3.225035906 1 + 2 24 24 576 + 1 11 11 12 18 + -1 13 11 14 18 + +0.132627517 + 3.220269442 -1 + 3 24 24 576 + 1 15 6 20 11 + -2 18 6 20 8 + -2 15 9 17 11 + +0.1621503234 + 1.694538236 1 + 2 24 24 576 + 1 8 7 9 11 + -1 10 7 11 11 + +0.1217400655 + -2.311740875 1 + 2 24 24 576 + 1 9 15 14 18 + -2 11 15 12 18 + +0.1278354079 + -26.6254425 -1 + 2 24 24 576 + 1 9 0 13 23 + -2 9 8 13 15 + +0.1529033631 + 8.062362671 -1 + 2 24 24 576 + 1 6 14 7 21 + -1 8 14 9 21 + +0.1519220769 + -3.896558285 -1 + 2 24 24 576 + 1 8 16 12 18 + -2 8 17 12 17 + +0.1455694437 + 3.541232347 1 + 3 24 24 576 + 1 15 5 20 18 + -2 18 5 20 11 + -2 15 12 17 18 + +0.1935080737 + -0.2298560739 1 + 3 24 24 576 + 1 15 1 18 18 + -2 17 1 18 9 + -2 15 10 16 18 + +0.1920447499 + 8.565554619 -1 + 3 24 24 576 + 1 14 4 21 19 + -2 18 4 21 11 + -2 14 12 17 19 + +0.1295344383 + -2.535315037 -1 + 3 24 24 576 + 1 14 4 19 17 + -2 17 4 19 10 + -2 14 11 16 17 + +0.1217804551 + 18.44454956 -1 + 2 24 24 576 + 1 5 9 22 12 + -2 11 9 16 12 + +0.1432065517 + -21.96689224 -1 + 2 24 24 576 + 1 18 7 20 22 + -1 21 7 23 22 + +0.1373674721 + 0.8773174882 1 + 2 24 24 576 + 1 3 11 9 13 + -1 3 14 9 16 + +0.1266694665 + 13.21835995 1 + 2 24 24 576 + 1 10 5 15 13 + -2 12 5 13 13 + +0.1316958964 + -3.541232347 1 + 3 24 24 576 + 1 15 0 22 19 + -2 19 0 22 9 + -2 15 10 18 19 + +0.1304656118 + -6.039418221 -1 + 3 24 24 576 + 1 15 3 18 20 + -2 17 3 18 11 + -2 15 12 16 20 + +0.1883030981 + -13.92271042 1 + 3 24 24 576 + 1 14 15 21 22 + -2 18 15 21 18 + -2 14 19 17 22 + +0.1535421908 + -11.18609619 -1 + 3 24 24 576 + 1 13 16 22 21 + -2 18 16 22 18 + -2 13 19 17 21 + +0.1570035964 + -0.9180972576 1 + 3 24 24 576 + 1 20 3 23 22 + -2 22 3 23 12 + -2 20 13 21 22 + +0.1593993008 + -3.142359734 -1 + 3 24 24 576 + 1 14 14 23 21 + -2 19 14 23 17 + -2 14 18 18 21 + +0.1640470624 + -0.1239763275 -1 + 3 24 24 576 + 1 14 12 21 15 + -2 18 12 21 13 + -2 14 14 17 15 + +0.194219619 + -1.951194048 1 + 3 24 24 576 + 1 14 11 21 14 + -2 18 11 21 12 + -2 14 13 17 14 + +0.1713072956 + 5.921140671 -1 + 3 24 24 576 + 1 17 3 20 10 + -2 19 3 20 6 + -2 17 7 18 10 + +0.23473306 + -20.37709618 -1 + 2 24 24 576 + 1 17 7 21 14 + -1 17 15 21 22 + +0.1424452811 + -9.902217865 -1 + 3 24 24 576 + 1 14 6 23 13 + -2 19 6 23 9 + -2 14 10 18 13 + +0.1432147324 + -10.27263546 1 + 2 24 24 576 + 1 5 15 16 17 + -1 5 18 16 20 + +0.1452775151 + 0.4934283793 -1 + 3 24 24 576 + 1 14 11 17 14 + -2 16 11 17 12 + -2 14 13 15 14 + +0.1796402484 + 4.212433815 1 + 3 24 24 576 + 1 14 7 17 18 + -2 16 7 17 12 + -2 14 13 15 18 + +0.1361229569 + -2.239859581 1 + 2 24 24 576 + 1 4 19 19 21 + -2 4 20 19 20 + +0.1284426153 + -1.375519872 -1 + 2 24 24 576 + 1 13 15 16 20 + -2 13 17 16 18 + +0.1227809191 + -7.133370399 1 + 2 24 24 576 + 1 2 6 5 7 + -1 2 8 5 9 + +0.1431200951 + 11.49919891 1 + 3 24 24 576 + 1 0 0 3 21 + -2 2 0 3 10 + -2 0 11 1 21 + +0.1272643209 + -1.525637269 1 + 3 24 24 576 + 1 9 0 12 3 + -2 11 0 12 1 + -2 9 2 10 3 + +0.1429924518 + -22.14221001 -1 + 2 24 24 576 + 1 4 4 17 12 + -2 4 7 17 9 + +0.1468132287 + -3.550779581 1 + 3 24 24 576 + 1 8 14 11 21 + -2 10 14 11 17 + -2 8 18 9 21 + +0.1337887198 + 2.98199439 1 + 3 24 24 576 + 1 5 13 8 20 + -2 7 13 8 16 + -2 5 17 6 20 + +0.1127674878 + -2.279896736 -1 + 2 24 24 576 + 1 9 17 12 19 + -1 9 20 12 22 + +0.1325283647 + -1.028730989 1 + 2 24 24 576 + 1 3 18 10 19 + -1 3 20 10 21 + +0.1322279572 + 19.52869415 1 + 3 24 24 576 + 1 18 7 23 20 + -2 21 7 23 13 + -2 18 14 20 20 + +0.1430575103 + 3.721830606 -1 + 2 24 24 576 + 1 3 17 8 18 + -1 3 19 8 20 + +0.1245087683 + 7.290350914 1 + 2 24 24 576 + 1 20 14 21 19 + -1 22 14 23 19 + +0.1441856474 + 12.48618698 -1 + 3 24 24 576 + 1 17 0 22 9 + -2 20 0 22 4 + -2 17 5 19 9 + +0.1238856688 + -4.927391052 -1 + 3 24 24 576 + 1 10 3 13 22 + -2 12 3 13 12 + -2 10 13 11 22 + +0.126201272 + -1.186630607 -1 + 3 24 24 576 + 1 15 0 18 23 + -2 17 0 18 11 + -2 15 12 16 23 + +0.1482546479 + -6.411347389 -1 + 3 24 24 576 + 1 14 3 23 12 + -2 19 3 23 7 + -2 14 8 18 12 + +0.1783664674 + -22.79211235 1 + 2 24 24 576 + 1 7 2 16 7 + -1 7 8 16 13 + +0.1693959832 + -8.041928291 -1 + 2 24 24 576 + 1 20 2 23 6 + -1 20 7 23 11 + +0.1292402297 + 21.5456562 -1 + 2 24 24 576 + 1 17 5 20 13 + -1 17 14 20 22 + +0.139576301 + -5.957430363 -1 + 3 24 24 576 + 1 9 2 18 13 + -2 14 2 18 7 + -2 9 8 13 13 + +0.1524547338 + -9.315910339 1 + 2 24 24 576 + 1 13 5 16 13 + -1 13 14 16 22 + +0.1324026138 + -2.205949545 -1 + 2 24 24 576 + 1 10 14 14 15 + -1 10 16 14 17 + +0.140716508 + 0.7674127817 1 + 2 24 24 576 + 1 8 12 12 14 + -1 8 15 12 17 + +0.1249998063 + 13.71582031 -1 + 2 24 24 576 + 1 8 11 19 13 + -1 8 14 19 16 + +0.1375581324 + 6.449120522 1 + 3 24 24 576 + 1 11 19 20 22 + -2 16 19 20 20 + -2 11 21 15 22 + +0.1450248659 + -2.184671879 1 + 2 24 24 576 + 1 19 13 23 14 + -1 19 15 23 16 + +0.1381693631 + -0.2680408955 1 + 3 24 24 576 + 1 14 5 19 8 + -2 17 5 19 6 + -2 14 7 16 8 + +0.1690591723 + -7.948595047 -1 + 2 24 24 576 + 1 9 14 12 19 + -2 9 16 12 17 + +0.1505282819 + -3.717695236 1 + 2 24 24 576 + 1 10 0 11 3 + -1 12 0 13 3 + +0.1471279114 + -8.861205101 -1 + 2 24 24 576 + 1 3 5 10 6 + -1 3 7 10 8 + +0.1262271106 + 3.475193739 1 + 2 24 24 576 + 1 5 4 9 5 + -1 5 6 9 7 + +0.1276036501 + 14.3955183 -1 + 3 24 24 576 + 1 12 3 21 8 + -2 17 3 21 5 + -2 12 6 16 8 + +0.1463623494 + 0.8259471655 -1 + 2 24 24 576 + 1 5 0 9 11 + -2 5 4 9 7 + +0.1255773753 + -0.4359073341 -1 + 3 24 24 576 + 1 4 2 7 5 + -2 6 2 7 3 + -2 4 4 5 5 + +0.1166736782 + -4.085764885 1 + 3 24 24 576 + 1 4 1 13 4 + -2 9 1 13 2 + -2 4 3 8 4 + +0.142436415 + 20.47479248 1 + 2 24 24 576 + 1 5 0 17 1 + -1 5 2 17 3 + + diff --git a/icon/OKg12x12.gif b/icon/OKg12x12.gif new file mode 100644 index 00000000..60cbfedc Binary files /dev/null and b/icon/OKg12x12.gif differ diff --git a/icon/OKn12x12.gif b/icon/OKn12x12.gif new file mode 100644 index 00000000..b376b534 Binary files /dev/null and b/icon/OKn12x12.gif differ diff --git a/icon/OKr12x12.gif b/icon/OKr12x12.gif new file mode 100644 index 00000000..cb4576e4 Binary files /dev/null and b/icon/OKr12x12.gif differ diff --git a/icon/OKv12x12.gif b/icon/OKv12x12.gif new file mode 100644 index 00000000..cbcf61e7 Binary files /dev/null and b/icon/OKv12x12.gif differ diff --git a/icon/SWADroid100x200.png b/icon/SWADroid100x200.png new file mode 100644 index 00000000..d0dc0a3c Binary files /dev/null and b/icon/SWADroid100x200.png differ diff --git a/icon/SWADroid120x200.png b/icon/SWADroid120x200.png new file mode 100644 index 00000000..47106dcd Binary files /dev/null and b/icon/SWADroid120x200.png differ diff --git a/icon/SWADroid200x300.png b/icon/SWADroid200x300.png new file mode 100644 index 00000000..93896548 Binary files /dev/null and b/icon/SWADroid200x300.png differ diff --git a/icon/SWADroid200x400.png b/icon/SWADroid200x400.png new file mode 100644 index 00000000..acb5d7d4 Binary files /dev/null and b/icon/SWADroid200x400.png differ diff --git a/icon/SWADroid460x800.png b/icon/SWADroid460x800.png new file mode 100644 index 00000000..dcb083cd Binary files /dev/null and b/icon/SWADroid460x800.png differ diff --git a/icon/_.gif b/icon/_.gif new file mode 100644 index 00000000..6bbcaa02 Binary files /dev/null and b/icon/_.gif differ diff --git a/icon/agplv3-155x51.png b/icon/agplv3-155x51.png new file mode 100644 index 00000000..85a4add7 Binary files /dev/null and b/icon/agplv3-155x51.png differ diff --git a/icon/agplv3-88x31.png b/icon/agplv3-88x31.png new file mode 100644 index 00000000..1035191f Binary files /dev/null and b/icon/agplv3-88x31.png differ diff --git a/icon/alarm_off16x16.gif b/icon/alarm_off16x16.gif new file mode 100644 index 00000000..fcd0956a Binary files /dev/null and b/icon/alarm_off16x16.gif differ diff --git a/icon/alarm_on16x16.gif b/icon/alarm_on16x16.gif new file mode 100644 index 00000000..3a09b026 Binary files /dev/null and b/icon/alarm_on16x16.gif differ diff --git a/icon/arroba16x16.gif b/icon/arroba16x16.gif new file mode 100644 index 00000000..1da179fc Binary files /dev/null and b/icon/arroba16x16.gif differ diff --git a/icon/arrowgreen16x12.gif b/icon/arrowgreen16x12.gif new file mode 100644 index 00000000..019f31ab Binary files /dev/null and b/icon/arrowgreen16x12.gif differ diff --git a/icon/arrowred16x12.gif b/icon/arrowred16x12.gif new file mode 100644 index 00000000..04d284b9 Binary files /dev/null and b/icon/arrowred16x12.gif differ diff --git a/icon/ballon16x16.gif b/icon/ballon16x16.gif new file mode 100644 index 00000000..ae269cca Binary files /dev/null and b/icon/ballon16x16.gif differ diff --git a/icon/bb1x1.gif b/icon/bb1x1.gif new file mode 100644 index 00000000..e55809e7 Binary files /dev/null and b/icon/bb1x1.gif differ diff --git a/icon/blue1x36.gif b/icon/blue1x36.gif new file mode 100644 index 00000000..5b1ff41d Binary files /dev/null and b/icon/blue1x36.gif differ diff --git a/icon/c1x14.gif b/icon/c1x14.gif new file mode 100644 index 00000000..d37c3db9 Binary files /dev/null and b/icon/c1x14.gif differ diff --git a/icon/c1x16.gif b/icon/c1x16.gif new file mode 100644 index 00000000..888a44d5 Binary files /dev/null and b/icon/c1x16.gif differ diff --git a/icon/c8x1.gif b/icon/c8x1.gif new file mode 100644 index 00000000..2f3b0272 Binary files /dev/null and b/icon/c8x1.gif differ diff --git a/icon/cake128x128.gif b/icon/cake128x128.gif new file mode 100644 index 00000000..11886219 Binary files /dev/null and b/icon/cake128x128.gif differ diff --git a/icon/cake128x128.tif b/icon/cake128x128.tif new file mode 100644 index 00000000..f280f02c Binary files /dev/null and b/icon/cake128x128.tif differ diff --git a/icon/card16x16.gif b/icon/card16x16.gif new file mode 100644 index 00000000..f1522ba1 Binary files /dev/null and b/icon/card16x16.gif differ diff --git a/icon/cc-by-sa.png b/icon/cc-by-sa.png new file mode 100644 index 00000000..f0a944e0 Binary files /dev/null and b/icon/cc-by-sa.png differ diff --git a/icon/central_left_8x800.gif b/icon/central_left_8x800.gif new file mode 100644 index 00000000..598f94ac Binary files /dev/null and b/icon/central_left_8x800.gif differ diff --git a/icon/central_right_8x800.gif b/icon/central_right_8x800.gif new file mode 100644 index 00000000..a127c68a Binary files /dev/null and b/icon/central_right_8x800.gif differ diff --git a/icon/centre/agr.una.py16x16.gif b/icon/centre/agr.una.py16x16.gif new file mode 100644 index 00000000..443327de Binary files /dev/null and b/icon/centre/agr.una.py16x16.gif differ diff --git a/icon/centre/agr.una.py32x32.gif b/icon/centre/agr.una.py32x32.gif new file mode 100644 index 00000000..2d8965f0 Binary files /dev/null and b/icon/centre/agr.una.py32x32.gif differ diff --git a/icon/centre/agr.una.py64x64.gif b/icon/centre/agr.una.py64x64.gif new file mode 100644 index 00000000..483eafc5 Binary files /dev/null and b/icon/centre/agr.una.py64x64.gif differ diff --git a/icon/centre/arq.una.py16x16.gif b/icon/centre/arq.una.py16x16.gif new file mode 100644 index 00000000..57c7ff41 Binary files /dev/null and b/icon/centre/arq.una.py16x16.gif differ diff --git a/icon/centre/arq.una.py32x32.gif b/icon/centre/arq.una.py32x32.gif new file mode 100644 index 00000000..b9ac950b Binary files /dev/null and b/icon/centre/arq.una.py32x32.gif differ diff --git a/icon/centre/arq.una.py64x64.gif b/icon/centre/arq.una.py64x64.gif new file mode 100644 index 00000000..ab2c236e Binary files /dev/null and b/icon/centre/arq.una.py64x64.gif differ diff --git a/icon/centre/arqtec16x16.gif b/icon/centre/arqtec16x16.gif new file mode 100644 index 00000000..57f0f7da Binary files /dev/null and b/icon/centre/arqtec16x16.gif differ diff --git a/icon/centre/arqtec32x32.gif b/icon/centre/arqtec32x32.gif new file mode 100644 index 00000000..4d06e400 Binary files /dev/null and b/icon/centre/arqtec32x32.gif differ diff --git a/icon/centre/arqtec64x64.gif b/icon/centre/arqtec64x64.gif new file mode 100644 index 00000000..acc0b77e Binary files /dev/null and b/icon/centre/arqtec64x64.gif differ diff --git a/icon/centre/arqui16x16.gif b/icon/centre/arqui16x16.gif new file mode 100644 index 00000000..273ec701 Binary files /dev/null and b/icon/centre/arqui16x16.gif differ diff --git a/icon/centre/arqui32x32.gif b/icon/centre/arqui32x32.gif new file mode 100644 index 00000000..c5184837 Binary files /dev/null and b/icon/centre/arqui32x32.gif differ diff --git a/icon/centre/arqui64x64.gif b/icon/centre/arqui64x64.gif new file mode 100644 index 00000000..3a3ffea5 Binary files /dev/null and b/icon/centre/arqui64x64.gif differ diff --git a/icon/centre/bellartes16x16.gif b/icon/centre/bellartes16x16.gif new file mode 100644 index 00000000..b6606119 Binary files /dev/null and b/icon/centre/bellartes16x16.gif differ diff --git a/icon/centre/bellartes32x32.gif b/icon/centre/bellartes32x32.gif new file mode 100644 index 00000000..9996fa74 Binary files /dev/null and b/icon/centre/bellartes32x32.gif differ diff --git a/icon/centre/bellartes64x64.gif b/icon/centre/bellartes64x64.gif new file mode 100644 index 00000000..cdeaeb34 Binary files /dev/null and b/icon/centre/bellartes64x64.gif differ diff --git a/icon/centre/biblio16x16.gif b/icon/centre/biblio16x16.gif new file mode 100644 index 00000000..8e8b2285 Binary files /dev/null and b/icon/centre/biblio16x16.gif differ diff --git a/icon/centre/biblio32x32.gif b/icon/centre/biblio32x32.gif new file mode 100644 index 00000000..02d8b276 Binary files /dev/null and b/icon/centre/biblio32x32.gif differ diff --git a/icon/centre/biblio64x64.gif b/icon/centre/biblio64x64.gif new file mode 100644 index 00000000..dc7d5c6e Binary files /dev/null and b/icon/centre/biblio64x64.gif differ diff --git a/icon/centre/caminos16x16.gif b/icon/centre/caminos16x16.gif new file mode 100644 index 00000000..3910c799 Binary files /dev/null and b/icon/centre/caminos16x16.gif differ diff --git a/icon/centre/caminos32x32.gif b/icon/centre/caminos32x32.gif new file mode 100644 index 00000000..99d06d6d Binary files /dev/null and b/icon/centre/caminos32x32.gif differ diff --git a/icon/centre/caminos64x64.gif b/icon/centre/caminos64x64.gif new file mode 100644 index 00000000..606aba33 Binary files /dev/null and b/icon/centre/caminos64x64.gif differ diff --git a/icon/centre/cevug16x16.gif b/icon/centre/cevug16x16.gif new file mode 100644 index 00000000..258205f2 Binary files /dev/null and b/icon/centre/cevug16x16.gif differ diff --git a/icon/centre/cevug32x32.gif b/icon/centre/cevug32x32.gif new file mode 100644 index 00000000..2aa1ff2d Binary files /dev/null and b/icon/centre/cevug32x32.gif differ diff --git a/icon/centre/cevug64x64.gif b/icon/centre/cevug64x64.gif new file mode 100644 index 00000000..b9688eb8 Binary files /dev/null and b/icon/centre/cevug64x64.gif differ diff --git a/icon/centre/cevuna.una.py16x16.gif b/icon/centre/cevuna.una.py16x16.gif new file mode 100644 index 00000000..775a2af6 Binary files /dev/null and b/icon/centre/cevuna.una.py16x16.gif differ diff --git a/icon/centre/cevuna.una.py32x32.gif b/icon/centre/cevuna.una.py32x32.gif new file mode 100644 index 00000000..087b9b04 Binary files /dev/null and b/icon/centre/cevuna.una.py32x32.gif differ diff --git a/icon/centre/cevuna.una.py64x64.gif b/icon/centre/cevuna.una.py64x64.gif new file mode 100644 index 00000000..0c7abc4e Binary files /dev/null and b/icon/centre/cevuna.una.py64x64.gif differ diff --git a/icon/centre/cicode16x16.gif b/icon/centre/cicode16x16.gif new file mode 100644 index 00000000..c251e07d Binary files /dev/null and b/icon/centre/cicode16x16.gif differ diff --git a/icon/centre/cicode32x32.gif b/icon/centre/cicode32x32.gif new file mode 100644 index 00000000..b4b7fcad Binary files /dev/null and b/icon/centre/cicode32x32.gif differ diff --git a/icon/centre/cicode64x64.gif b/icon/centre/cicode64x64.gif new file mode 100644 index 00000000..eaeac854 Binary files /dev/null and b/icon/centre/cicode64x64.gif differ diff --git a/icon/centre/ciencias16x16.gif b/icon/centre/ciencias16x16.gif new file mode 100644 index 00000000..634ff97b Binary files /dev/null and b/icon/centre/ciencias16x16.gif differ diff --git a/icon/centre/ciencias32x32.gif b/icon/centre/ciencias32x32.gif new file mode 100644 index 00000000..c82c11f9 Binary files /dev/null and b/icon/centre/ciencias32x32.gif differ diff --git a/icon/centre/ciencias64x64.gif b/icon/centre/ciencias64x64.gif new file mode 100644 index 00000000..60702b9c Binary files /dev/null and b/icon/centre/ciencias64x64.gif differ diff --git a/icon/centre/clm16x16.gif b/icon/centre/clm16x16.gif new file mode 100644 index 00000000..12c393c8 Binary files /dev/null and b/icon/centre/clm16x16.gif differ diff --git a/icon/centre/clm32x32.gif b/icon/centre/clm32x32.gif new file mode 100644 index 00000000..c16ff488 Binary files /dev/null and b/icon/centre/clm32x32.gif differ diff --git a/icon/centre/clm64x64.gif b/icon/centre/clm64x64.gif new file mode 100644 index 00000000..782fe2e2 Binary files /dev/null and b/icon/centre/clm64x64.gif differ diff --git a/icon/centre/cm16x16.gif b/icon/centre/cm16x16.gif new file mode 100644 index 00000000..61d3a956 Binary files /dev/null and b/icon/centre/cm16x16.gif differ diff --git a/icon/centre/cm32x32.gif b/icon/centre/cm32x32.gif new file mode 100644 index 00000000..0fb4e6fd Binary files /dev/null and b/icon/centre/cm32x32.gif differ diff --git a/icon/centre/cm64x64.gif b/icon/centre/cm64x64.gif new file mode 100644 index 00000000..328b7e64 Binary files /dev/null and b/icon/centre/cm64x64.gif differ diff --git a/icon/centre/cnc.una.py16x16.gif b/icon/centre/cnc.una.py16x16.gif new file mode 100644 index 00000000..840a42f5 Binary files /dev/null and b/icon/centre/cnc.una.py16x16.gif differ diff --git a/icon/centre/cnc.una.py32x32.gif b/icon/centre/cnc.una.py32x32.gif new file mode 100644 index 00000000..9744cfe0 Binary files /dev/null and b/icon/centre/cnc.una.py32x32.gif differ diff --git a/icon/centre/cnc.una.py64x64.gif b/icon/centre/cnc.una.py64x64.gif new file mode 100644 index 00000000..82faf771 Binary files /dev/null and b/icon/centre/cnc.una.py64x64.gif differ diff --git a/icon/centre/conserva16x16.gif b/icon/centre/conserva16x16.gif new file mode 100644 index 00000000..a00a0054 Binary files /dev/null and b/icon/centre/conserva16x16.gif differ diff --git a/icon/centre/conserva32x32.gif b/icon/centre/conserva32x32.gif new file mode 100644 index 00000000..318c12fe Binary files /dev/null and b/icon/centre/conserva32x32.gif differ diff --git a/icon/centre/conserva64x64.gif b/icon/centre/conserva64x64.gif new file mode 100644 index 00000000..9292d48d Binary files /dev/null and b/icon/centre/conserva64x64.gif differ diff --git a/icon/centre/crimi16x16.gif b/icon/centre/crimi16x16.gif new file mode 100644 index 00000000..1a881140 Binary files /dev/null and b/icon/centre/crimi16x16.gif differ diff --git a/icon/centre/crimi32x32.gif b/icon/centre/crimi32x32.gif new file mode 100644 index 00000000..ab0e3dbf Binary files /dev/null and b/icon/centre/crimi32x32.gif differ diff --git a/icon/centre/crimi64x64.gif b/icon/centre/crimi64x64.gif new file mode 100644 index 00000000..2e32c56f Binary files /dev/null and b/icon/centre/crimi64x64.gif differ diff --git a/icon/centre/dcho16x16.gif b/icon/centre/dcho16x16.gif new file mode 100644 index 00000000..0d55c8cf Binary files /dev/null and b/icon/centre/dcho16x16.gif differ diff --git a/icon/centre/dcho32x32.gif b/icon/centre/dcho32x32.gif new file mode 100644 index 00000000..9210710f Binary files /dev/null and b/icon/centre/dcho32x32.gif differ diff --git a/icon/centre/dcho64x64.gif b/icon/centre/dcho64x64.gif new file mode 100644 index 00000000..796b61b7 Binary files /dev/null and b/icon/centre/dcho64x64.gif differ diff --git a/icon/centre/deporte16x16.gif b/icon/centre/deporte16x16.gif new file mode 100644 index 00000000..0e9c5d75 Binary files /dev/null and b/icon/centre/deporte16x16.gif differ diff --git a/icon/centre/deporte32x32.gif b/icon/centre/deporte32x32.gif new file mode 100644 index 00000000..4fec5eaf Binary files /dev/null and b/icon/centre/deporte32x32.gif differ diff --git a/icon/centre/deporte64x64.gif b/icon/centre/deporte64x64.gif new file mode 100644 index 00000000..68bc2a25 Binary files /dev/null and b/icon/centre/deporte64x64.gif differ diff --git a/icon/centre/der.una.py16x16.gif b/icon/centre/der.una.py16x16.gif new file mode 100644 index 00000000..c9cd9325 Binary files /dev/null and b/icon/centre/der.una.py16x16.gif differ diff --git a/icon/centre/der.una.py32x32.gif b/icon/centre/der.una.py32x32.gif new file mode 100644 index 00000000..07acbd95 Binary files /dev/null and b/icon/centre/der.una.py32x32.gif differ diff --git a/icon/centre/der.una.py64x64.gif b/icon/centre/der.una.py64x64.gif new file mode 100644 index 00000000..cd3ab249 Binary files /dev/null and b/icon/centre/der.una.py64x64.gif differ diff --git a/icon/centre/eco.una.py16x16.gif b/icon/centre/eco.una.py16x16.gif new file mode 100644 index 00000000..2504e2ed Binary files /dev/null and b/icon/centre/eco.una.py16x16.gif differ diff --git a/icon/centre/eco.una.py32x32.gif b/icon/centre/eco.una.py32x32.gif new file mode 100644 index 00000000..c1da028c Binary files /dev/null and b/icon/centre/eco.una.py32x32.gif differ diff --git a/icon/centre/eco.una.py64x64.gif b/icon/centre/eco.una.py64x64.gif new file mode 100644 index 00000000..889fc1d3 Binary files /dev/null and b/icon/centre/eco.una.py64x64.gif differ diff --git a/icon/centre/edu16x16.gif b/icon/centre/edu16x16.gif new file mode 100644 index 00000000..16e1ba9c Binary files /dev/null and b/icon/centre/edu16x16.gif differ diff --git a/icon/centre/edu32x32.gif b/icon/centre/edu32x32.gif new file mode 100644 index 00000000..93f68f8b Binary files /dev/null and b/icon/centre/edu32x32.gif differ diff --git a/icon/centre/edu64x64.gif b/icon/centre/edu64x64.gif new file mode 100644 index 00000000..62e2c5e3 Binary files /dev/null and b/icon/centre/edu64x64.gif differ diff --git a/icon/centre/eduhumceuta16x16.gif b/icon/centre/eduhumceuta16x16.gif new file mode 100644 index 00000000..b5fe645a Binary files /dev/null and b/icon/centre/eduhumceuta16x16.gif differ diff --git a/icon/centre/eduhumceuta32x32.gif b/icon/centre/eduhumceuta32x32.gif new file mode 100644 index 00000000..b2b9e659 Binary files /dev/null and b/icon/centre/eduhumceuta32x32.gif differ diff --git a/icon/centre/eduhumceuta64x64.gif b/icon/centre/eduhumceuta64x64.gif new file mode 100644 index 00000000..56cc95d5 Binary files /dev/null and b/icon/centre/eduhumceuta64x64.gif differ diff --git a/icon/centre/ehu16x16.gif b/icon/centre/ehu16x16.gif new file mode 100644 index 00000000..a88935bc Binary files /dev/null and b/icon/centre/ehu16x16.gif differ diff --git a/icon/centre/ehu32x32.gif b/icon/centre/ehu32x32.gif new file mode 100644 index 00000000..1c350080 Binary files /dev/null and b/icon/centre/ehu32x32.gif differ diff --git a/icon/centre/ehu64x64.gif b/icon/centre/ehu64x64.gif new file mode 100644 index 00000000..0b913053 Binary files /dev/null and b/icon/centre/ehu64x64.gif differ diff --git a/icon/centre/enfer16x16.gif b/icon/centre/enfer16x16.gif new file mode 100644 index 00000000..e0ad902e Binary files /dev/null and b/icon/centre/enfer16x16.gif differ diff --git a/icon/centre/enfer32x32.gif b/icon/centre/enfer32x32.gif new file mode 100644 index 00000000..4862e300 Binary files /dev/null and b/icon/centre/enfer32x32.gif differ diff --git a/icon/centre/enfer64x64.gif b/icon/centre/enfer64x64.gif new file mode 100644 index 00000000..a0afeb48 Binary files /dev/null and b/icon/centre/enfer64x64.gif differ diff --git a/icon/centre/enferceuta16x16.gif b/icon/centre/enferceuta16x16.gif new file mode 100644 index 00000000..771f1c11 Binary files /dev/null and b/icon/centre/enferceuta16x16.gif differ diff --git a/icon/centre/enferceuta32x32.gif b/icon/centre/enferceuta32x32.gif new file mode 100644 index 00000000..e4ed660a Binary files /dev/null and b/icon/centre/enferceuta32x32.gif differ diff --git a/icon/centre/enferceuta64x64.gif b/icon/centre/enferceuta64x64.gif new file mode 100644 index 00000000..d6bd1a0a Binary files /dev/null and b/icon/centre/enferceuta64x64.gif differ diff --git a/icon/centre/enfermelilla16x16.gif b/icon/centre/enfermelilla16x16.gif new file mode 100644 index 00000000..d96fffbc Binary files /dev/null and b/icon/centre/enfermelilla16x16.gif differ diff --git a/icon/centre/enfermelilla32x32.gif b/icon/centre/enfermelilla32x32.gif new file mode 100644 index 00000000..f4569a7e Binary files /dev/null and b/icon/centre/enfermelilla32x32.gif differ diff --git a/icon/centre/enfermelilla64x64.gif b/icon/centre/enfermelilla64x64.gif new file mode 100644 index 00000000..9c0736e1 Binary files /dev/null and b/icon/centre/enfermelilla64x64.gif differ diff --git a/icon/centre/ep16x16.gif b/icon/centre/ep16x16.gif new file mode 100644 index 00000000..466cc108 Binary files /dev/null and b/icon/centre/ep16x16.gif differ diff --git a/icon/centre/ep32x32.gif b/icon/centre/ep32x32.gif new file mode 100644 index 00000000..31ff8e32 Binary files /dev/null and b/icon/centre/ep32x32.gif differ diff --git a/icon/centre/ep64x64.gif b/icon/centre/ep64x64.gif new file mode 100644 index 00000000..b21dda52 Binary files /dev/null and b/icon/centre/ep64x64.gif differ diff --git a/icon/centre/etsiit16x16.gif b/icon/centre/etsiit16x16.gif new file mode 100644 index 00000000..5d372acc Binary files /dev/null and b/icon/centre/etsiit16x16.gif differ diff --git a/icon/centre/etsiit32x32.gif b/icon/centre/etsiit32x32.gif new file mode 100644 index 00000000..5d8f72f9 Binary files /dev/null and b/icon/centre/etsiit32x32.gif differ diff --git a/icon/centre/etsiit64x64.gif b/icon/centre/etsiit64x64.gif new file mode 100644 index 00000000..d2161198 Binary files /dev/null and b/icon/centre/etsiit64x64.gif differ diff --git a/icon/centre/facen.una.py16x16.gif b/icon/centre/facen.una.py16x16.gif new file mode 100644 index 00000000..6257790e Binary files /dev/null and b/icon/centre/facen.una.py16x16.gif differ diff --git a/icon/centre/facen.una.py32x32.gif b/icon/centre/facen.una.py32x32.gif new file mode 100644 index 00000000..560b0c7f Binary files /dev/null and b/icon/centre/facen.una.py32x32.gif differ diff --git a/icon/centre/facen.una.py64x64.gif b/icon/centre/facen.una.py64x64.gif new file mode 100644 index 00000000..07088a2a Binary files /dev/null and b/icon/centre/facen.una.py64x64.gif differ diff --git a/icon/centre/farmacia16x16.gif b/icon/centre/farmacia16x16.gif new file mode 100644 index 00000000..2dc63988 Binary files /dev/null and b/icon/centre/farmacia16x16.gif differ diff --git a/icon/centre/farmacia32x32.gif b/icon/centre/farmacia32x32.gif new file mode 100644 index 00000000..a1421ad8 Binary files /dev/null and b/icon/centre/farmacia32x32.gif differ diff --git a/icon/centre/farmacia64x64.gif b/icon/centre/farmacia64x64.gif new file mode 100644 index 00000000..be20b4d7 Binary files /dev/null and b/icon/centre/farmacia64x64.gif differ diff --git a/icon/centre/fccee16x16.gif b/icon/centre/fccee16x16.gif new file mode 100644 index 00000000..3961ec3e Binary files /dev/null and b/icon/centre/fccee16x16.gif differ diff --git a/icon/centre/fccee32x32.gif b/icon/centre/fccee32x32.gif new file mode 100644 index 00000000..29e88525 Binary files /dev/null and b/icon/centre/fccee32x32.gif differ diff --git a/icon/centre/fccee64x64.gif b/icon/centre/fccee64x64.gif new file mode 100644 index 00000000..195bd7fe Binary files /dev/null and b/icon/centre/fccee64x64.gif differ diff --git a/icon/centre/fcq.una.py16x16.gif b/icon/centre/fcq.una.py16x16.gif new file mode 100644 index 00000000..03c213a1 Binary files /dev/null and b/icon/centre/fcq.una.py16x16.gif differ diff --git a/icon/centre/fcq.una.py32x32.gif b/icon/centre/fcq.una.py32x32.gif new file mode 100644 index 00000000..3a09504b Binary files /dev/null and b/icon/centre/fcq.una.py32x32.gif differ diff --git a/icon/centre/fcq.una.py64x64.gif b/icon/centre/fcq.una.py64x64.gif new file mode 100644 index 00000000..0e40aa0a Binary files /dev/null and b/icon/centre/fcq.una.py64x64.gif differ diff --git a/icon/centre/fil.una.py16x16.gif b/icon/centre/fil.una.py16x16.gif new file mode 100644 index 00000000..48e1b342 Binary files /dev/null and b/icon/centre/fil.una.py16x16.gif differ diff --git a/icon/centre/fil.una.py32x32.gif b/icon/centre/fil.una.py32x32.gif new file mode 100644 index 00000000..71b6e15a Binary files /dev/null and b/icon/centre/fil.una.py32x32.gif differ diff --git a/icon/centre/fil.una.py64x64.gif b/icon/centre/fil.una.py64x64.gif new file mode 100644 index 00000000..fe643e3f Binary files /dev/null and b/icon/centre/fil.una.py64x64.gif differ diff --git a/icon/centre/filetras16x16.gif b/icon/centre/filetras16x16.gif new file mode 100644 index 00000000..a2c0a44f Binary files /dev/null and b/icon/centre/filetras16x16.gif differ diff --git a/icon/centre/filetras32x32.gif b/icon/centre/filetras32x32.gif new file mode 100644 index 00000000..1d2f2824 Binary files /dev/null and b/icon/centre/filetras32x32.gif differ diff --git a/icon/centre/filetras64x64.gif b/icon/centre/filetras64x64.gif new file mode 100644 index 00000000..446355b0 Binary files /dev/null and b/icon/centre/filetras64x64.gif differ diff --git a/icon/centre/iem16x16.gif b/icon/centre/iem16x16.gif new file mode 100644 index 00000000..8c42a9ff Binary files /dev/null and b/icon/centre/iem16x16.gif differ diff --git a/icon/centre/iem32x32.gif b/icon/centre/iem32x32.gif new file mode 100644 index 00000000..864688a4 Binary files /dev/null and b/icon/centre/iem32x32.gif differ diff --git a/icon/centre/iem64x64.gif b/icon/centre/iem64x64.gif new file mode 100644 index 00000000..d5bf9a01 Binary files /dev/null and b/icon/centre/iem64x64.gif differ diff --git a/icon/centre/indalo16x16.gif b/icon/centre/indalo16x16.gif new file mode 100644 index 00000000..5c59bd39 Binary files /dev/null and b/icon/centre/indalo16x16.gif differ diff --git a/icon/centre/indalo32x32.gif b/icon/centre/indalo32x32.gif new file mode 100644 index 00000000..ab83d7ea Binary files /dev/null and b/icon/centre/indalo32x32.gif differ diff --git a/icon/centre/indalo64x64.gif b/icon/centre/indalo64x64.gif new file mode 100644 index 00000000..d0a136f7 Binary files /dev/null and b/icon/centre/indalo64x64.gif differ diff --git a/icon/centre/ing.una.py16x16.gif b/icon/centre/ing.una.py16x16.gif new file mode 100644 index 00000000..1a5f3cc7 Binary files /dev/null and b/icon/centre/ing.una.py16x16.gif differ diff --git a/icon/centre/ing.una.py32x32.gif b/icon/centre/ing.una.py32x32.gif new file mode 100644 index 00000000..bfe71637 Binary files /dev/null and b/icon/centre/ing.una.py32x32.gif differ diff --git a/icon/centre/ing.una.py64x64.gif b/icon/centre/ing.una.py64x64.gif new file mode 100644 index 00000000..24695c5b Binary files /dev/null and b/icon/centre/ing.una.py64x64.gif differ diff --git a/icon/centre/inmaculada16x16.gif b/icon/centre/inmaculada16x16.gif new file mode 100644 index 00000000..916668c7 Binary files /dev/null and b/icon/centre/inmaculada16x16.gif differ diff --git a/icon/centre/inmaculada32x32.gif b/icon/centre/inmaculada32x32.gif new file mode 100644 index 00000000..0efd9ac5 Binary files /dev/null and b/icon/centre/inmaculada32x32.gif differ diff --git a/icon/centre/inmaculada64x64.gif b/icon/centre/inmaculada64x64.gif new file mode 100644 index 00000000..3d1f553b Binary files /dev/null and b/icon/centre/inmaculada64x64.gif differ diff --git a/icon/centre/innodocente16x16.gif b/icon/centre/innodocente16x16.gif new file mode 100644 index 00000000..349b9a5d Binary files /dev/null and b/icon/centre/innodocente16x16.gif differ diff --git a/icon/centre/innodocente32x32.gif b/icon/centre/innodocente32x32.gif new file mode 100644 index 00000000..a442a073 Binary files /dev/null and b/icon/centre/innodocente32x32.gif differ diff --git a/icon/centre/innodocente64x64.gif b/icon/centre/innodocente64x64.gif new file mode 100644 index 00000000..f0c78b0c Binary files /dev/null and b/icon/centre/innodocente64x64.gif differ diff --git a/icon/centre/isit16x16.gif b/icon/centre/isit16x16.gif new file mode 100644 index 00000000..0bd97376 Binary files /dev/null and b/icon/centre/isit16x16.gif differ diff --git a/icon/centre/isit32x32.gif b/icon/centre/isit32x32.gif new file mode 100644 index 00000000..83dd613c Binary files /dev/null and b/icon/centre/isit32x32.gif differ diff --git a/icon/centre/isit64x64.gif b/icon/centre/isit64x64.gif new file mode 100644 index 00000000..8dd16692 Binary files /dev/null and b/icon/centre/isit64x64.gif differ diff --git a/icon/centre/med.una.py16x16.gif b/icon/centre/med.una.py16x16.gif new file mode 100644 index 00000000..840a42f5 Binary files /dev/null and b/icon/centre/med.una.py16x16.gif differ diff --git a/icon/centre/med.una.py32x32.gif b/icon/centre/med.una.py32x32.gif new file mode 100644 index 00000000..9744cfe0 Binary files /dev/null and b/icon/centre/med.una.py32x32.gif differ diff --git a/icon/centre/med.una.py64x64.gif b/icon/centre/med.una.py64x64.gif new file mode 100644 index 00000000..82faf771 Binary files /dev/null and b/icon/centre/med.una.py64x64.gif differ diff --git a/icon/centre/med16x16.gif b/icon/centre/med16x16.gif new file mode 100644 index 00000000..a58c7004 Binary files /dev/null and b/icon/centre/med16x16.gif differ diff --git a/icon/centre/med32x32.gif b/icon/centre/med32x32.gif new file mode 100644 index 00000000..6548749f Binary files /dev/null and b/icon/centre/med32x32.gif differ diff --git a/icon/centre/med64x64.gif b/icon/centre/med64x64.gif new file mode 100644 index 00000000..b86baba3 Binary files /dev/null and b/icon/centre/med64x64.gif differ diff --git a/icon/centre/melilla16x16.gif b/icon/centre/melilla16x16.gif new file mode 100644 index 00000000..45b7252f Binary files /dev/null and b/icon/centre/melilla16x16.gif differ diff --git a/icon/centre/melilla32x32.gif b/icon/centre/melilla32x32.gif new file mode 100644 index 00000000..0d85da4f Binary files /dev/null and b/icon/centre/melilla32x32.gif differ diff --git a/icon/centre/melilla64x64.gif b/icon/centre/melilla64x64.gif new file mode 100644 index 00000000..98131f15 Binary files /dev/null and b/icon/centre/melilla64x64.gif differ diff --git a/icon/centre/odo.una.py16x16.gif b/icon/centre/odo.una.py16x16.gif new file mode 100644 index 00000000..72a11f94 Binary files /dev/null and b/icon/centre/odo.una.py16x16.gif differ diff --git a/icon/centre/odo.una.py32x32.gif b/icon/centre/odo.una.py32x32.gif new file mode 100644 index 00000000..b7df9909 Binary files /dev/null and b/icon/centre/odo.una.py32x32.gif differ diff --git a/icon/centre/odonto16x16.gif b/icon/centre/odonto16x16.gif new file mode 100644 index 00000000..a1b5d38a Binary files /dev/null and b/icon/centre/odonto16x16.gif differ diff --git a/icon/centre/odonto32x32.gif b/icon/centre/odonto32x32.gif new file mode 100644 index 00000000..c1ba9a38 Binary files /dev/null and b/icon/centre/odonto32x32.gif differ diff --git a/icon/centre/odonto64x64.gif b/icon/centre/odonto64x64.gif new file mode 100644 index 00000000..af407919 Binary files /dev/null and b/icon/centre/odonto64x64.gif differ diff --git a/icon/centre/pol.una.py16x16.gif b/icon/centre/pol.una.py16x16.gif new file mode 100644 index 00000000..9b6bb3b6 Binary files /dev/null and b/icon/centre/pol.una.py16x16.gif differ diff --git a/icon/centre/pol.una.py32x32.gif b/icon/centre/pol.una.py32x32.gif new file mode 100644 index 00000000..0784422a Binary files /dev/null and b/icon/centre/pol.una.py32x32.gif differ diff --git a/icon/centre/pol.una.py64x64.gif b/icon/centre/pol.una.py64x64.gif new file mode 100644 index 00000000..3f40271d Binary files /dev/null and b/icon/centre/pol.una.py64x64.gif differ diff --git a/icon/centre/polit16x16.gif b/icon/centre/polit16x16.gif new file mode 100644 index 00000000..ad90ec5f Binary files /dev/null and b/icon/centre/polit16x16.gif differ diff --git a/icon/centre/polit32x32.gif b/icon/centre/polit32x32.gif new file mode 100644 index 00000000..5b8297d1 Binary files /dev/null and b/icon/centre/polit32x32.gif differ diff --git a/icon/centre/polit64x64.gif b/icon/centre/polit64x64.gif new file mode 100644 index 00000000..3c9cf557 Binary files /dev/null and b/icon/centre/polit64x64.gif differ diff --git a/icon/centre/psico16x16.gif b/icon/centre/psico16x16.gif new file mode 100644 index 00000000..0a75c99a Binary files /dev/null and b/icon/centre/psico16x16.gif differ diff --git a/icon/centre/psico32x32.gif b/icon/centre/psico32x32.gif new file mode 100644 index 00000000..1c7a146f Binary files /dev/null and b/icon/centre/psico32x32.gif differ diff --git a/icon/centre/psico64x64.gif b/icon/centre/psico64x64.gif new file mode 100644 index 00000000..8b4d7ef0 Binary files /dev/null and b/icon/centre/psico64x64.gif differ diff --git a/icon/centre/psicoped16x16.gif b/icon/centre/psicoped16x16.gif new file mode 100644 index 00000000..91ff0108 Binary files /dev/null and b/icon/centre/psicoped16x16.gif differ diff --git a/icon/centre/psicoped32x32.gif b/icon/centre/psicoped32x32.gif new file mode 100644 index 00000000..d46f9bfe Binary files /dev/null and b/icon/centre/psicoped32x32.gif differ diff --git a/icon/centre/psicoped64x64.gif b/icon/centre/psicoped64x64.gif new file mode 100644 index 00000000..1f4bb643 Binary files /dev/null and b/icon/centre/psicoped64x64.gif differ diff --git a/icon/centre/teologia16x16.gif b/icon/centre/teologia16x16.gif new file mode 100644 index 00000000..424671a0 Binary files /dev/null and b/icon/centre/teologia16x16.gif differ diff --git a/icon/centre/teologia32x32.gif b/icon/centre/teologia32x32.gif new file mode 100644 index 00000000..aceef710 Binary files /dev/null and b/icon/centre/teologia32x32.gif differ diff --git a/icon/centre/teologia64x64.gif b/icon/centre/teologia64x64.gif new file mode 100644 index 00000000..fc51f1dd Binary files /dev/null and b/icon/centre/teologia64x64.gif differ diff --git a/icon/centre/trabajo16x16.gif b/icon/centre/trabajo16x16.gif new file mode 100644 index 00000000..7883d84c Binary files /dev/null and b/icon/centre/trabajo16x16.gif differ diff --git a/icon/centre/trabajo32x32.gif b/icon/centre/trabajo32x32.gif new file mode 100644 index 00000000..d4dda428 Binary files /dev/null and b/icon/centre/trabajo32x32.gif differ diff --git a/icon/centre/trabajo64x64.gif b/icon/centre/trabajo64x64.gif new file mode 100644 index 00000000..0e03f338 Binary files /dev/null and b/icon/centre/trabajo64x64.gif differ diff --git a/icon/centre/trad16x16.gif b/icon/centre/trad16x16.gif new file mode 100644 index 00000000..be036ea2 Binary files /dev/null and b/icon/centre/trad16x16.gif differ diff --git a/icon/centre/trad32x32.gif b/icon/centre/trad32x32.gif new file mode 100644 index 00000000..bc925a66 Binary files /dev/null and b/icon/centre/trad32x32.gif differ diff --git a/icon/centre/trad64x64.gif b/icon/centre/trad64x64.gif new file mode 100644 index 00000000..802f2094 Binary files /dev/null and b/icon/centre/trad64x64.gif differ diff --git a/icon/centre/tsocial16x16.gif b/icon/centre/tsocial16x16.gif new file mode 100644 index 00000000..bf1f6c28 Binary files /dev/null and b/icon/centre/tsocial16x16.gif differ diff --git a/icon/centre/tsocial32x32.gif b/icon/centre/tsocial32x32.gif new file mode 100644 index 00000000..a58f5d14 Binary files /dev/null and b/icon/centre/tsocial32x32.gif differ diff --git a/icon/centre/tsocial64x64.gif b/icon/centre/tsocial64x64.gif new file mode 100644 index 00000000..1ce3a95e Binary files /dev/null and b/icon/centre/tsocial64x64.gif differ diff --git a/icon/centre/tunas16x16.gif b/icon/centre/tunas16x16.gif new file mode 100644 index 00000000..b3b9e25a Binary files /dev/null and b/icon/centre/tunas16x16.gif differ diff --git a/icon/centre/tunas32x32.gif b/icon/centre/tunas32x32.gif new file mode 100644 index 00000000..55ffab12 Binary files /dev/null and b/icon/centre/tunas32x32.gif differ diff --git a/icon/centre/tunas64x64.gif b/icon/centre/tunas64x64.gif new file mode 100644 index 00000000..11f4d7b7 Binary files /dev/null and b/icon/centre/tunas64x64.gif differ diff --git a/icon/centre/uagrm16x16.gif b/icon/centre/uagrm16x16.gif new file mode 100644 index 00000000..47126af7 Binary files /dev/null and b/icon/centre/uagrm16x16.gif differ diff --git a/icon/centre/uagrm32x32.gif b/icon/centre/uagrm32x32.gif new file mode 100644 index 00000000..70d57ded Binary files /dev/null and b/icon/centre/uagrm32x32.gif differ diff --git a/icon/centre/uagrm64x64.gif b/icon/centre/uagrm64x64.gif new file mode 100644 index 00000000..1bd56fa4 Binary files /dev/null and b/icon/centre/uagrm64x64.gif differ diff --git a/icon/centre/ual16x16.gif b/icon/centre/ual16x16.gif new file mode 100644 index 00000000..52496632 Binary files /dev/null and b/icon/centre/ual16x16.gif differ diff --git a/icon/centre/ual32x32.gif b/icon/centre/ual32x32.gif new file mode 100644 index 00000000..c97eb3db Binary files /dev/null and b/icon/centre/ual32x32.gif differ diff --git a/icon/centre/ual64x64.gif b/icon/centre/ual64x64.gif new file mode 100644 index 00000000..3b24145e Binary files /dev/null and b/icon/centre/ual64x64.gif differ diff --git a/icon/centre/uca16x16.gif b/icon/centre/uca16x16.gif new file mode 100644 index 00000000..14173c1d Binary files /dev/null and b/icon/centre/uca16x16.gif differ diff --git a/icon/centre/uca32x32.gif b/icon/centre/uca32x32.gif new file mode 100644 index 00000000..ff454ae4 Binary files /dev/null and b/icon/centre/uca32x32.gif differ diff --git a/icon/centre/uca64x64.gif b/icon/centre/uca64x64.gif new file mode 100644 index 00000000..eecea51c Binary files /dev/null and b/icon/centre/uca64x64.gif differ diff --git a/icon/centre/ucam16x16.gif b/icon/centre/ucam16x16.gif new file mode 100644 index 00000000..934bdfdb Binary files /dev/null and b/icon/centre/ucam16x16.gif differ diff --git a/icon/centre/ucam32x32.gif b/icon/centre/ucam32x32.gif new file mode 100644 index 00000000..d06dfcf2 Binary files /dev/null and b/icon/centre/ucam32x32.gif differ diff --git a/icon/centre/ucam64x64.gif b/icon/centre/ucam64x64.gif new file mode 100644 index 00000000..78391296 Binary files /dev/null and b/icon/centre/ucam64x64.gif differ diff --git a/icon/centre/ucan16x16.gif b/icon/centre/ucan16x16.gif new file mode 100644 index 00000000..a71e47b7 Binary files /dev/null and b/icon/centre/ucan16x16.gif differ diff --git a/icon/centre/ucan32x32.gif b/icon/centre/ucan32x32.gif new file mode 100644 index 00000000..f3f78ce4 Binary files /dev/null and b/icon/centre/ucan32x32.gif differ diff --git a/icon/centre/ucan64x64.gif b/icon/centre/ucan64x64.gif new file mode 100644 index 00000000..2e359b29 Binary files /dev/null and b/icon/centre/ucan64x64.gif differ diff --git a/icon/centre/ucav16x16.gif b/icon/centre/ucav16x16.gif new file mode 100644 index 00000000..98687573 Binary files /dev/null and b/icon/centre/ucav16x16.gif differ diff --git a/icon/centre/ucav32x32.gif b/icon/centre/ucav32x32.gif new file mode 100644 index 00000000..472ca650 Binary files /dev/null and b/icon/centre/ucav32x32.gif differ diff --git a/icon/centre/ucav64x64.gif b/icon/centre/ucav64x64.gif new file mode 100644 index 00000000..c86988f3 Binary files /dev/null and b/icon/centre/ucav64x64.gif differ diff --git a/icon/centre/ugr16x16.gif b/icon/centre/ugr16x16.gif new file mode 100644 index 00000000..09c4c350 Binary files /dev/null and b/icon/centre/ugr16x16.gif differ diff --git a/icon/centre/ugr32x32.gif b/icon/centre/ugr32x32.gif new file mode 100644 index 00000000..35e0b1c6 Binary files /dev/null and b/icon/centre/ugr32x32.gif differ diff --git a/icon/centre/ugr64x64.gif b/icon/centre/ugr64x64.gif new file mode 100644 index 00000000..10f2e286 Binary files /dev/null and b/icon/centre/ugr64x64.gif differ diff --git a/icon/centre/um5s16x16.gif b/icon/centre/um5s16x16.gif new file mode 100644 index 00000000..3cb6eff3 Binary files /dev/null and b/icon/centre/um5s16x16.gif differ diff --git a/icon/centre/um5s32x32.gif b/icon/centre/um5s32x32.gif new file mode 100644 index 00000000..d755eac3 Binary files /dev/null and b/icon/centre/um5s32x32.gif differ diff --git a/icon/centre/um5s64x64.gif b/icon/centre/um5s64x64.gif new file mode 100644 index 00000000..561c1630 Binary files /dev/null and b/icon/centre/um5s64x64.gif differ diff --git a/icon/centre/una.py16x16.gif b/icon/centre/una.py16x16.gif new file mode 100644 index 00000000..840a42f5 Binary files /dev/null and b/icon/centre/una.py16x16.gif differ diff --git a/icon/centre/una.py32x32.gif b/icon/centre/una.py32x32.gif new file mode 100644 index 00000000..9744cfe0 Binary files /dev/null and b/icon/centre/una.py32x32.gif differ diff --git a/icon/centre/una.py64x64.gif b/icon/centre/una.py64x64.gif new file mode 100644 index 00000000..82faf771 Binary files /dev/null and b/icon/centre/una.py64x64.gif differ diff --git a/icon/centre/vet.una.py16x16.gif b/icon/centre/vet.una.py16x16.gif new file mode 100644 index 00000000..25c3dbb5 Binary files /dev/null and b/icon/centre/vet.una.py16x16.gif differ diff --git a/icon/centre/vet.una.py32x32.gif b/icon/centre/vet.una.py32x32.gif new file mode 100644 index 00000000..35eec09d Binary files /dev/null and b/icon/centre/vet.una.py32x32.gif differ diff --git a/icon/centre/vet.una.py64x64.gif b/icon/centre/vet.una.py64x64.gif new file mode 100644 index 00000000..4fbc311a Binary files /dev/null and b/icon/centre/vet.una.py64x64.gif differ diff --git a/icon/centre/vn16x16.gif b/icon/centre/vn16x16.gif new file mode 100644 index 00000000..70f579e6 Binary files /dev/null and b/icon/centre/vn16x16.gif differ diff --git a/icon/centre/vn32x32.gif b/icon/centre/vn32x32.gif new file mode 100644 index 00000000..ef037f4b Binary files /dev/null and b/icon/centre/vn32x32.gif differ diff --git a/icon/centre/vn64x64.gif b/icon/centre/vn64x64.gif new file mode 100644 index 00000000..d00d585a Binary files /dev/null and b/icon/centre/vn64x64.gif differ diff --git a/icon/cevug100x32.png b/icon/cevug100x32.png new file mode 100644 index 00000000..2825d605 Binary files /dev/null and b/icon/cevug100x32.png differ diff --git a/icon/cevuna.una.py100x32.gif b/icon/cevuna.una.py100x32.gif new file mode 100644 index 00000000..ee0af0d7 Binary files /dev/null and b/icon/cevuna.una.py100x32.gif differ diff --git a/icon/cevuna100x32.gif b/icon/cevuna100x32.gif new file mode 100644 index 00000000..c2cf6f3b Binary files /dev/null and b/icon/cevuna100x32.gif differ diff --git a/icon/cevuna160x72.png b/icon/cevuna160x72.png new file mode 100644 index 00000000..599c6190 Binary files /dev/null and b/icon/cevuna160x72.png differ diff --git a/icon/cevuna320x144.png b/icon/cevuna320x144.png new file mode 100644 index 00000000..f0d1ab8e Binary files /dev/null and b/icon/cevuna320x144.png differ diff --git a/icon/cevuna32x32.gif b/icon/cevuna32x32.gif new file mode 100644 index 00000000..41018126 Binary files /dev/null and b/icon/cevuna32x32.gif differ diff --git a/icon/chat16x16.gif b/icon/chat16x16.gif new file mode 100644 index 00000000..6a0e3d56 Binary files /dev/null and b/icon/chat16x16.gif differ diff --git a/icon/check-empty12x12.gif b/icon/check-empty12x12.gif new file mode 100644 index 00000000..12754dc6 Binary files /dev/null and b/icon/check-empty12x12.gif differ diff --git a/icon/check-empty16x16.gif b/icon/check-empty16x16.gif new file mode 100644 index 00000000..2892e990 Binary files /dev/null and b/icon/check-empty16x16.gif differ diff --git a/icon/check-empty320x320.tif b/icon/check-empty320x320.tif new file mode 100644 index 00000000..a95656e5 Binary files /dev/null and b/icon/check-empty320x320.tif differ diff --git a/icon/check12x12.gif b/icon/check12x12.gif new file mode 100644 index 00000000..24774af7 Binary files /dev/null and b/icon/check12x12.gif differ diff --git a/icon/check16x16.gif b/icon/check16x16.gif new file mode 100644 index 00000000..e1fff2f0 Binary files /dev/null and b/icon/check16x16.gif differ diff --git a/icon/classphoto16x16.gif b/icon/classphoto16x16.gif new file mode 100644 index 00000000..7137733b Binary files /dev/null and b/icon/classphoto16x16.gif differ diff --git a/icon/classphoto32x32.gif b/icon/classphoto32x32.gif new file mode 100644 index 00000000..c65a0c0d Binary files /dev/null and b/icon/classphoto32x32.gif differ diff --git a/icon/clock16x16.gif b/icon/clock16x16.gif new file mode 100644 index 00000000..8a146087 Binary files /dev/null and b/icon/clock16x16.gif differ diff --git a/icon/closed12x12.gif b/icon/closed12x12.gif new file mode 100644 index 00000000..e7f555b9 Binary files /dev/null and b/icon/closed12x12.gif differ diff --git a/icon/closed_off12x12.gif b/icon/closed_off12x12.gif new file mode 100644 index 00000000..f5043451 Binary files /dev/null and b/icon/closed_off12x12.gif differ diff --git a/icon/closed_off16x16.gif b/icon/closed_off16x16.gif new file mode 100644 index 00000000..1a61a6b3 Binary files /dev/null and b/icon/closed_off16x16.gif differ diff --git a/icon/closed_on12x12.gif b/icon/closed_on12x12.gif new file mode 100644 index 00000000..014c41d0 Binary files /dev/null and b/icon/closed_on12x12.gif differ diff --git a/icon/closed_on16x16.gif b/icon/closed_on16x16.gif new file mode 100644 index 00000000..38281be9 Binary files /dev/null and b/icon/closed_on16x16.gif differ diff --git a/icon/config16x16.gif b/icon/config16x16.gif new file mode 100644 index 00000000..450b23d1 Binary files /dev/null and b/icon/config16x16.gif differ diff --git a/icon/configtest16x16.gif b/icon/configtest16x16.gif new file mode 100644 index 00000000..b64933da Binary files /dev/null and b/icon/configtest16x16.gif differ diff --git a/icon/contract16x16.gif b/icon/contract16x16.gif new file mode 100644 index 00000000..2c5693d2 Binary files /dev/null and b/icon/contract16x16.gif differ diff --git a/icon/copy12x12.gif b/icon/copy12x12.gif new file mode 100644 index 00000000..b101b4be Binary files /dev/null and b/icon/copy12x12.gif differ diff --git a/icon/copy16x16.gif b/icon/copy16x16.gif new file mode 100644 index 00000000..0141b066 Binary files /dev/null and b/icon/copy16x16.gif differ diff --git a/icon/copy_off16x16.gif b/icon/copy_off16x16.gif new file mode 100644 index 00000000..d206aa9d Binary files /dev/null and b/icon/copy_off16x16.gif differ diff --git a/icon/copy_on16x16.gif b/icon/copy_on16x16.gif new file mode 100644 index 00000000..0141b066 Binary files /dev/null and b/icon/copy_on16x16.gif differ diff --git a/icon/copyoff12x12.gif b/icon/copyoff12x12.gif new file mode 100644 index 00000000..40c5cbc6 Binary files /dev/null and b/icon/copyoff12x12.gif differ diff --git a/icon/country/AD/AD.png b/icon/country/AD/AD.png new file mode 100644 index 00000000..7ac9f7dc Binary files /dev/null and b/icon/country/AD/AD.png differ diff --git a/icon/country/AE/AE.png b/icon/country/AE/AE.png new file mode 100644 index 00000000..5b0195fe Binary files /dev/null and b/icon/country/AE/AE.png differ diff --git a/icon/country/AF/AF.png b/icon/country/AF/AF.png new file mode 100644 index 00000000..b95bcaee Binary files /dev/null and b/icon/country/AF/AF.png differ diff --git a/icon/country/AG/AG.png b/icon/country/AG/AG.png new file mode 100644 index 00000000..e9eb77a9 Binary files /dev/null and b/icon/country/AG/AG.png differ diff --git a/icon/country/AL/AL.png b/icon/country/AL/AL.png new file mode 100644 index 00000000..f8716c71 Binary files /dev/null and b/icon/country/AL/AL.png differ diff --git a/icon/country/AM/AM.png b/icon/country/AM/AM.png new file mode 100644 index 00000000..13892dc9 Binary files /dev/null and b/icon/country/AM/AM.png differ diff --git a/icon/country/AO/AO.png b/icon/country/AO/AO.png new file mode 100644 index 00000000..bd7935f9 Binary files /dev/null and b/icon/country/AO/AO.png differ diff --git a/icon/country/AQ/AQ.png b/icon/country/AQ/AQ.png new file mode 100644 index 00000000..db5d39a2 Binary files /dev/null and b/icon/country/AQ/AQ.png differ diff --git a/icon/country/AR/AR.png b/icon/country/AR/AR.png new file mode 100644 index 00000000..b37c9e3e Binary files /dev/null and b/icon/country/AR/AR.png differ diff --git a/icon/country/AT/AT.png b/icon/country/AT/AT.png new file mode 100644 index 00000000..4c5914cb Binary files /dev/null and b/icon/country/AT/AT.png differ diff --git a/icon/country/AU/AU.png b/icon/country/AU/AU.png new file mode 100644 index 00000000..e4d86e71 Binary files /dev/null and b/icon/country/AU/AU.png differ diff --git a/icon/country/AZ/AZ.png b/icon/country/AZ/AZ.png new file mode 100644 index 00000000..585d82ba Binary files /dev/null and b/icon/country/AZ/AZ.png differ diff --git a/icon/country/BA/BA.png b/icon/country/BA/BA.png new file mode 100644 index 00000000..f721fcd6 Binary files /dev/null and b/icon/country/BA/BA.png differ diff --git a/icon/country/BB/BB.png b/icon/country/BB/BB.png new file mode 100644 index 00000000..6c5d763d Binary files /dev/null and b/icon/country/BB/BB.png differ diff --git a/icon/country/BD/BD.png b/icon/country/BD/BD.png new file mode 100644 index 00000000..d4cbbc77 Binary files /dev/null and b/icon/country/BD/BD.png differ diff --git a/icon/country/BE/BE.png b/icon/country/BE/BE.png new file mode 100644 index 00000000..af039aed Binary files /dev/null and b/icon/country/BE/BE.png differ diff --git a/icon/country/BF/BF.png b/icon/country/BF/BF.png new file mode 100644 index 00000000..c8a81eaf Binary files /dev/null and b/icon/country/BF/BF.png differ diff --git a/icon/country/BG/BG.png b/icon/country/BG/BG.png new file mode 100644 index 00000000..f58548bb Binary files /dev/null and b/icon/country/BG/BG.png differ diff --git a/icon/country/BI/BI.png b/icon/country/BI/BI.png new file mode 100644 index 00000000..f0f59d95 Binary files /dev/null and b/icon/country/BI/BI.png differ diff --git a/icon/country/BJ/BJ.png b/icon/country/BJ/BJ.png new file mode 100644 index 00000000..ce1b93fe Binary files /dev/null and b/icon/country/BJ/BJ.png differ diff --git a/icon/country/BO/BO.png b/icon/country/BO/BO.png new file mode 100644 index 00000000..c0668396 Binary files /dev/null and b/icon/country/BO/BO.png differ diff --git a/icon/country/BR/BR.png b/icon/country/BR/BR.png new file mode 100644 index 00000000..5648c3c5 Binary files /dev/null and b/icon/country/BR/BR.png differ diff --git a/icon/country/BT/BT.png b/icon/country/BT/BT.png new file mode 100644 index 00000000..2a9a478e Binary files /dev/null and b/icon/country/BT/BT.png differ diff --git a/icon/country/BW/BW.png b/icon/country/BW/BW.png new file mode 100644 index 00000000..bd74d9c8 Binary files /dev/null and b/icon/country/BW/BW.png differ diff --git a/icon/country/BY/BY.png b/icon/country/BY/BY.png new file mode 100644 index 00000000..15837774 Binary files /dev/null and b/icon/country/BY/BY.png differ diff --git a/icon/country/BZ/BZ.png b/icon/country/BZ/BZ.png new file mode 100644 index 00000000..6082db26 Binary files /dev/null and b/icon/country/BZ/BZ.png differ diff --git a/icon/country/CA/CA.png b/icon/country/CA/CA.png new file mode 100644 index 00000000..003dc8c5 Binary files /dev/null and b/icon/country/CA/CA.png differ diff --git a/icon/country/CD/CD.png b/icon/country/CD/CD.png new file mode 100644 index 00000000..bb48d2ac Binary files /dev/null and b/icon/country/CD/CD.png differ diff --git a/icon/country/CF/CF.png b/icon/country/CF/CF.png new file mode 100644 index 00000000..ed7ea3cc Binary files /dev/null and b/icon/country/CF/CF.png differ diff --git a/icon/country/CG/CG.png b/icon/country/CG/CG.png new file mode 100644 index 00000000..d1c82690 Binary files /dev/null and b/icon/country/CG/CG.png differ diff --git a/icon/country/CH/CH.png b/icon/country/CH/CH.png new file mode 100644 index 00000000..d8800623 Binary files /dev/null and b/icon/country/CH/CH.png differ diff --git a/icon/country/CI/CI.png b/icon/country/CI/CI.png new file mode 100644 index 00000000..a9af5ed5 Binary files /dev/null and b/icon/country/CI/CI.png differ diff --git a/icon/country/CL/CL.png b/icon/country/CL/CL.png new file mode 100644 index 00000000..0ff6b9cf Binary files /dev/null and b/icon/country/CL/CL.png differ diff --git a/icon/country/CM/CM.png b/icon/country/CM/CM.png new file mode 100644 index 00000000..da5834cf Binary files /dev/null and b/icon/country/CM/CM.png differ diff --git a/icon/country/CN/CN.png b/icon/country/CN/CN.png new file mode 100644 index 00000000..118241db Binary files /dev/null and b/icon/country/CN/CN.png differ diff --git a/icon/country/CO/CO.png b/icon/country/CO/CO.png new file mode 100644 index 00000000..d504c866 Binary files /dev/null and b/icon/country/CO/CO.png differ diff --git a/icon/country/CR/CR.png b/icon/country/CR/CR.png new file mode 100644 index 00000000..987bcb52 Binary files /dev/null and b/icon/country/CR/CR.png differ diff --git a/icon/country/CU/CU.png b/icon/country/CU/CU.png new file mode 100644 index 00000000..19bb7a0a Binary files /dev/null and b/icon/country/CU/CU.png differ diff --git a/icon/country/CV/CV.png b/icon/country/CV/CV.png new file mode 100644 index 00000000..bc89fc7a Binary files /dev/null and b/icon/country/CV/CV.png differ diff --git a/icon/country/CY/CY.png b/icon/country/CY/CY.png new file mode 100644 index 00000000..45de562c Binary files /dev/null and b/icon/country/CY/CY.png differ diff --git a/icon/country/CZ/CZ.png b/icon/country/CZ/CZ.png new file mode 100644 index 00000000..7c4b8ad9 Binary files /dev/null and b/icon/country/CZ/CZ.png differ diff --git a/icon/country/DE/DE.png b/icon/country/DE/DE.png new file mode 100644 index 00000000..0804b226 Binary files /dev/null and b/icon/country/DE/DE.png differ diff --git a/icon/country/DJ/DJ.png b/icon/country/DJ/DJ.png new file mode 100644 index 00000000..c2847b36 Binary files /dev/null and b/icon/country/DJ/DJ.png differ diff --git a/icon/country/DK/DK.png b/icon/country/DK/DK.png new file mode 100644 index 00000000..878ea4bf Binary files /dev/null and b/icon/country/DK/DK.png differ diff --git a/icon/country/DO/DO.png b/icon/country/DO/DO.png new file mode 100644 index 00000000..cee03db6 Binary files /dev/null and b/icon/country/DO/DO.png differ diff --git a/icon/country/DZ/DZ.png b/icon/country/DZ/DZ.png new file mode 100644 index 00000000..eda04b66 Binary files /dev/null and b/icon/country/DZ/DZ.png differ diff --git a/icon/country/EC/EC.png b/icon/country/EC/EC.png new file mode 100644 index 00000000..4a1c1342 Binary files /dev/null and b/icon/country/EC/EC.png differ diff --git a/icon/country/EE/EE.png b/icon/country/EE/EE.png new file mode 100644 index 00000000..b9152535 Binary files /dev/null and b/icon/country/EE/EE.png differ diff --git a/icon/country/EG/EG.png b/icon/country/EG/EG.png new file mode 100644 index 00000000..25add3a8 Binary files /dev/null and b/icon/country/EG/EG.png differ diff --git a/icon/country/EH/EH.png b/icon/country/EH/EH.png new file mode 100644 index 00000000..bc4b9717 Binary files /dev/null and b/icon/country/EH/EH.png differ diff --git a/icon/country/ER/ER.png b/icon/country/ER/ER.png new file mode 100644 index 00000000..ff611b75 Binary files /dev/null and b/icon/country/ER/ER.png differ diff --git a/icon/country/ES/ES.png b/icon/country/ES/ES.png new file mode 100644 index 00000000..fd80d46c Binary files /dev/null and b/icon/country/ES/ES.png differ diff --git a/icon/country/ET/ET.png b/icon/country/ET/ET.png new file mode 100644 index 00000000..f2a26db2 Binary files /dev/null and b/icon/country/ET/ET.png differ diff --git a/icon/country/FI/FI.png b/icon/country/FI/FI.png new file mode 100644 index 00000000..2b6a6f3b Binary files /dev/null and b/icon/country/FI/FI.png differ diff --git a/icon/country/FJ/FJ.png b/icon/country/FJ/FJ.png new file mode 100644 index 00000000..81fd0fd4 Binary files /dev/null and b/icon/country/FJ/FJ.png differ diff --git a/icon/country/FR/FR.png b/icon/country/FR/FR.png new file mode 100644 index 00000000..e8e3fc9a Binary files /dev/null and b/icon/country/FR/FR.png differ diff --git a/icon/country/GA/GA.png b/icon/country/GA/GA.png new file mode 100644 index 00000000..a599a2ed Binary files /dev/null and b/icon/country/GA/GA.png differ diff --git a/icon/country/GB/GB.png b/icon/country/GB/GB.png new file mode 100644 index 00000000..34929e80 Binary files /dev/null and b/icon/country/GB/GB.png differ diff --git a/icon/country/GE/GE.png b/icon/country/GE/GE.png new file mode 100644 index 00000000..ff72cf2e Binary files /dev/null and b/icon/country/GE/GE.png differ diff --git a/icon/country/GF/GF.png b/icon/country/GF/GF.png new file mode 100644 index 00000000..8c0d0f1b Binary files /dev/null and b/icon/country/GF/GF.png differ diff --git a/icon/country/GH/GH.png b/icon/country/GH/GH.png new file mode 100644 index 00000000..0bde2636 Binary files /dev/null and b/icon/country/GH/GH.png differ diff --git a/icon/country/GI/GI.png b/icon/country/GI/GI.png new file mode 100644 index 00000000..b338a33f Binary files /dev/null and b/icon/country/GI/GI.png differ diff --git a/icon/country/GL/GL.png b/icon/country/GL/GL.png new file mode 100644 index 00000000..387574b8 Binary files /dev/null and b/icon/country/GL/GL.png differ diff --git a/icon/country/GM/GM.png b/icon/country/GM/GM.png new file mode 100644 index 00000000..3b42736c Binary files /dev/null and b/icon/country/GM/GM.png differ diff --git a/icon/country/GN/GN.png b/icon/country/GN/GN.png new file mode 100644 index 00000000..9decc4a2 Binary files /dev/null and b/icon/country/GN/GN.png differ diff --git a/icon/country/GQ/GQ.png b/icon/country/GQ/GQ.png new file mode 100644 index 00000000..23f1624c Binary files /dev/null and b/icon/country/GQ/GQ.png differ diff --git a/icon/country/GR/GR.png b/icon/country/GR/GR.png new file mode 100644 index 00000000..29e00c73 Binary files /dev/null and b/icon/country/GR/GR.png differ diff --git a/icon/country/GT/GT.png b/icon/country/GT/GT.png new file mode 100644 index 00000000..fa716d1f Binary files /dev/null and b/icon/country/GT/GT.png differ diff --git a/icon/country/GY/GY.png b/icon/country/GY/GY.png new file mode 100644 index 00000000..c9e67da4 Binary files /dev/null and b/icon/country/GY/GY.png differ diff --git a/icon/country/HN/HN.png b/icon/country/HN/HN.png new file mode 100644 index 00000000..f5765a7e Binary files /dev/null and b/icon/country/HN/HN.png differ diff --git a/icon/country/HR/HR.png b/icon/country/HR/HR.png new file mode 100644 index 00000000..0e2464b2 Binary files /dev/null and b/icon/country/HR/HR.png differ diff --git a/icon/country/HT/HT.png b/icon/country/HT/HT.png new file mode 100644 index 00000000..5c82f3ec Binary files /dev/null and b/icon/country/HT/HT.png differ diff --git a/icon/country/HU/HU.png b/icon/country/HU/HU.png new file mode 100644 index 00000000..434ab836 Binary files /dev/null and b/icon/country/HU/HU.png differ diff --git a/icon/country/ID/ID.png b/icon/country/ID/ID.png new file mode 100644 index 00000000..6bbd6842 Binary files /dev/null and b/icon/country/ID/ID.png differ diff --git a/icon/country/IE/IE.png b/icon/country/IE/IE.png new file mode 100644 index 00000000..aa842147 Binary files /dev/null and b/icon/country/IE/IE.png differ diff --git a/icon/country/IL/IL.png b/icon/country/IL/IL.png new file mode 100644 index 00000000..88417fcc Binary files /dev/null and b/icon/country/IL/IL.png differ diff --git a/icon/country/IN/IN.png b/icon/country/IN/IN.png new file mode 100644 index 00000000..a039f3f6 Binary files /dev/null and b/icon/country/IN/IN.png differ diff --git a/icon/country/IQ/IQ.png b/icon/country/IQ/IQ.png new file mode 100644 index 00000000..d2c8251f Binary files /dev/null and b/icon/country/IQ/IQ.png differ diff --git a/icon/country/IR/IR.png b/icon/country/IR/IR.png new file mode 100644 index 00000000..3a15afa4 Binary files /dev/null and b/icon/country/IR/IR.png differ diff --git a/icon/country/IS/IS.png b/icon/country/IS/IS.png new file mode 100644 index 00000000..f2efbda8 Binary files /dev/null and b/icon/country/IS/IS.png differ diff --git a/icon/country/IT/IT.png b/icon/country/IT/IT.png new file mode 100644 index 00000000..1ffd83be Binary files /dev/null and b/icon/country/IT/IT.png differ diff --git a/icon/country/JM/JM.png b/icon/country/JM/JM.png new file mode 100644 index 00000000..310061ca Binary files /dev/null and b/icon/country/JM/JM.png differ diff --git a/icon/country/JP/JP.png b/icon/country/JP/JP.png new file mode 100644 index 00000000..73c0c37f Binary files /dev/null and b/icon/country/JP/JP.png differ diff --git a/icon/country/KE/KE.png b/icon/country/KE/KE.png new file mode 100644 index 00000000..657a3100 Binary files /dev/null and b/icon/country/KE/KE.png differ diff --git a/icon/country/KG/KG.png b/icon/country/KG/KG.png new file mode 100644 index 00000000..84e99b17 Binary files /dev/null and b/icon/country/KG/KG.png differ diff --git a/icon/country/KM/KM.png b/icon/country/KM/KM.png new file mode 100644 index 00000000..add73077 Binary files /dev/null and b/icon/country/KM/KM.png differ diff --git a/icon/country/KP/KP.png b/icon/country/KP/KP.png new file mode 100644 index 00000000..fc9e9872 Binary files /dev/null and b/icon/country/KP/KP.png differ diff --git a/icon/country/KR/KR.png b/icon/country/KR/KR.png new file mode 100644 index 00000000..9dfcc1a9 Binary files /dev/null and b/icon/country/KR/KR.png differ diff --git a/icon/country/KZ/KZ.png b/icon/country/KZ/KZ.png new file mode 100644 index 00000000..9910239b Binary files /dev/null and b/icon/country/KZ/KZ.png differ diff --git a/icon/country/LB/LB.png b/icon/country/LB/LB.png new file mode 100644 index 00000000..eddaf270 Binary files /dev/null and b/icon/country/LB/LB.png differ diff --git a/icon/country/LK/LK.png b/icon/country/LK/LK.png new file mode 100644 index 00000000..e4790025 Binary files /dev/null and b/icon/country/LK/LK.png differ diff --git a/icon/country/LR/LR.png b/icon/country/LR/LR.png new file mode 100644 index 00000000..df5eb591 Binary files /dev/null and b/icon/country/LR/LR.png differ diff --git a/icon/country/LS/LS.png b/icon/country/LS/LS.png new file mode 100644 index 00000000..b54eed52 Binary files /dev/null and b/icon/country/LS/LS.png differ diff --git a/icon/country/LT/LT.png b/icon/country/LT/LT.png new file mode 100644 index 00000000..0522dfe6 Binary files /dev/null and b/icon/country/LT/LT.png differ diff --git a/icon/country/LU/LU.png b/icon/country/LU/LU.png new file mode 100644 index 00000000..a032b832 Binary files /dev/null and b/icon/country/LU/LU.png differ diff --git a/icon/country/LV/LV.png b/icon/country/LV/LV.png new file mode 100644 index 00000000..71c46c93 Binary files /dev/null and b/icon/country/LV/LV.png differ diff --git a/icon/country/LY/LY.png b/icon/country/LY/LY.png new file mode 100644 index 00000000..409494a1 Binary files /dev/null and b/icon/country/LY/LY.png differ diff --git a/icon/country/MA/MA.png b/icon/country/MA/MA.png new file mode 100644 index 00000000..790895f5 Binary files /dev/null and b/icon/country/MA/MA.png differ diff --git a/icon/country/MD/MD.png b/icon/country/MD/MD.png new file mode 100644 index 00000000..8543343f Binary files /dev/null and b/icon/country/MD/MD.png differ diff --git a/icon/country/ME/ME.png b/icon/country/ME/ME.png new file mode 100644 index 00000000..22580f66 Binary files /dev/null and b/icon/country/ME/ME.png differ diff --git a/icon/country/MG/MG.png b/icon/country/MG/MG.png new file mode 100644 index 00000000..f591974a Binary files /dev/null and b/icon/country/MG/MG.png differ diff --git a/icon/country/MK/MK.png b/icon/country/MK/MK.png new file mode 100644 index 00000000..ed7816a9 Binary files /dev/null and b/icon/country/MK/MK.png differ diff --git a/icon/country/ML/ML.png b/icon/country/ML/ML.png new file mode 100644 index 00000000..28780235 Binary files /dev/null and b/icon/country/ML/ML.png differ diff --git a/icon/country/MN/MN.png b/icon/country/MN/MN.png new file mode 100644 index 00000000..92271b4e Binary files /dev/null and b/icon/country/MN/MN.png differ diff --git a/icon/country/MR/MR.png b/icon/country/MR/MR.png new file mode 100644 index 00000000..76f0e168 Binary files /dev/null and b/icon/country/MR/MR.png differ diff --git a/icon/country/MT/MT.png b/icon/country/MT/MT.png new file mode 100644 index 00000000..a3253d54 Binary files /dev/null and b/icon/country/MT/MT.png differ diff --git a/icon/country/MU/MU.png b/icon/country/MU/MU.png new file mode 100644 index 00000000..a782a165 Binary files /dev/null and b/icon/country/MU/MU.png differ diff --git a/icon/country/MV/MV.png b/icon/country/MV/MV.png new file mode 100644 index 00000000..ebd3b845 Binary files /dev/null and b/icon/country/MV/MV.png differ diff --git a/icon/country/MW/MW.png b/icon/country/MW/MW.png new file mode 100644 index 00000000..2318a4d9 Binary files /dev/null and b/icon/country/MW/MW.png differ diff --git a/icon/country/MX/MX.png b/icon/country/MX/MX.png new file mode 100644 index 00000000..887b89d7 Binary files /dev/null and b/icon/country/MX/MX.png differ diff --git a/icon/country/MY/MY.png b/icon/country/MY/MY.png new file mode 100644 index 00000000..8afcdeb2 Binary files /dev/null and b/icon/country/MY/MY.png differ diff --git a/icon/country/MZ/MZ.png b/icon/country/MZ/MZ.png new file mode 100644 index 00000000..19086e05 Binary files /dev/null and b/icon/country/MZ/MZ.png differ diff --git a/icon/country/NA/NA.png b/icon/country/NA/NA.png new file mode 100644 index 00000000..5bf3d32a Binary files /dev/null and b/icon/country/NA/NA.png differ diff --git a/icon/country/NE/NE.png b/icon/country/NE/NE.png new file mode 100644 index 00000000..969e9f14 Binary files /dev/null and b/icon/country/NE/NE.png differ diff --git a/icon/country/NG/NG.png b/icon/country/NG/NG.png new file mode 100644 index 00000000..06e6ae14 Binary files /dev/null and b/icon/country/NG/NG.png differ diff --git a/icon/country/NI/NI.png b/icon/country/NI/NI.png new file mode 100644 index 00000000..d25b22a9 Binary files /dev/null and b/icon/country/NI/NI.png differ diff --git a/icon/country/NL/NL.png b/icon/country/NL/NL.png new file mode 100644 index 00000000..2f86fac5 Binary files /dev/null and b/icon/country/NL/NL.png differ diff --git a/icon/country/NO/NO.png b/icon/country/NO/NO.png new file mode 100644 index 00000000..1c6db9d2 Binary files /dev/null and b/icon/country/NO/NO.png differ diff --git a/icon/country/NP/NP.png b/icon/country/NP/NP.png new file mode 100644 index 00000000..3c8213e1 Binary files /dev/null and b/icon/country/NP/NP.png differ diff --git a/icon/country/NZ/NZ.png b/icon/country/NZ/NZ.png new file mode 100644 index 00000000..38104c8a Binary files /dev/null and b/icon/country/NZ/NZ.png differ diff --git a/icon/country/PA/PA.png b/icon/country/PA/PA.png new file mode 100644 index 00000000..5d5d8b8b Binary files /dev/null and b/icon/country/PA/PA.png differ diff --git a/icon/country/PE/PE.png b/icon/country/PE/PE.png new file mode 100644 index 00000000..0fd231ce Binary files /dev/null and b/icon/country/PE/PE.png differ diff --git a/icon/country/PG/PG.png b/icon/country/PG/PG.png new file mode 100644 index 00000000..a23efcae Binary files /dev/null and b/icon/country/PG/PG.png differ diff --git a/icon/country/PH/PH.png b/icon/country/PH/PH.png new file mode 100644 index 00000000..acacebbd Binary files /dev/null and b/icon/country/PH/PH.png differ diff --git a/icon/country/PK/PK.png b/icon/country/PK/PK.png new file mode 100644 index 00000000..c2e72247 Binary files /dev/null and b/icon/country/PK/PK.png differ diff --git a/icon/country/PL/PL.png b/icon/country/PL/PL.png new file mode 100644 index 00000000..9667a50b Binary files /dev/null and b/icon/country/PL/PL.png differ diff --git a/icon/country/PR/PR.png b/icon/country/PR/PR.png new file mode 100644 index 00000000..e8a46b6b Binary files /dev/null and b/icon/country/PR/PR.png differ diff --git a/icon/country/PT/PT.png b/icon/country/PT/PT.png new file mode 100644 index 00000000..fe1b8cb3 Binary files /dev/null and b/icon/country/PT/PT.png differ diff --git a/icon/country/PW/PW.png b/icon/country/PW/PW.png new file mode 100644 index 00000000..11f2a834 Binary files /dev/null and b/icon/country/PW/PW.png differ diff --git a/icon/country/PY/PY.png b/icon/country/PY/PY.png new file mode 100644 index 00000000..3535c456 Binary files /dev/null and b/icon/country/PY/PY.png differ diff --git a/icon/country/RO/RO.png b/icon/country/RO/RO.png new file mode 100644 index 00000000..77db8d77 Binary files /dev/null and b/icon/country/RO/RO.png differ diff --git a/icon/country/RS/RS.png b/icon/country/RS/RS.png new file mode 100644 index 00000000..37c02194 Binary files /dev/null and b/icon/country/RS/RS.png differ diff --git a/icon/country/RU/RU.png b/icon/country/RU/RU.png new file mode 100644 index 00000000..bb0b4e0f Binary files /dev/null and b/icon/country/RU/RU.png differ diff --git a/icon/country/SA/SA.png b/icon/country/SA/SA.png new file mode 100644 index 00000000..9e7ba3f9 Binary files /dev/null and b/icon/country/SA/SA.png differ diff --git a/icon/country/SC/SC.png b/icon/country/SC/SC.png new file mode 100644 index 00000000..ba1b9e60 Binary files /dev/null and b/icon/country/SC/SC.png differ diff --git a/icon/country/SD/SD.png b/icon/country/SD/SD.png new file mode 100644 index 00000000..05d80234 Binary files /dev/null and b/icon/country/SD/SD.png differ diff --git a/icon/country/SE/SE.png b/icon/country/SE/SE.png new file mode 100644 index 00000000..acf6197c Binary files /dev/null and b/icon/country/SE/SE.png differ diff --git a/icon/country/SI/SI.png b/icon/country/SI/SI.png new file mode 100644 index 00000000..079d6d2c Binary files /dev/null and b/icon/country/SI/SI.png differ diff --git a/icon/country/SK/SK.png b/icon/country/SK/SK.png new file mode 100644 index 00000000..1ec53975 Binary files /dev/null and b/icon/country/SK/SK.png differ diff --git a/icon/country/SL/SL.png b/icon/country/SL/SL.png new file mode 100644 index 00000000..02a115cf Binary files /dev/null and b/icon/country/SL/SL.png differ diff --git a/icon/country/SN/SN.png b/icon/country/SN/SN.png new file mode 100644 index 00000000..20beb7a9 Binary files /dev/null and b/icon/country/SN/SN.png differ diff --git a/icon/country/SO/SO.png b/icon/country/SO/SO.png new file mode 100644 index 00000000..ffc4ea3e Binary files /dev/null and b/icon/country/SO/SO.png differ diff --git a/icon/country/SR/SR.png b/icon/country/SR/SR.png new file mode 100644 index 00000000..e11e3fbd Binary files /dev/null and b/icon/country/SR/SR.png differ diff --git a/icon/country/SV/SV.png b/icon/country/SV/SV.png new file mode 100644 index 00000000..51abf9e5 Binary files /dev/null and b/icon/country/SV/SV.png differ diff --git a/icon/country/SY/SY.png b/icon/country/SY/SY.png new file mode 100644 index 00000000..e58c2eaf Binary files /dev/null and b/icon/country/SY/SY.png differ diff --git a/icon/country/TD/TD.png b/icon/country/TD/TD.png new file mode 100644 index 00000000..2b11010e Binary files /dev/null and b/icon/country/TD/TD.png differ diff --git a/icon/country/TH/TH.png b/icon/country/TH/TH.png new file mode 100644 index 00000000..47271bb6 Binary files /dev/null and b/icon/country/TH/TH.png differ diff --git a/icon/country/TJ/TJ.png b/icon/country/TJ/TJ.png new file mode 100644 index 00000000..8c0444ec Binary files /dev/null and b/icon/country/TJ/TJ.png differ diff --git a/icon/country/TN/TN.png b/icon/country/TN/TN.png new file mode 100644 index 00000000..15f7ba6d Binary files /dev/null and b/icon/country/TN/TN.png differ diff --git a/icon/country/TR/TR.png b/icon/country/TR/TR.png new file mode 100644 index 00000000..b2e52d36 Binary files /dev/null and b/icon/country/TR/TR.png differ diff --git a/icon/country/TT/TT.png b/icon/country/TT/TT.png new file mode 100644 index 00000000..09407bd8 Binary files /dev/null and b/icon/country/TT/TT.png differ diff --git a/icon/country/TW/TW.png b/icon/country/TW/TW.png new file mode 100644 index 00000000..25bd7e39 Binary files /dev/null and b/icon/country/TW/TW.png differ diff --git a/icon/country/TZ/TZ.png b/icon/country/TZ/TZ.png new file mode 100644 index 00000000..6d3ea408 Binary files /dev/null and b/icon/country/TZ/TZ.png differ diff --git a/icon/country/UA/UA.png b/icon/country/UA/UA.png new file mode 100644 index 00000000..6d2e708e Binary files /dev/null and b/icon/country/UA/UA.png differ diff --git a/icon/country/UG/UG.png b/icon/country/UG/UG.png new file mode 100644 index 00000000..100d02b7 Binary files /dev/null and b/icon/country/UG/UG.png differ diff --git a/icon/country/US/US.png b/icon/country/US/US.png new file mode 100644 index 00000000..fb663ee2 Binary files /dev/null and b/icon/country/US/US.png differ diff --git a/icon/country/UY/UY.png b/icon/country/UY/UY.png new file mode 100644 index 00000000..d4003cce Binary files /dev/null and b/icon/country/UY/UY.png differ diff --git a/icon/country/UZ/UZ.png b/icon/country/UZ/UZ.png new file mode 100644 index 00000000..c9c5ce4c Binary files /dev/null and b/icon/country/UZ/UZ.png differ diff --git a/icon/country/VE/VE.png b/icon/country/VE/VE.png new file mode 100644 index 00000000..ef30f17a Binary files /dev/null and b/icon/country/VE/VE.png differ diff --git a/icon/country/YT/YT.png b/icon/country/YT/YT.png new file mode 100644 index 00000000..40f67537 Binary files /dev/null and b/icon/country/YT/YT.png differ diff --git a/icon/country/ZA/ZA.png b/icon/country/ZA/ZA.png new file mode 100644 index 00000000..536a27ad Binary files /dev/null and b/icon/country/ZA/ZA.png differ diff --git a/icon/country/ZM/ZM.png b/icon/country/ZM/ZM.png new file mode 100644 index 00000000..a0d5a407 Binary files /dev/null and b/icon/country/ZM/ZM.png differ diff --git a/icon/country/ZW/ZW.png b/icon/country/ZW/ZW.png new file mode 100644 index 00000000..1ed8394f Binary files /dev/null and b/icon/country/ZW/ZW.png differ diff --git a/icon/course16x16.gif b/icon/course16x16.gif new file mode 100644 index 00000000..f9dab595 Binary files /dev/null and b/icon/course16x16.gif differ diff --git a/icon/coursesdegree16x16.gif b/icon/coursesdegree16x16.gif new file mode 100644 index 00000000..6cb4a128 Binary files /dev/null and b/icon/coursesdegree16x16.gif differ diff --git a/icon/ctr16x16.gif b/icon/ctr16x16.gif new file mode 100644 index 00000000..1010374a Binary files /dev/null and b/icon/ctr16x16.gif differ diff --git a/icon/ctr32x32.gif b/icon/ctr32x32.gif new file mode 100644 index 00000000..c1b8918e Binary files /dev/null and b/icon/ctr32x32.gif differ diff --git a/icon/ctr64x64.gif b/icon/ctr64x64.gif new file mode 100644 index 00000000..b501bbe7 Binary files /dev/null and b/icon/ctr64x64.gif differ diff --git a/icon/cut12x12.gif b/icon/cut12x12.gif new file mode 100644 index 00000000..8e283b91 Binary files /dev/null and b/icon/cut12x12.gif differ diff --git a/icon/cut16x16.gif b/icon/cut16x16.gif new file mode 100644 index 00000000..a2af39d1 Binary files /dev/null and b/icon/cut16x16.gif differ diff --git a/icon/deg16x16.gif b/icon/deg16x16.gif new file mode 100644 index 00000000..1e0eb6ff Binary files /dev/null and b/icon/deg16x16.gif differ diff --git a/icon/deg32x32.gif b/icon/deg32x32.gif new file mode 100644 index 00000000..647cb019 Binary files /dev/null and b/icon/deg32x32.gif differ diff --git a/icon/deg64x64.gif b/icon/deg64x64.gif new file mode 100644 index 00000000..9a09f085 Binary files /dev/null and b/icon/deg64x64.gif differ diff --git a/icon/degree/GNU16x16.gif b/icon/degree/GNU16x16.gif new file mode 100644 index 00000000..15aec58e Binary files /dev/null and b/icon/degree/GNU16x16.gif differ diff --git a/icon/degree/GNU32x32.gif b/icon/degree/GNU32x32.gif new file mode 100644 index 00000000..ecd5cc29 Binary files /dev/null and b/icon/degree/GNU32x32.gif differ diff --git a/icon/degree/GNU64x64.gif b/icon/degree/GNU64x64.gif new file mode 100644 index 00000000..427fed12 Binary files /dev/null and b/icon/degree/GNU64x64.gif differ diff --git a/icon/degree/agr.una.py16x16.gif b/icon/degree/agr.una.py16x16.gif new file mode 100644 index 00000000..443327de Binary files /dev/null and b/icon/degree/agr.una.py16x16.gif differ diff --git a/icon/degree/agr.una.py32x32.gif b/icon/degree/agr.una.py32x32.gif new file mode 100644 index 00000000..2d8965f0 Binary files /dev/null and b/icon/degree/agr.una.py32x32.gif differ diff --git a/icon/degree/agr.una.py64x64.gif b/icon/degree/agr.una.py64x64.gif new file mode 100644 index 00000000..483eafc5 Binary files /dev/null and b/icon/degree/agr.una.py64x64.gif differ diff --git a/icon/degree/agraria16x16.gif b/icon/degree/agraria16x16.gif new file mode 100644 index 00000000..c71b2fb0 Binary files /dev/null and b/icon/degree/agraria16x16.gif differ diff --git a/icon/degree/agraria32x32.gif b/icon/degree/agraria32x32.gif new file mode 100644 index 00000000..4bbfacca Binary files /dev/null and b/icon/degree/agraria32x32.gif differ diff --git a/icon/degree/agraria64x64.gif b/icon/degree/agraria64x64.gif new file mode 100644 index 00000000..28de42d6 Binary files /dev/null and b/icon/degree/agraria64x64.gif differ diff --git a/icon/degree/ambient16x16.gif b/icon/degree/ambient16x16.gif new file mode 100644 index 00000000..443d0705 Binary files /dev/null and b/icon/degree/ambient16x16.gif differ diff --git a/icon/degree/ambient32x32.gif b/icon/degree/ambient32x32.gif new file mode 100644 index 00000000..8885de52 Binary files /dev/null and b/icon/degree/ambient32x32.gif differ diff --git a/icon/degree/ambient64x64.gif b/icon/degree/ambient64x64.gif new file mode 100644 index 00000000..d7f108ed Binary files /dev/null and b/icon/degree/ambient64x64.gif differ diff --git a/icon/degree/analitica16x16.gif b/icon/degree/analitica16x16.gif new file mode 100644 index 00000000..9d8e1de8 Binary files /dev/null and b/icon/degree/analitica16x16.gif differ diff --git a/icon/degree/analitica32x32.gif b/icon/degree/analitica32x32.gif new file mode 100644 index 00000000..60e580a7 Binary files /dev/null and b/icon/degree/analitica32x32.gif differ diff --git a/icon/degree/analitica64x64.gif b/icon/degree/analitica64x64.gif new file mode 100644 index 00000000..3e81cdd2 Binary files /dev/null and b/icon/degree/analitica64x64.gif differ diff --git a/icon/degree/arq.una.py16x16.gif b/icon/degree/arq.una.py16x16.gif new file mode 100644 index 00000000..57c7ff41 Binary files /dev/null and b/icon/degree/arq.una.py16x16.gif differ diff --git a/icon/degree/arq.una.py32x32.gif b/icon/degree/arq.una.py32x32.gif new file mode 100644 index 00000000..b9ac950b Binary files /dev/null and b/icon/degree/arq.una.py32x32.gif differ diff --git a/icon/degree/arq.una.py64x64.gif b/icon/degree/arq.una.py64x64.gif new file mode 100644 index 00000000..ab2c236e Binary files /dev/null and b/icon/degree/arq.una.py64x64.gif differ diff --git a/icon/degree/arqtec16x16.gif b/icon/degree/arqtec16x16.gif new file mode 100644 index 00000000..57f0f7da Binary files /dev/null and b/icon/degree/arqtec16x16.gif differ diff --git a/icon/degree/arqtec32x32.gif b/icon/degree/arqtec32x32.gif new file mode 100644 index 00000000..4d06e400 Binary files /dev/null and b/icon/degree/arqtec32x32.gif differ diff --git a/icon/degree/arqtec64x64.gif b/icon/degree/arqtec64x64.gif new file mode 100644 index 00000000..acc0b77e Binary files /dev/null and b/icon/degree/arqtec64x64.gif differ diff --git a/icon/degree/arqueo16x16.gif b/icon/degree/arqueo16x16.gif new file mode 100644 index 00000000..1a47ca0e Binary files /dev/null and b/icon/degree/arqueo16x16.gif differ diff --git a/icon/degree/arqueo32x32.gif b/icon/degree/arqueo32x32.gif new file mode 100644 index 00000000..3479b5ec Binary files /dev/null and b/icon/degree/arqueo32x32.gif differ diff --git a/icon/degree/arqueo64x64.gif b/icon/degree/arqueo64x64.gif new file mode 100644 index 00000000..affebe33 Binary files /dev/null and b/icon/degree/arqueo64x64.gif differ diff --git a/icon/degree/arqui16x16.gif b/icon/degree/arqui16x16.gif new file mode 100644 index 00000000..273ec701 Binary files /dev/null and b/icon/degree/arqui16x16.gif differ diff --git a/icon/degree/arqui32x32.gif b/icon/degree/arqui32x32.gif new file mode 100644 index 00000000..c5184837 Binary files /dev/null and b/icon/degree/arqui32x32.gif differ diff --git a/icon/degree/arqui64x64.gif b/icon/degree/arqui64x64.gif new file mode 100644 index 00000000..3a3ffea5 Binary files /dev/null and b/icon/degree/arqui64x64.gif differ diff --git a/icon/degree/ars16x16.gif b/icon/degree/ars16x16.gif new file mode 100644 index 00000000..2f2acea4 Binary files /dev/null and b/icon/degree/ars16x16.gif differ diff --git a/icon/degree/ars32x32.gif b/icon/degree/ars32x32.gif new file mode 100644 index 00000000..b7c2685f Binary files /dev/null and b/icon/degree/ars32x32.gif differ diff --git a/icon/degree/ars64x64.gif b/icon/degree/ars64x64.gif new file mode 100644 index 00000000..79b4e3be Binary files /dev/null and b/icon/degree/ars64x64.gif differ diff --git a/icon/degree/atc16x16.gif b/icon/degree/atc16x16.gif new file mode 100644 index 00000000..339485c4 Binary files /dev/null and b/icon/degree/atc16x16.gif differ diff --git a/icon/degree/atc32x32.gif b/icon/degree/atc32x32.gif new file mode 100644 index 00000000..a2d01eff Binary files /dev/null and b/icon/degree/atc32x32.gif differ diff --git a/icon/degree/atc64x64.gif b/icon/degree/atc64x64.gif new file mode 100644 index 00000000..64812c7a Binary files /dev/null and b/icon/degree/atc64x64.gif differ diff --git a/icon/degree/ayna16x16.gif b/icon/degree/ayna16x16.gif new file mode 100644 index 00000000..b4534899 Binary files /dev/null and b/icon/degree/ayna16x16.gif differ diff --git a/icon/degree/ayna32x32.gif b/icon/degree/ayna32x32.gif new file mode 100644 index 00000000..9653c994 Binary files /dev/null and b/icon/degree/ayna32x32.gif differ diff --git a/icon/degree/ayna64x64.gif b/icon/degree/ayna64x64.gif new file mode 100644 index 00000000..5a904b18 Binary files /dev/null and b/icon/degree/ayna64x64.gif differ diff --git a/icon/degree/bellartes16x16.gif b/icon/degree/bellartes16x16.gif new file mode 100644 index 00000000..b6606119 Binary files /dev/null and b/icon/degree/bellartes16x16.gif differ diff --git a/icon/degree/bellartes32x32.gif b/icon/degree/bellartes32x32.gif new file mode 100644 index 00000000..9996fa74 Binary files /dev/null and b/icon/degree/bellartes32x32.gif differ diff --git a/icon/degree/bellartes64x64.gif b/icon/degree/bellartes64x64.gif new file mode 100644 index 00000000..cdeaeb34 Binary files /dev/null and b/icon/degree/bellartes64x64.gif differ diff --git a/icon/degree/biblio16x16.gif b/icon/degree/biblio16x16.gif new file mode 100644 index 00000000..8e8b2285 Binary files /dev/null and b/icon/degree/biblio16x16.gif differ diff --git a/icon/degree/biblio32x32.gif b/icon/degree/biblio32x32.gif new file mode 100644 index 00000000..02d8b276 Binary files /dev/null and b/icon/degree/biblio32x32.gif differ diff --git a/icon/degree/biblio64x64.gif b/icon/degree/biblio64x64.gif new file mode 100644 index 00000000..dc7d5c6e Binary files /dev/null and b/icon/degree/biblio64x64.gif differ diff --git a/icon/degree/bioetica16x16.gif b/icon/degree/bioetica16x16.gif new file mode 100644 index 00000000..d023230a Binary files /dev/null and b/icon/degree/bioetica16x16.gif differ diff --git a/icon/degree/bioetica32x32.gif b/icon/degree/bioetica32x32.gif new file mode 100644 index 00000000..91e65e4e Binary files /dev/null and b/icon/degree/bioetica32x32.gif differ diff --git a/icon/degree/bioetica64x64.gif b/icon/degree/bioetica64x64.gif new file mode 100644 index 00000000..d0c0866f Binary files /dev/null and b/icon/degree/bioetica64x64.gif differ diff --git a/icon/degree/calidad16x16.gif b/icon/degree/calidad16x16.gif new file mode 100644 index 00000000..8821bca6 Binary files /dev/null and b/icon/degree/calidad16x16.gif differ diff --git a/icon/degree/calidad32x32.gif b/icon/degree/calidad32x32.gif new file mode 100644 index 00000000..ab7fa805 Binary files /dev/null and b/icon/degree/calidad32x32.gif differ diff --git a/icon/degree/calidad64x64.gif b/icon/degree/calidad64x64.gif new file mode 100644 index 00000000..d000548b Binary files /dev/null and b/icon/degree/calidad64x64.gif differ diff --git a/icon/degree/camaguey16x16.gif b/icon/degree/camaguey16x16.gif new file mode 100644 index 00000000..2059986c Binary files /dev/null and b/icon/degree/camaguey16x16.gif differ diff --git a/icon/degree/camaguey32x32.gif b/icon/degree/camaguey32x32.gif new file mode 100644 index 00000000..29f40bb7 Binary files /dev/null and b/icon/degree/camaguey32x32.gif differ diff --git a/icon/degree/camaguey64x64.gif b/icon/degree/camaguey64x64.gif new file mode 100644 index 00000000..aa77c003 Binary files /dev/null and b/icon/degree/camaguey64x64.gif differ diff --git a/icon/degree/caminos16x16.gif b/icon/degree/caminos16x16.gif new file mode 100644 index 00000000..3910c799 Binary files /dev/null and b/icon/degree/caminos16x16.gif differ diff --git a/icon/degree/caminos32x32.gif b/icon/degree/caminos32x32.gif new file mode 100644 index 00000000..99d06d6d Binary files /dev/null and b/icon/degree/caminos32x32.gif differ diff --git a/icon/degree/caminos64x64.gif b/icon/degree/caminos64x64.gif new file mode 100644 index 00000000..606aba33 Binary files /dev/null and b/icon/degree/caminos64x64.gif differ diff --git a/icon/degree/casimiro16x16.gif b/icon/degree/casimiro16x16.gif new file mode 100644 index 00000000..fe81c887 Binary files /dev/null and b/icon/degree/casimiro16x16.gif differ diff --git a/icon/degree/casimiro32x32.gif b/icon/degree/casimiro32x32.gif new file mode 100644 index 00000000..d62dc2e4 Binary files /dev/null and b/icon/degree/casimiro32x32.gif differ diff --git a/icon/degree/casimiro64x64.gif b/icon/degree/casimiro64x64.gif new file mode 100644 index 00000000..5acf7f35 Binary files /dev/null and b/icon/degree/casimiro64x64.gif differ diff --git a/icon/degree/cevug16x16.gif b/icon/degree/cevug16x16.gif new file mode 100644 index 00000000..258205f2 Binary files /dev/null and b/icon/degree/cevug16x16.gif differ diff --git a/icon/degree/cevug32x32.gif b/icon/degree/cevug32x32.gif new file mode 100644 index 00000000..2aa1ff2d Binary files /dev/null and b/icon/degree/cevug32x32.gif differ diff --git a/icon/degree/cevug64x64.gif b/icon/degree/cevug64x64.gif new file mode 100644 index 00000000..b9688eb8 Binary files /dev/null and b/icon/degree/cevug64x64.gif differ diff --git a/icon/degree/cevuna.una.py16x16.gif b/icon/degree/cevuna.una.py16x16.gif new file mode 100644 index 00000000..775a2af6 Binary files /dev/null and b/icon/degree/cevuna.una.py16x16.gif differ diff --git a/icon/degree/cevuna.una.py32x32.gif b/icon/degree/cevuna.una.py32x32.gif new file mode 100644 index 00000000..087b9b04 Binary files /dev/null and b/icon/degree/cevuna.una.py32x32.gif differ diff --git a/icon/degree/cevuna.una.py64x64.gif b/icon/degree/cevuna.una.py64x64.gif new file mode 100644 index 00000000..0c7abc4e Binary files /dev/null and b/icon/degree/cevuna.una.py64x64.gif differ diff --git a/icon/degree/cfc16x16.gif b/icon/degree/cfc16x16.gif new file mode 100644 index 00000000..e9f7abfe Binary files /dev/null and b/icon/degree/cfc16x16.gif differ diff --git a/icon/degree/cfc32x32.gif b/icon/degree/cfc32x32.gif new file mode 100644 index 00000000..f20a6004 Binary files /dev/null and b/icon/degree/cfc32x32.gif differ diff --git a/icon/degree/cfc64x64.gif b/icon/degree/cfc64x64.gif new file mode 100644 index 00000000..df6f6fb4 Binary files /dev/null and b/icon/degree/cfc64x64.gif differ diff --git a/icon/degree/cicode16x16.gif b/icon/degree/cicode16x16.gif new file mode 100644 index 00000000..c251e07d Binary files /dev/null and b/icon/degree/cicode16x16.gif differ diff --git a/icon/degree/cicode32x32.gif b/icon/degree/cicode32x32.gif new file mode 100644 index 00000000..b4b7fcad Binary files /dev/null and b/icon/degree/cicode32x32.gif differ diff --git a/icon/degree/cicode64x64.gif b/icon/degree/cicode64x64.gif new file mode 100644 index 00000000..eaeac854 Binary files /dev/null and b/icon/degree/cicode64x64.gif differ diff --git a/icon/degree/ciencias16x16.gif b/icon/degree/ciencias16x16.gif new file mode 100644 index 00000000..634ff97b Binary files /dev/null and b/icon/degree/ciencias16x16.gif differ diff --git a/icon/degree/ciencias32x32.gif b/icon/degree/ciencias32x32.gif new file mode 100644 index 00000000..c82c11f9 Binary files /dev/null and b/icon/degree/ciencias32x32.gif differ diff --git a/icon/degree/ciencias64x64.gif b/icon/degree/ciencias64x64.gif new file mode 100644 index 00000000..60702b9c Binary files /dev/null and b/icon/degree/ciencias64x64.gif differ diff --git a/icon/degree/cimet16x16.gif b/icon/degree/cimet16x16.gif new file mode 100644 index 00000000..25a9a756 Binary files /dev/null and b/icon/degree/cimet16x16.gif differ diff --git a/icon/degree/cimet32x32.gif b/icon/degree/cimet32x32.gif new file mode 100644 index 00000000..2da41504 Binary files /dev/null and b/icon/degree/cimet32x32.gif differ diff --git a/icon/degree/cimet64x64.gif b/icon/degree/cimet64x64.gif new file mode 100644 index 00000000..b9b64d43 Binary files /dev/null and b/icon/degree/cimet64x64.gif differ diff --git a/icon/degree/clm16x16.gif b/icon/degree/clm16x16.gif new file mode 100644 index 00000000..12c393c8 Binary files /dev/null and b/icon/degree/clm16x16.gif differ diff --git a/icon/degree/clm32x32.gif b/icon/degree/clm32x32.gif new file mode 100644 index 00000000..c16ff488 Binary files /dev/null and b/icon/degree/clm32x32.gif differ diff --git a/icon/degree/clm64x64.gif b/icon/degree/clm64x64.gif new file mode 100644 index 00000000..782fe2e2 Binary files /dev/null and b/icon/degree/clm64x64.gif differ diff --git a/icon/degree/conserva16x16.gif b/icon/degree/conserva16x16.gif new file mode 100644 index 00000000..a00a0054 Binary files /dev/null and b/icon/degree/conserva16x16.gif differ diff --git a/icon/degree/conserva32x32.gif b/icon/degree/conserva32x32.gif new file mode 100644 index 00000000..318c12fe Binary files /dev/null and b/icon/degree/conserva32x32.gif differ diff --git a/icon/degree/conserva64x64.gif b/icon/degree/conserva64x64.gif new file mode 100644 index 00000000..9292d48d Binary files /dev/null and b/icon/degree/conserva64x64.gif differ diff --git a/icon/degree/crimi16x16.gif b/icon/degree/crimi16x16.gif new file mode 100644 index 00000000..1a881140 Binary files /dev/null and b/icon/degree/crimi16x16.gif differ diff --git a/icon/degree/crimi32x32.gif b/icon/degree/crimi32x32.gif new file mode 100644 index 00000000..ab0e3dbf Binary files /dev/null and b/icon/degree/crimi32x32.gif differ diff --git a/icon/degree/crimi64x64.gif b/icon/degree/crimi64x64.gif new file mode 100644 index 00000000..2e32c56f Binary files /dev/null and b/icon/degree/crimi64x64.gif differ diff --git a/icon/degree/cruzroja16x16.gif b/icon/degree/cruzroja16x16.gif new file mode 100644 index 00000000..40fe0fd6 Binary files /dev/null and b/icon/degree/cruzroja16x16.gif differ diff --git a/icon/degree/cruzroja32x32.gif b/icon/degree/cruzroja32x32.gif new file mode 100644 index 00000000..d7aba92d Binary files /dev/null and b/icon/degree/cruzroja32x32.gif differ diff --git a/icon/degree/cruzroja64x64.gif b/icon/degree/cruzroja64x64.gif new file mode 100644 index 00000000..0df50673 Binary files /dev/null and b/icon/degree/cruzroja64x64.gif differ diff --git a/icon/degree/csalud16x16.gif b/icon/degree/csalud16x16.gif new file mode 100644 index 00000000..2804367d Binary files /dev/null and b/icon/degree/csalud16x16.gif differ diff --git a/icon/degree/csalud32x32.gif b/icon/degree/csalud32x32.gif new file mode 100644 index 00000000..d185e3c6 Binary files /dev/null and b/icon/degree/csalud32x32.gif differ diff --git a/icon/degree/csalud64x64.gif b/icon/degree/csalud64x64.gif new file mode 100644 index 00000000..bf6448c6 Binary files /dev/null and b/icon/degree/csalud64x64.gif differ diff --git a/icon/degree/cta16x16.gif b/icon/degree/cta16x16.gif new file mode 100644 index 00000000..c8c47aa8 Binary files /dev/null and b/icon/degree/cta16x16.gif differ diff --git a/icon/degree/cta32x32.gif b/icon/degree/cta32x32.gif new file mode 100644 index 00000000..3bebe244 Binary files /dev/null and b/icon/degree/cta32x32.gif differ diff --git a/icon/degree/cta64x64.gif b/icon/degree/cta64x64.gif new file mode 100644 index 00000000..8e62692f Binary files /dev/null and b/icon/degree/cta64x64.gif differ diff --git a/icon/degree/ctma16x16.gif b/icon/degree/ctma16x16.gif new file mode 100644 index 00000000..e27f86a4 Binary files /dev/null and b/icon/degree/ctma16x16.gif differ diff --git a/icon/degree/ctma32x32.gif b/icon/degree/ctma32x32.gif new file mode 100644 index 00000000..54415cb6 Binary files /dev/null and b/icon/degree/ctma32x32.gif differ diff --git a/icon/degree/ctma64x64.gif b/icon/degree/ctma64x64.gif new file mode 100644 index 00000000..bf9b3322 Binary files /dev/null and b/icon/degree/ctma64x64.gif differ diff --git a/icon/degree/dcho16x16.gif b/icon/degree/dcho16x16.gif new file mode 100644 index 00000000..0d55c8cf Binary files /dev/null and b/icon/degree/dcho16x16.gif differ diff --git a/icon/degree/dcho32x32.gif b/icon/degree/dcho32x32.gif new file mode 100644 index 00000000..9210710f Binary files /dev/null and b/icon/degree/dcho32x32.gif differ diff --git a/icon/degree/dcho64x64.gif b/icon/degree/dcho64x64.gif new file mode 100644 index 00000000..796b61b7 Binary files /dev/null and b/icon/degree/dcho64x64.gif differ diff --git a/icon/degree/deporte16x16.gif b/icon/degree/deporte16x16.gif new file mode 100644 index 00000000..0e9c5d75 Binary files /dev/null and b/icon/degree/deporte16x16.gif differ diff --git a/icon/degree/deporte32x32.gif b/icon/degree/deporte32x32.gif new file mode 100644 index 00000000..4fec5eaf Binary files /dev/null and b/icon/degree/deporte32x32.gif differ diff --git a/icon/degree/deporte64x64.gif b/icon/degree/deporte64x64.gif new file mode 100644 index 00000000..68bc2a25 Binary files /dev/null and b/icon/degree/deporte64x64.gif differ diff --git a/icon/degree/der.una.py16x16.gif b/icon/degree/der.una.py16x16.gif new file mode 100644 index 00000000..c9cd9325 Binary files /dev/null and b/icon/degree/der.una.py16x16.gif differ diff --git a/icon/degree/der.una.py32x32.gif b/icon/degree/der.una.py32x32.gif new file mode 100644 index 00000000..07acbd95 Binary files /dev/null and b/icon/degree/der.una.py32x32.gif differ diff --git a/icon/degree/der.una.py64x64.gif b/icon/degree/der.una.py64x64.gif new file mode 100644 index 00000000..cd3ab249 Binary files /dev/null and b/icon/degree/der.una.py64x64.gif differ diff --git a/icon/degree/dipestad16x16.gif b/icon/degree/dipestad16x16.gif new file mode 100644 index 00000000..dc8abc9e Binary files /dev/null and b/icon/degree/dipestad16x16.gif differ diff --git a/icon/degree/dipestad32x32.gif b/icon/degree/dipestad32x32.gif new file mode 100644 index 00000000..fd0a702a Binary files /dev/null and b/icon/degree/dipestad32x32.gif differ diff --git a/icon/degree/dipestad64x64.gif b/icon/degree/dipestad64x64.gif new file mode 100644 index 00000000..59ac0734 Binary files /dev/null and b/icon/degree/dipestad64x64.gif differ diff --git a/icon/degree/eco.una.py16x16.gif b/icon/degree/eco.una.py16x16.gif new file mode 100644 index 00000000..2504e2ed Binary files /dev/null and b/icon/degree/eco.una.py16x16.gif differ diff --git a/icon/degree/eco.una.py32x32.gif b/icon/degree/eco.una.py32x32.gif new file mode 100644 index 00000000..c1da028c Binary files /dev/null and b/icon/degree/eco.una.py32x32.gif differ diff --git a/icon/degree/eco.una.py64x64.gif b/icon/degree/eco.una.py64x64.gif new file mode 100644 index 00000000..889fc1d3 Binary files /dev/null and b/icon/degree/eco.una.py64x64.gif differ diff --git a/icon/degree/economia16x16.gif b/icon/degree/economia16x16.gif new file mode 100644 index 00000000..129189c9 Binary files /dev/null and b/icon/degree/economia16x16.gif differ diff --git a/icon/degree/economia32x32.gif b/icon/degree/economia32x32.gif new file mode 100644 index 00000000..632b38da Binary files /dev/null and b/icon/degree/economia32x32.gif differ diff --git a/icon/degree/economia64x64.gif b/icon/degree/economia64x64.gif new file mode 100644 index 00000000..9565b9f1 Binary files /dev/null and b/icon/degree/economia64x64.gif differ diff --git a/icon/degree/ects16x16.gif b/icon/degree/ects16x16.gif new file mode 100644 index 00000000..b339c16f Binary files /dev/null and b/icon/degree/ects16x16.gif differ diff --git a/icon/degree/ects32x32.gif b/icon/degree/ects32x32.gif new file mode 100644 index 00000000..8a308799 Binary files /dev/null and b/icon/degree/ects32x32.gif differ diff --git a/icon/degree/ects64x64.gif b/icon/degree/ects64x64.gif new file mode 100644 index 00000000..b6475b8b Binary files /dev/null and b/icon/degree/ects64x64.gif differ diff --git a/icon/degree/edu16x16.gif b/icon/degree/edu16x16.gif new file mode 100644 index 00000000..16e1ba9c Binary files /dev/null and b/icon/degree/edu16x16.gif differ diff --git a/icon/degree/edu32x32.gif b/icon/degree/edu32x32.gif new file mode 100644 index 00000000..93f68f8b Binary files /dev/null and b/icon/degree/edu32x32.gif differ diff --git a/icon/degree/edu64x64.gif b/icon/degree/edu64x64.gif new file mode 100644 index 00000000..62e2c5e3 Binary files /dev/null and b/icon/degree/edu64x64.gif differ diff --git a/icon/degree/eduhumceuta16x16.gif b/icon/degree/eduhumceuta16x16.gif new file mode 100644 index 00000000..b5fe645a Binary files /dev/null and b/icon/degree/eduhumceuta16x16.gif differ diff --git a/icon/degree/eduhumceuta32x32.gif b/icon/degree/eduhumceuta32x32.gif new file mode 100644 index 00000000..b2b9e659 Binary files /dev/null and b/icon/degree/eduhumceuta32x32.gif differ diff --git a/icon/degree/eduhumceuta64x64.gif b/icon/degree/eduhumceuta64x64.gif new file mode 100644 index 00000000..56cc95d5 Binary files /dev/null and b/icon/degree/eduhumceuta64x64.gif differ diff --git a/icon/degree/ehu16x16.gif b/icon/degree/ehu16x16.gif new file mode 100644 index 00000000..a88935bc Binary files /dev/null and b/icon/degree/ehu16x16.gif differ diff --git a/icon/degree/ehu32x32.gif b/icon/degree/ehu32x32.gif new file mode 100644 index 00000000..1c350080 Binary files /dev/null and b/icon/degree/ehu32x32.gif differ diff --git a/icon/degree/ehu64x64.gif b/icon/degree/ehu64x64.gif new file mode 100644 index 00000000..0b913053 Binary files /dev/null and b/icon/degree/ehu64x64.gif differ diff --git a/icon/degree/enfer16x16.gif b/icon/degree/enfer16x16.gif new file mode 100644 index 00000000..e0ad902e Binary files /dev/null and b/icon/degree/enfer16x16.gif differ diff --git a/icon/degree/enfer32x32.gif b/icon/degree/enfer32x32.gif new file mode 100644 index 00000000..4862e300 Binary files /dev/null and b/icon/degree/enfer32x32.gif differ diff --git a/icon/degree/enfer64x64.gif b/icon/degree/enfer64x64.gif new file mode 100644 index 00000000..a0afeb48 Binary files /dev/null and b/icon/degree/enfer64x64.gif differ diff --git a/icon/degree/enferceuta16x16.gif b/icon/degree/enferceuta16x16.gif new file mode 100644 index 00000000..771f1c11 Binary files /dev/null and b/icon/degree/enferceuta16x16.gif differ diff --git a/icon/degree/enferceuta32x32.gif b/icon/degree/enferceuta32x32.gif new file mode 100644 index 00000000..e4ed660a Binary files /dev/null and b/icon/degree/enferceuta32x32.gif differ diff --git a/icon/degree/enferceuta64x64.gif b/icon/degree/enferceuta64x64.gif new file mode 100644 index 00000000..d6bd1a0a Binary files /dev/null and b/icon/degree/enferceuta64x64.gif differ diff --git a/icon/degree/enfermelilla16x16.gif b/icon/degree/enfermelilla16x16.gif new file mode 100644 index 00000000..d96fffbc Binary files /dev/null and b/icon/degree/enfermelilla16x16.gif differ diff --git a/icon/degree/enfermelilla32x32.gif b/icon/degree/enfermelilla32x32.gif new file mode 100644 index 00000000..f4569a7e Binary files /dev/null and b/icon/degree/enfermelilla32x32.gif differ diff --git a/icon/degree/enfermelilla64x64.gif b/icon/degree/enfermelilla64x64.gif new file mode 100644 index 00000000..9c0736e1 Binary files /dev/null and b/icon/degree/enfermelilla64x64.gif differ diff --git a/icon/degree/ep16x16.gif b/icon/degree/ep16x16.gif new file mode 100644 index 00000000..466cc108 Binary files /dev/null and b/icon/degree/ep16x16.gif differ diff --git a/icon/degree/ep32x32.gif b/icon/degree/ep32x32.gif new file mode 100644 index 00000000..31ff8e32 Binary files /dev/null and b/icon/degree/ep32x32.gif differ diff --git a/icon/degree/ep64x64.gif b/icon/degree/ep64x64.gif new file mode 100644 index 00000000..b21dda52 Binary files /dev/null and b/icon/degree/ep64x64.gif differ diff --git a/icon/degree/etsiit16x16.gif b/icon/degree/etsiit16x16.gif new file mode 100644 index 00000000..5d372acc Binary files /dev/null and b/icon/degree/etsiit16x16.gif differ diff --git a/icon/degree/etsiit32x32.gif b/icon/degree/etsiit32x32.gif new file mode 100644 index 00000000..5d8f72f9 Binary files /dev/null and b/icon/degree/etsiit32x32.gif differ diff --git a/icon/degree/etsiit64x64.gif b/icon/degree/etsiit64x64.gif new file mode 100644 index 00000000..d2161198 Binary files /dev/null and b/icon/degree/etsiit64x64.gif differ diff --git a/icon/degree/eues16x16.gif b/icon/degree/eues16x16.gif new file mode 100644 index 00000000..5eedb822 Binary files /dev/null and b/icon/degree/eues16x16.gif differ diff --git a/icon/degree/eues32x32.gif b/icon/degree/eues32x32.gif new file mode 100644 index 00000000..e18baa78 Binary files /dev/null and b/icon/degree/eues32x32.gif differ diff --git a/icon/degree/eues64x64.gif b/icon/degree/eues64x64.gif new file mode 100644 index 00000000..6279596c Binary files /dev/null and b/icon/degree/eues64x64.gif differ diff --git a/icon/degree/facen.una.py16x16.gif b/icon/degree/facen.una.py16x16.gif new file mode 100644 index 00000000..6257790e Binary files /dev/null and b/icon/degree/facen.una.py16x16.gif differ diff --git a/icon/degree/facen.una.py32x32.gif b/icon/degree/facen.una.py32x32.gif new file mode 100644 index 00000000..560b0c7f Binary files /dev/null and b/icon/degree/facen.una.py32x32.gif differ diff --git a/icon/degree/facen.una.py64x64.gif b/icon/degree/facen.una.py64x64.gif new file mode 100644 index 00000000..07088a2a Binary files /dev/null and b/icon/degree/facen.una.py64x64.gif differ diff --git a/icon/degree/farmacia16x16.gif b/icon/degree/farmacia16x16.gif new file mode 100644 index 00000000..2dc63988 Binary files /dev/null and b/icon/degree/farmacia16x16.gif differ diff --git a/icon/degree/farmacia32x32.gif b/icon/degree/farmacia32x32.gif new file mode 100644 index 00000000..a1421ad8 Binary files /dev/null and b/icon/degree/farmacia32x32.gif differ diff --git a/icon/degree/farmacia64x64.gif b/icon/degree/farmacia64x64.gif new file mode 100644 index 00000000..be20b4d7 Binary files /dev/null and b/icon/degree/farmacia64x64.gif differ diff --git a/icon/degree/fccee16x16.gif b/icon/degree/fccee16x16.gif new file mode 100644 index 00000000..3961ec3e Binary files /dev/null and b/icon/degree/fccee16x16.gif differ diff --git a/icon/degree/fccee32x32.gif b/icon/degree/fccee32x32.gif new file mode 100644 index 00000000..29e88525 Binary files /dev/null and b/icon/degree/fccee32x32.gif differ diff --git a/icon/degree/fccee64x64.gif b/icon/degree/fccee64x64.gif new file mode 100644 index 00000000..195bd7fe Binary files /dev/null and b/icon/degree/fccee64x64.gif differ diff --git a/icon/degree/fcq.una.py16x16.gif b/icon/degree/fcq.una.py16x16.gif new file mode 100644 index 00000000..03c213a1 Binary files /dev/null and b/icon/degree/fcq.una.py16x16.gif differ diff --git a/icon/degree/fcq.una.py32x32.gif b/icon/degree/fcq.una.py32x32.gif new file mode 100644 index 00000000..3a09504b Binary files /dev/null and b/icon/degree/fcq.una.py32x32.gif differ diff --git a/icon/degree/fcq.una.py64x64.gif b/icon/degree/fcq.una.py64x64.gif new file mode 100644 index 00000000..0e40aa0a Binary files /dev/null and b/icon/degree/fcq.una.py64x64.gif differ diff --git a/icon/degree/fil.una.py16x16.gif b/icon/degree/fil.una.py16x16.gif new file mode 100644 index 00000000..48e1b342 Binary files /dev/null and b/icon/degree/fil.una.py16x16.gif differ diff --git a/icon/degree/fil.una.py32x32.gif b/icon/degree/fil.una.py32x32.gif new file mode 100644 index 00000000..71b6e15a Binary files /dev/null and b/icon/degree/fil.una.py32x32.gif differ diff --git a/icon/degree/fil.una.py64x64.gif b/icon/degree/fil.una.py64x64.gif new file mode 100644 index 00000000..fe643e3f Binary files /dev/null and b/icon/degree/fil.una.py64x64.gif differ diff --git a/icon/degree/filetras16x16.gif b/icon/degree/filetras16x16.gif new file mode 100644 index 00000000..a2c0a44f Binary files /dev/null and b/icon/degree/filetras16x16.gif differ diff --git a/icon/degree/filetras32x32.gif b/icon/degree/filetras32x32.gif new file mode 100644 index 00000000..1d2f2824 Binary files /dev/null and b/icon/degree/filetras32x32.gif differ diff --git a/icon/degree/filetras64x64.gif b/icon/degree/filetras64x64.gif new file mode 100644 index 00000000..446355b0 Binary files /dev/null and b/icon/degree/filetras64x64.gif differ diff --git a/icon/degree/fisio16x16.gif b/icon/degree/fisio16x16.gif new file mode 100644 index 00000000..0b7749d0 Binary files /dev/null and b/icon/degree/fisio16x16.gif differ diff --git a/icon/degree/fisio32x32.gif b/icon/degree/fisio32x32.gif new file mode 100644 index 00000000..a1c53c05 Binary files /dev/null and b/icon/degree/fisio32x32.gif differ diff --git a/icon/degree/fisio64x64.gif b/icon/degree/fisio64x64.gif new file mode 100644 index 00000000..33a94b0f Binary files /dev/null and b/icon/degree/fisio64x64.gif differ diff --git a/icon/degree/gemma16x16.gif b/icon/degree/gemma16x16.gif new file mode 100644 index 00000000..19cf31fa Binary files /dev/null and b/icon/degree/gemma16x16.gif differ diff --git a/icon/degree/gemma32x32.gif b/icon/degree/gemma32x32.gif new file mode 100644 index 00000000..a5e2bd95 Binary files /dev/null and b/icon/degree/gemma32x32.gif differ diff --git a/icon/degree/gemma64x64.gif b/icon/degree/gemma64x64.gif new file mode 100644 index 00000000..1b3e899b Binary files /dev/null and b/icon/degree/gemma64x64.gif differ diff --git a/icon/degree/hidraulica16x16.gif b/icon/degree/hidraulica16x16.gif new file mode 100644 index 00000000..c9585ac6 Binary files /dev/null and b/icon/degree/hidraulica16x16.gif differ diff --git a/icon/degree/hidraulica32x32.gif b/icon/degree/hidraulica32x32.gif new file mode 100644 index 00000000..0562bf78 Binary files /dev/null and b/icon/degree/hidraulica32x32.gif differ diff --git a/icon/degree/hidraulica64x64.gif b/icon/degree/hidraulica64x64.gif new file mode 100644 index 00000000..6037c929 Binary files /dev/null and b/icon/degree/hidraulica64x64.gif differ diff --git a/icon/degree/ibt16x16.gif b/icon/degree/ibt16x16.gif new file mode 100644 index 00000000..44d05851 Binary files /dev/null and b/icon/degree/ibt16x16.gif differ diff --git a/icon/degree/ibt32x32.gif b/icon/degree/ibt32x32.gif new file mode 100644 index 00000000..495c956f Binary files /dev/null and b/icon/degree/ibt32x32.gif differ diff --git a/icon/degree/ibt64x64.gif b/icon/degree/ibt64x64.gif new file mode 100644 index 00000000..003afa3a Binary files /dev/null and b/icon/degree/ibt64x64.gif differ diff --git a/icon/degree/iem16x16.gif b/icon/degree/iem16x16.gif new file mode 100644 index 00000000..8c42a9ff Binary files /dev/null and b/icon/degree/iem16x16.gif differ diff --git a/icon/degree/iem32x32.gif b/icon/degree/iem32x32.gif new file mode 100644 index 00000000..864688a4 Binary files /dev/null and b/icon/degree/iem32x32.gif differ diff --git a/icon/degree/iem64x64.gif b/icon/degree/iem64x64.gif new file mode 100644 index 00000000..d5bf9a01 Binary files /dev/null and b/icon/degree/iem64x64.gif differ diff --git a/icon/degree/indalo16x16.gif b/icon/degree/indalo16x16.gif new file mode 100644 index 00000000..5c59bd39 Binary files /dev/null and b/icon/degree/indalo16x16.gif differ diff --git a/icon/degree/indalo32x32.gif b/icon/degree/indalo32x32.gif new file mode 100644 index 00000000..ab83d7ea Binary files /dev/null and b/icon/degree/indalo32x32.gif differ diff --git a/icon/degree/indalo64x64.gif b/icon/degree/indalo64x64.gif new file mode 100644 index 00000000..d0a136f7 Binary files /dev/null and b/icon/degree/indalo64x64.gif differ diff --git a/icon/degree/inf16x16.gif b/icon/degree/inf16x16.gif new file mode 100644 index 00000000..0ffe0dca Binary files /dev/null and b/icon/degree/inf16x16.gif differ diff --git a/icon/degree/inf32x32.gif b/icon/degree/inf32x32.gif new file mode 100644 index 00000000..03765d02 Binary files /dev/null and b/icon/degree/inf32x32.gif differ diff --git a/icon/degree/inf64x64.gif b/icon/degree/inf64x64.gif new file mode 100644 index 00000000..31e0d02a Binary files /dev/null and b/icon/degree/inf64x64.gif differ diff --git a/icon/degree/ing.una.py16x16.gif b/icon/degree/ing.una.py16x16.gif new file mode 100644 index 00000000..1a5f3cc7 Binary files /dev/null and b/icon/degree/ing.una.py16x16.gif differ diff --git a/icon/degree/ing.una.py32x32.gif b/icon/degree/ing.una.py32x32.gif new file mode 100644 index 00000000..bfe71637 Binary files /dev/null and b/icon/degree/ing.una.py32x32.gif differ diff --git a/icon/degree/ing.una.py64x64.gif b/icon/degree/ing.una.py64x64.gif new file mode 100644 index 00000000..24695c5b Binary files /dev/null and b/icon/degree/ing.una.py64x64.gif differ diff --git a/icon/degree/ingquimi16x16.gif b/icon/degree/ingquimi16x16.gif new file mode 100644 index 00000000..388f6445 Binary files /dev/null and b/icon/degree/ingquimi16x16.gif differ diff --git a/icon/degree/ingquimi32x32.gif b/icon/degree/ingquimi32x32.gif new file mode 100644 index 00000000..fbc1cc6c Binary files /dev/null and b/icon/degree/ingquimi32x32.gif differ diff --git a/icon/degree/ingquimi64x64.gif b/icon/degree/ingquimi64x64.gif new file mode 100644 index 00000000..f2ac3b8a Binary files /dev/null and b/icon/degree/ingquimi64x64.gif differ diff --git a/icon/degree/inmaculada16x16.gif b/icon/degree/inmaculada16x16.gif new file mode 100644 index 00000000..916668c7 Binary files /dev/null and b/icon/degree/inmaculada16x16.gif differ diff --git a/icon/degree/inmaculada32x32.gif b/icon/degree/inmaculada32x32.gif new file mode 100644 index 00000000..0efd9ac5 Binary files /dev/null and b/icon/degree/inmaculada32x32.gif differ diff --git a/icon/degree/inmaculada64x64.gif b/icon/degree/inmaculada64x64.gif new file mode 100644 index 00000000..3d1f553b Binary files /dev/null and b/icon/degree/inmaculada64x64.gif differ diff --git a/icon/degree/innodocente16x16.gif b/icon/degree/innodocente16x16.gif new file mode 100644 index 00000000..349b9a5d Binary files /dev/null and b/icon/degree/innodocente16x16.gif differ diff --git a/icon/degree/innodocente32x32.gif b/icon/degree/innodocente32x32.gif new file mode 100644 index 00000000..a442a073 Binary files /dev/null and b/icon/degree/innodocente32x32.gif differ diff --git a/icon/degree/innodocente64x64.gif b/icon/degree/innodocente64x64.gif new file mode 100644 index 00000000..f0c78b0c Binary files /dev/null and b/icon/degree/innodocente64x64.gif differ diff --git a/icon/degree/isit16x16.gif b/icon/degree/isit16x16.gif new file mode 100644 index 00000000..0bd97376 Binary files /dev/null and b/icon/degree/isit16x16.gif differ diff --git a/icon/degree/isit32x32.gif b/icon/degree/isit32x32.gif new file mode 100644 index 00000000..83dd613c Binary files /dev/null and b/icon/degree/isit32x32.gif differ diff --git a/icon/degree/isit64x64.gif b/icon/degree/isit64x64.gif new file mode 100644 index 00000000..8dd16692 Binary files /dev/null and b/icon/degree/isit64x64.gif differ diff --git a/icon/degree/junta16x16.gif b/icon/degree/junta16x16.gif new file mode 100644 index 00000000..72c8d145 Binary files /dev/null and b/icon/degree/junta16x16.gif differ diff --git a/icon/degree/junta32x32.gif b/icon/degree/junta32x32.gif new file mode 100644 index 00000000..42086f57 Binary files /dev/null and b/icon/degree/junta32x32.gif differ diff --git a/icon/degree/junta64x64.gif b/icon/degree/junta64x64.gif new file mode 100644 index 00000000..3627d930 Binary files /dev/null and b/icon/degree/junta64x64.gif differ diff --git a/icon/degree/lanwan16x16.gif b/icon/degree/lanwan16x16.gif new file mode 100644 index 00000000..68e8fabe Binary files /dev/null and b/icon/degree/lanwan16x16.gif differ diff --git a/icon/degree/lanwan32x32.gif b/icon/degree/lanwan32x32.gif new file mode 100644 index 00000000..da8bfeea Binary files /dev/null and b/icon/degree/lanwan32x32.gif differ diff --git a/icon/degree/lanwan64x64.gif b/icon/degree/lanwan64x64.gif new file mode 100644 index 00000000..68dd881a Binary files /dev/null and b/icon/degree/lanwan64x64.gif differ diff --git a/icon/degree/liv.ac.uk16x16.gif b/icon/degree/liv.ac.uk16x16.gif new file mode 100644 index 00000000..c97d7714 Binary files /dev/null and b/icon/degree/liv.ac.uk16x16.gif differ diff --git a/icon/degree/liv.ac.uk32x32.gif b/icon/degree/liv.ac.uk32x32.gif new file mode 100644 index 00000000..c8e98792 Binary files /dev/null and b/icon/degree/liv.ac.uk32x32.gif differ diff --git a/icon/degree/liv.ac.uk64x64.gif b/icon/degree/liv.ac.uk64x64.gif new file mode 100644 index 00000000..6457701c Binary files /dev/null and b/icon/degree/liv.ac.uk64x64.gif differ diff --git a/icon/degree/logoswad16x16.gif b/icon/degree/logoswad16x16.gif new file mode 100644 index 00000000..834f92c8 Binary files /dev/null and b/icon/degree/logoswad16x16.gif differ diff --git a/icon/degree/logoswad32x32.gif b/icon/degree/logoswad32x32.gif new file mode 100644 index 00000000..f07fb56d Binary files /dev/null and b/icon/degree/logoswad32x32.gif differ diff --git a/icon/degree/logoswad64x64.gif b/icon/degree/logoswad64x64.gif new file mode 100644 index 00000000..6a38cbd9 Binary files /dev/null and b/icon/degree/logoswad64x64.gif differ diff --git a/icon/degree/mate16x16.gif b/icon/degree/mate16x16.gif new file mode 100644 index 00000000..b20df9ea Binary files /dev/null and b/icon/degree/mate16x16.gif differ diff --git a/icon/degree/mate32x32.gif b/icon/degree/mate32x32.gif new file mode 100644 index 00000000..8f910177 Binary files /dev/null and b/icon/degree/mate32x32.gif differ diff --git a/icon/degree/mate64x64.gif b/icon/degree/mate64x64.gif new file mode 100644 index 00000000..0b033f05 Binary files /dev/null and b/icon/degree/mate64x64.gif differ diff --git a/icon/degree/med.una.py16x16.gif b/icon/degree/med.una.py16x16.gif new file mode 100644 index 00000000..840a42f5 Binary files /dev/null and b/icon/degree/med.una.py16x16.gif differ diff --git a/icon/degree/med.una.py32x32.gif b/icon/degree/med.una.py32x32.gif new file mode 100644 index 00000000..9744cfe0 Binary files /dev/null and b/icon/degree/med.una.py32x32.gif differ diff --git a/icon/degree/med.una.py64x64.gif b/icon/degree/med.una.py64x64.gif new file mode 100644 index 00000000..82faf771 Binary files /dev/null and b/icon/degree/med.una.py64x64.gif differ diff --git a/icon/degree/med16x16.gif b/icon/degree/med16x16.gif new file mode 100644 index 00000000..a58c7004 Binary files /dev/null and b/icon/degree/med16x16.gif differ diff --git a/icon/degree/med32x32.gif b/icon/degree/med32x32.gif new file mode 100644 index 00000000..6548749f Binary files /dev/null and b/icon/degree/med32x32.gif differ diff --git a/icon/degree/med64x64.gif b/icon/degree/med64x64.gif new file mode 100644 index 00000000..b86baba3 Binary files /dev/null and b/icon/degree/med64x64.gif differ diff --git a/icon/degree/melilla16x16.gif b/icon/degree/melilla16x16.gif new file mode 100644 index 00000000..45b7252f Binary files /dev/null and b/icon/degree/melilla16x16.gif differ diff --git a/icon/degree/melilla32x32.gif b/icon/degree/melilla32x32.gif new file mode 100644 index 00000000..0d85da4f Binary files /dev/null and b/icon/degree/melilla32x32.gif differ diff --git a/icon/degree/melilla64x64.gif b/icon/degree/melilla64x64.gif new file mode 100644 index 00000000..98131f15 Binary files /dev/null and b/icon/degree/melilla64x64.gif differ diff --git a/icon/degree/mgeo16x16.gif b/icon/degree/mgeo16x16.gif new file mode 100644 index 00000000..0b68f407 Binary files /dev/null and b/icon/degree/mgeo16x16.gif differ diff --git a/icon/degree/mgeo32x32.gif b/icon/degree/mgeo32x32.gif new file mode 100644 index 00000000..80295b48 Binary files /dev/null and b/icon/degree/mgeo32x32.gif differ diff --git a/icon/degree/mgeo64x64.gif b/icon/degree/mgeo64x64.gif new file mode 100644 index 00000000..85308b8c Binary files /dev/null and b/icon/degree/mgeo64x64.gif differ diff --git a/icon/degree/micinn16x16.gif b/icon/degree/micinn16x16.gif new file mode 100644 index 00000000..a923c5f9 Binary files /dev/null and b/icon/degree/micinn16x16.gif differ diff --git a/icon/degree/micinn32x32.gif b/icon/degree/micinn32x32.gif new file mode 100644 index 00000000..1a182d69 Binary files /dev/null and b/icon/degree/micinn32x32.gif differ diff --git a/icon/degree/micinn64x64.gif b/icon/degree/micinn64x64.gif new file mode 100644 index 00000000..59510062 Binary files /dev/null and b/icon/degree/micinn64x64.gif differ diff --git a/icon/degree/mtaf16x16.gif b/icon/degree/mtaf16x16.gif new file mode 100644 index 00000000..4a86c7b8 Binary files /dev/null and b/icon/degree/mtaf16x16.gif differ diff --git a/icon/degree/mtaf32x32.gif b/icon/degree/mtaf32x32.gif new file mode 100644 index 00000000..30fb3d82 Binary files /dev/null and b/icon/degree/mtaf32x32.gif differ diff --git a/icon/degree/mtaf64x64.gif b/icon/degree/mtaf64x64.gif new file mode 100644 index 00000000..aca824b7 Binary files /dev/null and b/icon/degree/mtaf64x64.gif differ diff --git a/icon/degree/multipalio16x16.gif b/icon/degree/multipalio16x16.gif new file mode 100644 index 00000000..bc52684b Binary files /dev/null and b/icon/degree/multipalio16x16.gif differ diff --git a/icon/degree/multipalio32x32.gif b/icon/degree/multipalio32x32.gif new file mode 100644 index 00000000..dad019bb Binary files /dev/null and b/icon/degree/multipalio32x32.gif differ diff --git a/icon/degree/multipalio64x64.gif b/icon/degree/multipalio64x64.gif new file mode 100644 index 00000000..6dd53716 Binary files /dev/null and b/icon/degree/multipalio64x64.gif differ diff --git a/icon/degree/museo16x16.gif b/icon/degree/museo16x16.gif new file mode 100644 index 00000000..0982c702 Binary files /dev/null and b/icon/degree/museo16x16.gif differ diff --git a/icon/degree/museo32x32.gif b/icon/degree/museo32x32.gif new file mode 100644 index 00000000..51dd93d7 Binary files /dev/null and b/icon/degree/museo32x32.gif differ diff --git a/icon/degree/museo64x64.gif b/icon/degree/museo64x64.gif new file mode 100644 index 00000000..243ab2da Binary files /dev/null and b/icon/degree/museo64x64.gif differ diff --git a/icon/degree/mw16x16.gif b/icon/degree/mw16x16.gif new file mode 100644 index 00000000..bd6b7d83 Binary files /dev/null and b/icon/degree/mw16x16.gif differ diff --git a/icon/degree/mw32x32.gif b/icon/degree/mw32x32.gif new file mode 100644 index 00000000..14a4914e Binary files /dev/null and b/icon/degree/mw32x32.gif differ diff --git a/icon/degree/mw64x64.gif b/icon/degree/mw64x64.gif new file mode 100644 index 00000000..b4ac1f1a Binary files /dev/null and b/icon/degree/mw64x64.gif differ diff --git a/icon/degree/neuro16x16.gif b/icon/degree/neuro16x16.gif new file mode 100644 index 00000000..745d4623 Binary files /dev/null and b/icon/degree/neuro16x16.gif differ diff --git a/icon/degree/neuro32x32.gif b/icon/degree/neuro32x32.gif new file mode 100644 index 00000000..d2e770e3 Binary files /dev/null and b/icon/degree/neuro32x32.gif differ diff --git a/icon/degree/neuro64x64.gif b/icon/degree/neuro64x64.gif new file mode 100644 index 00000000..bad3da37 Binary files /dev/null and b/icon/degree/neuro64x64.gif differ diff --git a/icon/degree/nhd16x16.gif b/icon/degree/nhd16x16.gif new file mode 100644 index 00000000..02def031 Binary files /dev/null and b/icon/degree/nhd16x16.gif differ diff --git a/icon/degree/nhd32x32.gif b/icon/degree/nhd32x32.gif new file mode 100644 index 00000000..cf0880ce Binary files /dev/null and b/icon/degree/nhd32x32.gif differ diff --git a/icon/degree/nhd64x64.gif b/icon/degree/nhd64x64.gif new file mode 100644 index 00000000..6bb01417 Binary files /dev/null and b/icon/degree/nhd64x64.gif differ diff --git a/icon/degree/nutrenvigen16x16.gif b/icon/degree/nutrenvigen16x16.gif new file mode 100644 index 00000000..09dc0d33 Binary files /dev/null and b/icon/degree/nutrenvigen16x16.gif differ diff --git a/icon/degree/nutrenvigen32x32.gif b/icon/degree/nutrenvigen32x32.gif new file mode 100644 index 00000000..a8c2c662 Binary files /dev/null and b/icon/degree/nutrenvigen32x32.gif differ diff --git a/icon/degree/nutrenvigen64x64.gif b/icon/degree/nutrenvigen64x64.gif new file mode 100644 index 00000000..2c101cba Binary files /dev/null and b/icon/degree/nutrenvigen64x64.gif differ diff --git a/icon/degree/odo.una.py16x16.gif b/icon/degree/odo.una.py16x16.gif new file mode 100644 index 00000000..72a11f94 Binary files /dev/null and b/icon/degree/odo.una.py16x16.gif differ diff --git a/icon/degree/odo.una.py32x32.gif b/icon/degree/odo.una.py32x32.gif new file mode 100644 index 00000000..b7df9909 Binary files /dev/null and b/icon/degree/odo.una.py32x32.gif differ diff --git a/icon/degree/odonto16x16.gif b/icon/degree/odonto16x16.gif new file mode 100644 index 00000000..a1b5d38a Binary files /dev/null and b/icon/degree/odonto16x16.gif differ diff --git a/icon/degree/odonto32x32.gif b/icon/degree/odonto32x32.gif new file mode 100644 index 00000000..c1ba9a38 Binary files /dev/null and b/icon/degree/odonto32x32.gif differ diff --git a/icon/degree/odonto64x64.gif b/icon/degree/odonto64x64.gif new file mode 100644 index 00000000..af407919 Binary files /dev/null and b/icon/degree/odonto64x64.gif differ diff --git a/icon/degree/pol.una.py16x16.gif b/icon/degree/pol.una.py16x16.gif new file mode 100644 index 00000000..9b6bb3b6 Binary files /dev/null and b/icon/degree/pol.una.py16x16.gif differ diff --git a/icon/degree/pol.una.py32x32.gif b/icon/degree/pol.una.py32x32.gif new file mode 100644 index 00000000..0784422a Binary files /dev/null and b/icon/degree/pol.una.py32x32.gif differ diff --git a/icon/degree/pol.una.py64x64.gif b/icon/degree/pol.una.py64x64.gif new file mode 100644 index 00000000..3f40271d Binary files /dev/null and b/icon/degree/pol.una.py64x64.gif differ diff --git a/icon/degree/polit16x16.gif b/icon/degree/polit16x16.gif new file mode 100644 index 00000000..ad90ec5f Binary files /dev/null and b/icon/degree/polit16x16.gif differ diff --git a/icon/degree/polit32x32.gif b/icon/degree/polit32x32.gif new file mode 100644 index 00000000..5b8297d1 Binary files /dev/null and b/icon/degree/polit32x32.gif differ diff --git a/icon/degree/polit64x64.gif b/icon/degree/polit64x64.gif new file mode 100644 index 00000000..3c9cf557 Binary files /dev/null and b/icon/degree/polit64x64.gif differ diff --git a/icon/degree/psico16x16.gif b/icon/degree/psico16x16.gif new file mode 100644 index 00000000..0a75c99a Binary files /dev/null and b/icon/degree/psico16x16.gif differ diff --git a/icon/degree/psico32x32.gif b/icon/degree/psico32x32.gif new file mode 100644 index 00000000..1c7a146f Binary files /dev/null and b/icon/degree/psico32x32.gif differ diff --git a/icon/degree/psico64x64.gif b/icon/degree/psico64x64.gif new file mode 100644 index 00000000..8b4d7ef0 Binary files /dev/null and b/icon/degree/psico64x64.gif differ diff --git a/icon/degree/psicoped16x16.gif b/icon/degree/psicoped16x16.gif new file mode 100644 index 00000000..91ff0108 Binary files /dev/null and b/icon/degree/psicoped16x16.gif differ diff --git a/icon/degree/psicoped32x32.gif b/icon/degree/psicoped32x32.gif new file mode 100644 index 00000000..d46f9bfe Binary files /dev/null and b/icon/degree/psicoped32x32.gif differ diff --git a/icon/degree/psicoped64x64.gif b/icon/degree/psicoped64x64.gif new file mode 100644 index 00000000..1f4bb643 Binary files /dev/null and b/icon/degree/psicoped64x64.gif differ diff --git a/icon/degree/quimica16x16.gif b/icon/degree/quimica16x16.gif new file mode 100644 index 00000000..9596efc0 Binary files /dev/null and b/icon/degree/quimica16x16.gif differ diff --git a/icon/degree/quimica32x32.gif b/icon/degree/quimica32x32.gif new file mode 100644 index 00000000..8ee2516e Binary files /dev/null and b/icon/degree/quimica32x32.gif differ diff --git a/icon/degree/quimica64x64.gif b/icon/degree/quimica64x64.gif new file mode 100644 index 00000000..1e8abfe4 Binary files /dev/null and b/icon/degree/quimica64x64.gif differ diff --git a/icon/degree/ss16x16.gif b/icon/degree/ss16x16.gif new file mode 100644 index 00000000..b025e65a Binary files /dev/null and b/icon/degree/ss16x16.gif differ diff --git a/icon/degree/ss32x32.gif b/icon/degree/ss32x32.gif new file mode 100644 index 00000000..4236daea Binary files /dev/null and b/icon/degree/ss32x32.gif differ diff --git a/icon/degree/ss64x64.gif b/icon/degree/ss64x64.gif new file mode 100644 index 00000000..efc35bd0 Binary files /dev/null and b/icon/degree/ss64x64.gif differ diff --git a/icon/degree/swad16x16.gif b/icon/degree/swad16x16.gif new file mode 100644 index 00000000..e2881041 Binary files /dev/null and b/icon/degree/swad16x16.gif differ diff --git a/icon/degree/swad32x32.gif b/icon/degree/swad32x32.gif new file mode 100644 index 00000000..81cd9972 Binary files /dev/null and b/icon/degree/swad32x32.gif differ diff --git a/icon/degree/swad64x64.gif b/icon/degree/swad64x64.gif new file mode 100644 index 00000000..e81ecc41 Binary files /dev/null and b/icon/degree/swad64x64.gif differ diff --git a/icon/degree/teleco16x16.gif b/icon/degree/teleco16x16.gif new file mode 100644 index 00000000..7466ab41 Binary files /dev/null and b/icon/degree/teleco16x16.gif differ diff --git a/icon/degree/teleco32x32.gif b/icon/degree/teleco32x32.gif new file mode 100644 index 00000000..4c1a5aa7 Binary files /dev/null and b/icon/degree/teleco32x32.gif differ diff --git a/icon/degree/teleco64x64.gif b/icon/degree/teleco64x64.gif new file mode 100644 index 00000000..e734025c Binary files /dev/null and b/icon/degree/teleco64x64.gif differ diff --git a/icon/degree/teologia16x16.gif b/icon/degree/teologia16x16.gif new file mode 100644 index 00000000..424671a0 Binary files /dev/null and b/icon/degree/teologia16x16.gif differ diff --git a/icon/degree/teologia32x32.gif b/icon/degree/teologia32x32.gif new file mode 100644 index 00000000..aceef710 Binary files /dev/null and b/icon/degree/teologia32x32.gif differ diff --git a/icon/degree/teologia64x64.gif b/icon/degree/teologia64x64.gif new file mode 100644 index 00000000..fc51f1dd Binary files /dev/null and b/icon/degree/teologia64x64.gif differ diff --git a/icon/degree/trabajo16x16.gif b/icon/degree/trabajo16x16.gif new file mode 100644 index 00000000..7883d84c Binary files /dev/null and b/icon/degree/trabajo16x16.gif differ diff --git a/icon/degree/trabajo32x32.gif b/icon/degree/trabajo32x32.gif new file mode 100644 index 00000000..d4dda428 Binary files /dev/null and b/icon/degree/trabajo32x32.gif differ diff --git a/icon/degree/trabajo64x64.gif b/icon/degree/trabajo64x64.gif new file mode 100644 index 00000000..0e03f338 Binary files /dev/null and b/icon/degree/trabajo64x64.gif differ diff --git a/icon/degree/trad16x16.gif b/icon/degree/trad16x16.gif new file mode 100644 index 00000000..be036ea2 Binary files /dev/null and b/icon/degree/trad16x16.gif differ diff --git a/icon/degree/trad32x32.gif b/icon/degree/trad32x32.gif new file mode 100644 index 00000000..bc925a66 Binary files /dev/null and b/icon/degree/trad32x32.gif differ diff --git a/icon/degree/trad64x64.gif b/icon/degree/trad64x64.gif new file mode 100644 index 00000000..802f2094 Binary files /dev/null and b/icon/degree/trad64x64.gif differ diff --git a/icon/degree/tsocial16x16.gif b/icon/degree/tsocial16x16.gif new file mode 100644 index 00000000..bf1f6c28 Binary files /dev/null and b/icon/degree/tsocial16x16.gif differ diff --git a/icon/degree/tsocial32x32.gif b/icon/degree/tsocial32x32.gif new file mode 100644 index 00000000..a58f5d14 Binary files /dev/null and b/icon/degree/tsocial32x32.gif differ diff --git a/icon/degree/tsocial64x64.gif b/icon/degree/tsocial64x64.gif new file mode 100644 index 00000000..1ce3a95e Binary files /dev/null and b/icon/degree/tsocial64x64.gif differ diff --git a/icon/degree/tunas16x16.gif b/icon/degree/tunas16x16.gif new file mode 100644 index 00000000..b3b9e25a Binary files /dev/null and b/icon/degree/tunas16x16.gif differ diff --git a/icon/degree/tunas32x32.gif b/icon/degree/tunas32x32.gif new file mode 100644 index 00000000..55ffab12 Binary files /dev/null and b/icon/degree/tunas32x32.gif differ diff --git a/icon/degree/tunas64x64.gif b/icon/degree/tunas64x64.gif new file mode 100644 index 00000000..11f4d7b7 Binary files /dev/null and b/icon/degree/tunas64x64.gif differ diff --git a/icon/degree/uagrm16x16.gif b/icon/degree/uagrm16x16.gif new file mode 100644 index 00000000..47126af7 Binary files /dev/null and b/icon/degree/uagrm16x16.gif differ diff --git a/icon/degree/uagrm32x32.gif b/icon/degree/uagrm32x32.gif new file mode 100644 index 00000000..70d57ded Binary files /dev/null and b/icon/degree/uagrm32x32.gif differ diff --git a/icon/degree/uagrm64x64.gif b/icon/degree/uagrm64x64.gif new file mode 100644 index 00000000..1bd56fa4 Binary files /dev/null and b/icon/degree/uagrm64x64.gif differ diff --git a/icon/degree/ual16x16.gif b/icon/degree/ual16x16.gif new file mode 100644 index 00000000..52496632 Binary files /dev/null and b/icon/degree/ual16x16.gif differ diff --git a/icon/degree/ual32x32.gif b/icon/degree/ual32x32.gif new file mode 100644 index 00000000..c97eb3db Binary files /dev/null and b/icon/degree/ual32x32.gif differ diff --git a/icon/degree/ual64x64.gif b/icon/degree/ual64x64.gif new file mode 100644 index 00000000..3b24145e Binary files /dev/null and b/icon/degree/ual64x64.gif differ diff --git a/icon/degree/uass.py16x16.gif b/icon/degree/uass.py16x16.gif new file mode 100644 index 00000000..d72d7cfe Binary files /dev/null and b/icon/degree/uass.py16x16.gif differ diff --git a/icon/degree/uass.py32x32.gif b/icon/degree/uass.py32x32.gif new file mode 100644 index 00000000..b0ef9e5f Binary files /dev/null and b/icon/degree/uass.py32x32.gif differ diff --git a/icon/degree/uass.py64x64.gif b/icon/degree/uass.py64x64.gif new file mode 100644 index 00000000..4a89ce97 Binary files /dev/null and b/icon/degree/uass.py64x64.gif differ diff --git a/icon/degree/ugr16x16.gif b/icon/degree/ugr16x16.gif new file mode 100644 index 00000000..09c4c350 Binary files /dev/null and b/icon/degree/ugr16x16.gif differ diff --git a/icon/degree/ugr32x32.gif b/icon/degree/ugr32x32.gif new file mode 100644 index 00000000..35e0b1c6 Binary files /dev/null and b/icon/degree/ugr32x32.gif differ diff --git a/icon/degree/ugr64x64.gif b/icon/degree/ugr64x64.gif new file mode 100644 index 00000000..10f2e286 Binary files /dev/null and b/icon/degree/ugr64x64.gif differ diff --git a/icon/degree/um5s16x16.gif b/icon/degree/um5s16x16.gif new file mode 100644 index 00000000..3cb6eff3 Binary files /dev/null and b/icon/degree/um5s16x16.gif differ diff --git a/icon/degree/um5s32x32.gif b/icon/degree/um5s32x32.gif new file mode 100644 index 00000000..d755eac3 Binary files /dev/null and b/icon/degree/um5s32x32.gif differ diff --git a/icon/degree/um5s64x64.gif b/icon/degree/um5s64x64.gif new file mode 100644 index 00000000..561c1630 Binary files /dev/null and b/icon/degree/um5s64x64.gif differ diff --git a/icon/degree/vet.una.py16x16.gif b/icon/degree/vet.una.py16x16.gif new file mode 100644 index 00000000..25c3dbb5 Binary files /dev/null and b/icon/degree/vet.una.py16x16.gif differ diff --git a/icon/degree/vet.una.py32x32.gif b/icon/degree/vet.una.py32x32.gif new file mode 100644 index 00000000..35eec09d Binary files /dev/null and b/icon/degree/vet.una.py32x32.gif differ diff --git a/icon/degree/vet.una.py64x64.gif b/icon/degree/vet.una.py64x64.gif new file mode 100644 index 00000000..4fbc311a Binary files /dev/null and b/icon/degree/vet.una.py64x64.gif differ diff --git a/icon/degree/vn16x16.gif b/icon/degree/vn16x16.gif new file mode 100644 index 00000000..70f579e6 Binary files /dev/null and b/icon/degree/vn16x16.gif differ diff --git a/icon/degree/vn32x32.gif b/icon/degree/vn32x32.gif new file mode 100644 index 00000000..ef037f4b Binary files /dev/null and b/icon/degree/vn32x32.gif differ diff --git a/icon/degree/vn64x64.gif b/icon/degree/vn64x64.gif new file mode 100644 index 00000000..d00d585a Binary files /dev/null and b/icon/degree/vn64x64.gif differ diff --git a/icon/deloff12x12.gif b/icon/deloff12x12.gif new file mode 100644 index 00000000..7795465b Binary files /dev/null and b/icon/deloff12x12.gif differ diff --git a/icon/deloff16x16.gif b/icon/deloff16x16.gif new file mode 100644 index 00000000..a917a54d Binary files /dev/null and b/icon/deloff16x16.gif differ diff --git a/icon/delon12x12.gif b/icon/delon12x12.gif new file mode 100644 index 00000000..753ea6d9 Binary files /dev/null and b/icon/delon12x12.gif differ diff --git a/icon/delon16x16.gif b/icon/delon16x16.gif new file mode 100644 index 00000000..f313733a Binary files /dev/null and b/icon/delon16x16.gif differ diff --git a/icon/desktop320x320.tif b/icon/desktop320x320.tif new file mode 100644 index 00000000..ed7a1480 Binary files /dev/null and b/icon/desktop320x320.tif differ diff --git a/icon/desktop32x32.gif b/icon/desktop32x32.gif new file mode 100644 index 00000000..9c2e9ccd Binary files /dev/null and b/icon/desktop32x32.gif differ diff --git a/icon/dot16x16.gif b/icon/dot16x16.gif new file mode 100644 index 00000000..cc8cf89e Binary files /dev/null and b/icon/dot16x16.gif differ diff --git a/icon/down32x32.gif b/icon/down32x32.gif new file mode 100644 index 00000000..516ece4b Binary files /dev/null and b/icon/down32x32.gif differ diff --git a/icon/down_off16x16.gif b/icon/down_off16x16.gif new file mode 100644 index 00000000..f6af93e0 Binary files /dev/null and b/icon/down_off16x16.gif differ diff --git a/icon/down_on16x16.gif b/icon/down_on16x16.gif new file mode 100644 index 00000000..6c0ad198 Binary files /dev/null and b/icon/down_on16x16.gif differ diff --git a/icon/download16x16.gif b/icon/download16x16.gif new file mode 100644 index 00000000..0c0e4f43 Binary files /dev/null and b/icon/download16x16.gif differ diff --git a/icon/earth16x16.gif b/icon/earth16x16.gif new file mode 100644 index 00000000..c5950aca Binary files /dev/null and b/icon/earth16x16.gif differ diff --git a/icon/edit12x12.gif b/icon/edit12x12.gif new file mode 100644 index 00000000..a5226766 Binary files /dev/null and b/icon/edit12x12.gif differ diff --git a/icon/edit16x16.gif b/icon/edit16x16.gif new file mode 100644 index 00000000..ed9be343 Binary files /dev/null and b/icon/edit16x16.gif differ diff --git a/icon/editnewmsg16x16.gif b/icon/editnewmsg16x16.gif new file mode 100644 index 00000000..beb9f53a Binary files /dev/null and b/icon/editnewmsg16x16.gif differ diff --git a/icon/edmodo16x16.gif b/icon/edmodo16x16.gif new file mode 100644 index 00000000..21e20f86 Binary files /dev/null and b/icon/edmodo16x16.gif differ diff --git a/icon/edmodo32x32.gif b/icon/edmodo32x32.gif new file mode 100644 index 00000000..ed42a2c8 Binary files /dev/null and b/icon/edmodo32x32.gif differ diff --git a/icon/edmodo64x64.gif b/icon/edmodo64x64.gif new file mode 100644 index 00000000..e6273135 Binary files /dev/null and b/icon/edmodo64x64.gif differ diff --git a/icon/ejex24x1.gif b/icon/ejex24x1.gif new file mode 100644 index 00000000..43bbbd07 Binary files /dev/null and b/icon/ejex24x1.gif differ diff --git a/icon/ejexizq24x1.gif b/icon/ejexizq24x1.gif new file mode 100644 index 00000000..7bfcb408 Binary files /dev/null and b/icon/ejexizq24x1.gif differ diff --git a/icon/ejey24x30.gif b/icon/ejey24x30.gif new file mode 100644 index 00000000..21dabb62 Binary files /dev/null and b/icon/ejey24x30.gif differ diff --git a/icon/ejey24x60.gif b/icon/ejey24x60.gif new file mode 100644 index 00000000..a12bf0dd Binary files /dev/null and b/icon/ejey24x60.gif differ diff --git a/icon/ellipsis16x16.gif b/icon/ellipsis16x16.gif new file mode 100644 index 00000000..b7daeac1 Binary files /dev/null and b/icon/ellipsis16x16.gif differ diff --git a/icon/ellipsis32x32.gif b/icon/ellipsis32x32.gif new file mode 100644 index 00000000..539dc4c9 Binary files /dev/null and b/icon/ellipsis32x32.gif differ diff --git a/icon/error16x16.gif b/icon/error16x16.gif new file mode 100644 index 00000000..a8d5270d Binary files /dev/null and b/icon/error16x16.gif differ diff --git a/icon/ewbb1_4x32.gif b/icon/ewbb1_4x32.gif new file mode 100644 index 00000000..b7f19466 Binary files /dev/null and b/icon/ewbb1_4x32.gif differ diff --git a/icon/ewbb2_4x32.gif b/icon/ewbb2_4x32.gif new file mode 100644 index 00000000..de6aca48 Binary files /dev/null and b/icon/ewbb2_4x32.gif differ diff --git a/icon/ewbw1_4x4.gif b/icon/ewbw1_4x4.gif new file mode 100644 index 00000000..a67c3598 Binary files /dev/null and b/icon/ewbw1_4x4.gif differ diff --git a/icon/ewbw2_4x4.gif b/icon/ewbw2_4x4.gif new file mode 100644 index 00000000..e392793d Binary files /dev/null and b/icon/ewbw2_4x4.gif differ diff --git a/icon/ewbw3_4x4.gif b/icon/ewbw3_4x4.gif new file mode 100644 index 00000000..87e82933 Binary files /dev/null and b/icon/ewbw3_4x4.gif differ diff --git a/icon/ewbw4_4x4.gif b/icon/ewbw4_4x4.gif new file mode 100644 index 00000000..b9eaddc9 Binary files /dev/null and b/icon/ewbw4_4x4.gif differ diff --git a/icon/ewgw1_4x4.gif b/icon/ewgw1_4x4.gif new file mode 100644 index 00000000..91924777 Binary files /dev/null and b/icon/ewgw1_4x4.gif differ diff --git a/icon/ewgw2_4x4.gif b/icon/ewgw2_4x4.gif new file mode 100644 index 00000000..72c44152 Binary files /dev/null and b/icon/ewgw2_4x4.gif differ diff --git a/icon/ewgw3_4x4.gif b/icon/ewgw3_4x4.gif new file mode 100644 index 00000000..fb5a02da Binary files /dev/null and b/icon/ewgw3_4x4.gif differ diff --git a/icon/ewgw4_4x4.gif b/icon/ewgw4_4x4.gif new file mode 100644 index 00000000..e8c58202 Binary files /dev/null and b/icon/ewgw4_4x4.gif differ diff --git a/icon/expand16x16.gif b/icon/expand16x16.gif new file mode 100644 index 00000000..22397a57 Binary files /dev/null and b/icon/expand16x16.gif differ diff --git a/icon/export16x16.gif b/icon/export16x16.gif new file mode 100644 index 00000000..8216acca Binary files /dev/null and b/icon/export16x16.gif differ diff --git a/icon/fabajo12x12.png b/icon/fabajo12x12.png new file mode 100644 index 00000000..d243959c Binary files /dev/null and b/icon/fabajo12x12.png differ diff --git a/icon/fabajo_off12x12.png b/icon/fabajo_off12x12.png new file mode 100644 index 00000000..b771328d Binary files /dev/null and b/icon/fabajo_off12x12.png differ diff --git a/icon/farriba12x12.png b/icon/farriba12x12.png new file mode 100644 index 00000000..755d997d Binary files /dev/null and b/icon/farriba12x12.png differ diff --git a/icon/farriba_off12x12.png b/icon/farriba_off12x12.png new file mode 100644 index 00000000..b9394711 Binary files /dev/null and b/icon/farriba_off12x12.png differ diff --git a/icon/favicon.ico b/icon/favicon.ico new file mode 100644 index 00000000..5e2b21b6 Binary files /dev/null and b/icon/favicon.ico differ diff --git a/icon/fdcha12x12.png b/icon/fdcha12x12.png new file mode 100644 index 00000000..ba6b8696 Binary files /dev/null and b/icon/fdcha12x12.png differ diff --git a/icon/fdcha_off12x12.png b/icon/fdcha_off12x12.png new file mode 100644 index 00000000..0de84b46 Binary files /dev/null and b/icon/fdcha_off12x12.png differ diff --git a/icon/female12x12.gif b/icon/female12x12.gif new file mode 100644 index 00000000..f52fece5 Binary files /dev/null and b/icon/female12x12.gif differ diff --git a/icon/female16x16.gif b/icon/female16x16.gif new file mode 100644 index 00000000..34a17221 Binary files /dev/null and b/icon/female16x16.gif differ diff --git a/icon/female320x320.tif b/icon/female320x320.tif new file mode 100644 index 00000000..18bd06c6 Binary files /dev/null and b/icon/female320x320.tif differ diff --git a/icon/file-off16x16.gif b/icon/file-off16x16.gif new file mode 100644 index 00000000..ef4c83f3 Binary files /dev/null and b/icon/file-off16x16.gif differ diff --git a/icon/file16x16.gif b/icon/file16x16.gif new file mode 100644 index 00000000..c4115f2f Binary files /dev/null and b/icon/file16x16.gif differ diff --git a/icon/file_off16x16.gif b/icon/file_off16x16.gif new file mode 100644 index 00000000..490e8d8b Binary files /dev/null and b/icon/file_off16x16.gif differ diff --git a/icon/file_off320x320.tif b/icon/file_off320x320.tif new file mode 100644 index 00000000..5a6644c3 Binary files /dev/null and b/icon/file_off320x320.tif differ diff --git a/icon/file_on16x16.gif b/icon/file_on16x16.gif new file mode 100644 index 00000000..c4115f2f Binary files /dev/null and b/icon/file_on16x16.gif differ diff --git a/icon/filext/3gp12x12.gif b/icon/filext/3gp12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/3gp12x12.gif differ diff --git a/icon/filext/7z12x12.gif b/icon/filext/7z12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/7z12x12.gif differ diff --git a/icon/filext/asm12x12.gif b/icon/filext/asm12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/asm12x12.gif differ diff --git a/icon/filext/atc12x12.gif b/icon/filext/atc12x12.gif new file mode 100644 index 00000000..da41cbfa Binary files /dev/null and b/icon/filext/atc12x12.gif differ diff --git a/icon/filext/avi12x12.gif b/icon/filext/avi12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/avi12x12.gif differ diff --git a/icon/filext/bas12x12.gif b/icon/filext/bas12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/bas12x12.gif differ diff --git a/icon/filext/bat12x12.gif b/icon/filext/bat12x12.gif new file mode 100644 index 00000000..c9412f30 Binary files /dev/null and b/icon/filext/bat12x12.gif differ diff --git a/icon/filext/bbl12x12.gif b/icon/filext/bbl12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext/bbl12x12.gif differ diff --git a/icon/filext/bib12x12.gif b/icon/filext/bib12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext/bib12x12.gif differ diff --git a/icon/filext/bin12x12.gif b/icon/filext/bin12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/bin12x12.gif differ diff --git a/icon/filext/bmp12x12.gif b/icon/filext/bmp12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/bmp12x12.gif differ diff --git a/icon/filext/bz212x12.gif b/icon/filext/bz212x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/bz212x12.gif differ diff --git a/icon/filext/c12x12.gif b/icon/filext/c12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/c12x12.gif differ diff --git a/icon/filext/cc12x12.gif b/icon/filext/cc12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/cc12x12.gif differ diff --git a/icon/filext/cdr12x12.gif b/icon/filext/cdr12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/cdr12x12.gif differ diff --git a/icon/filext/com12x12.gif b/icon/filext/com12x12.gif new file mode 100644 index 00000000..c9412f30 Binary files /dev/null and b/icon/filext/com12x12.gif differ diff --git a/icon/filext/cpp12x12.gif b/icon/filext/cpp12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/cpp12x12.gif differ diff --git a/icon/filext/css12x12.gif b/icon/filext/css12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext/css12x12.gif differ diff --git a/icon/filext/csv12x12.gif b/icon/filext/csv12x12.gif new file mode 100644 index 00000000..d279651d Binary files /dev/null and b/icon/filext/csv12x12.gif differ diff --git a/icon/filext/dmg12x12.gif b/icon/filext/dmg12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/dmg12x12.gif differ diff --git a/icon/filext/doc12x12.gif b/icon/filext/doc12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext/doc12x12.gif differ diff --git a/icon/filext/docx12x12.gif b/icon/filext/docx12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext/docx12x12.gif differ diff --git a/icon/filext/dotm12x12.gif b/icon/filext/dotm12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext/dotm12x12.gif differ diff --git a/icon/filext/dwd12x12.gif b/icon/filext/dwd12x12.gif new file mode 100644 index 00000000..93515bac Binary files /dev/null and b/icon/filext/dwd12x12.gif differ diff --git a/icon/filext/eps12x12.gif b/icon/filext/eps12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext/eps12x12.gif differ diff --git a/icon/filext/exe12x12.gif b/icon/filext/exe12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/exe12x12.gif differ diff --git a/icon/filext/fdf12x12.gif b/icon/filext/fdf12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext/fdf12x12.gif differ diff --git a/icon/filext/flv12x12.gif b/icon/filext/flv12x12.gif new file mode 100644 index 00000000..300422ce Binary files /dev/null and b/icon/filext/flv12x12.gif differ diff --git a/icon/filext/gif12x12.gif b/icon/filext/gif12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/gif12x12.gif differ diff --git a/icon/filext/gz12x12.gif b/icon/filext/gz12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/gz12x12.gif differ diff --git a/icon/filext/h12x12.gif b/icon/filext/h12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/h12x12.gif differ diff --git a/icon/filext/hex12x12.gif b/icon/filext/hex12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/hex12x12.gif differ diff --git a/icon/filext/htm12x12.gif b/icon/filext/htm12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext/htm12x12.gif differ diff --git a/icon/filext/html12x12.gif b/icon/filext/html12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext/html12x12.gif differ diff --git a/icon/filext/img12x12.gif b/icon/filext/img12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/img12x12.gif differ diff --git a/icon/filext/java12x12.gif b/icon/filext/java12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/java12x12.gif differ diff --git a/icon/filext/jpeg12x12.gif b/icon/filext/jpeg12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/jpeg12x12.gif differ diff --git a/icon/filext/jpg12x12.gif b/icon/filext/jpg12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/jpg12x12.gif differ diff --git a/icon/filext/latex12x12.gif b/icon/filext/latex12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext/latex12x12.gif differ diff --git a/icon/filext/m12x12.gif b/icon/filext/m12x12.gif new file mode 100644 index 00000000..5a22c07b Binary files /dev/null and b/icon/filext/m12x12.gif differ diff --git a/icon/filext/mas12x12.gif b/icon/filext/mas12x12.gif new file mode 100644 index 00000000..6197678d Binary files /dev/null and b/icon/filext/mas12x12.gif differ diff --git a/icon/filext/mdb12x12.gif b/icon/filext/mdb12x12.gif new file mode 100644 index 00000000..e0271271 Binary files /dev/null and b/icon/filext/mdb12x12.gif differ diff --git a/icon/filext/mht12x12.gif b/icon/filext/mht12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext/mht12x12.gif differ diff --git a/icon/filext/mhtml12x12.gif b/icon/filext/mhtml12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext/mhtml12x12.gif differ diff --git a/icon/filext/mid12x12.gif b/icon/filext/mid12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext/mid12x12.gif differ diff --git a/icon/filext/mov12x12.gif b/icon/filext/mov12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/mov12x12.gif differ diff --git a/icon/filext/mp312x12.gif b/icon/filext/mp312x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext/mp312x12.gif differ diff --git a/icon/filext/mp412x12.gif b/icon/filext/mp412x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/mp412x12.gif differ diff --git a/icon/filext/mpeg12x12.gif b/icon/filext/mpeg12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/mpeg12x12.gif differ diff --git a/icon/filext/mpg12x12.gif b/icon/filext/mpg12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/mpg12x12.gif differ diff --git a/icon/filext/mpp12x12.gif b/icon/filext/mpp12x12.gif new file mode 100644 index 00000000..e4aa6f6e Binary files /dev/null and b/icon/filext/mpp12x12.gif differ diff --git a/icon/filext/mus12x12.gif b/icon/filext/mus12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext/mus12x12.gif differ diff --git a/icon/filext/nb12x12.gif b/icon/filext/nb12x12.gif new file mode 100644 index 00000000..0226a2d6 Binary files /dev/null and b/icon/filext/nb12x12.gif differ diff --git a/icon/filext/nue12x12.gif b/icon/filext/nue12x12.gif new file mode 100644 index 00000000..f44841fa Binary files /dev/null and b/icon/filext/nue12x12.gif differ diff --git a/icon/filext/odb12x12.gif b/icon/filext/odb12x12.gif new file mode 100644 index 00000000..75ca1e67 Binary files /dev/null and b/icon/filext/odb12x12.gif differ diff --git a/icon/filext/odc12x12.gif b/icon/filext/odc12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext/odc12x12.gif differ diff --git a/icon/filext/odf12x12.gif b/icon/filext/odf12x12.gif new file mode 100644 index 00000000..e9dcb79b Binary files /dev/null and b/icon/filext/odf12x12.gif differ diff --git a/icon/filext/odg12x12.gif b/icon/filext/odg12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext/odg12x12.gif differ diff --git a/icon/filext/odi12x12.gif b/icon/filext/odi12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext/odi12x12.gif differ diff --git a/icon/filext/odm12x12.gif b/icon/filext/odm12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext/odm12x12.gif differ diff --git a/icon/filext/odp12x12.gif b/icon/filext/odp12x12.gif new file mode 100644 index 00000000..5b0a2532 Binary files /dev/null and b/icon/filext/odp12x12.gif differ diff --git a/icon/filext/ods12x12.gif b/icon/filext/ods12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext/ods12x12.gif differ diff --git a/icon/filext/odt12x12.gif b/icon/filext/odt12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext/odt12x12.gif differ diff --git a/icon/filext/otg12x12.gif b/icon/filext/otg12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext/otg12x12.gif differ diff --git a/icon/filext/otp12x12.gif b/icon/filext/otp12x12.gif new file mode 100644 index 00000000..5b0a2532 Binary files /dev/null and b/icon/filext/otp12x12.gif differ diff --git a/icon/filext/ots12x12.gif b/icon/filext/ots12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext/ots12x12.gif differ diff --git a/icon/filext/ott12x12.gif b/icon/filext/ott12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext/ott12x12.gif differ diff --git a/icon/filext/pas12x12.gif b/icon/filext/pas12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/pas12x12.gif differ diff --git a/icon/filext/pdf12x12.gif b/icon/filext/pdf12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext/pdf12x12.gif differ diff --git a/icon/filext/pl12x12.gif b/icon/filext/pl12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/pl12x12.gif differ diff --git a/icon/filext/png12x12.gif b/icon/filext/png12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/png12x12.gif differ diff --git a/icon/filext/pps12x12.gif b/icon/filext/pps12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext/pps12x12.gif differ diff --git a/icon/filext/ppsx12x12.gif b/icon/filext/ppsx12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext/ppsx12x12.gif differ diff --git a/icon/filext/ppt12x12.gif b/icon/filext/ppt12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext/ppt12x12.gif differ diff --git a/icon/filext/pptx12x12.gif b/icon/filext/pptx12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext/pptx12x12.gif differ diff --git a/icon/filext/ps12x12.gif b/icon/filext/ps12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext/ps12x12.gif differ diff --git a/icon/filext/pss12x12.gif b/icon/filext/pss12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext/pss12x12.gif differ diff --git a/icon/filext/qt12x12.gif b/icon/filext/qt12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/qt12x12.gif differ diff --git a/icon/filext/r12x12.gif b/icon/filext/r12x12.gif new file mode 100644 index 00000000..c67f4ce2 Binary files /dev/null and b/icon/filext/r12x12.gif differ diff --git a/icon/filext/ram12x12.gif b/icon/filext/ram12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/ram12x12.gif differ diff --git a/icon/filext/rar12x12.gif b/icon/filext/rar12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/rar12x12.gif differ diff --git a/icon/filext/raw12x12.gif b/icon/filext/raw12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext/raw12x12.gif differ diff --git a/icon/filext/rdata12x12.gif b/icon/filext/rdata12x12.gif new file mode 100644 index 00000000..c67f4ce2 Binary files /dev/null and b/icon/filext/rdata12x12.gif differ diff --git a/icon/filext/rm12x12.gif b/icon/filext/rm12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/rm12x12.gif differ diff --git a/icon/filext/rp12x12.gif b/icon/filext/rp12x12.gif new file mode 100644 index 00000000..89413881 Binary files /dev/null and b/icon/filext/rp12x12.gif differ diff --git a/icon/filext/rtf12x12.gif b/icon/filext/rtf12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext/rtf12x12.gif differ diff --git a/icon/filext/s12x12.gif b/icon/filext/s12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/s12x12.gif differ diff --git a/icon/filext/sav12x12.gif b/icon/filext/sav12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext/sav12x12.gif differ diff --git a/icon/filext/sbs12x12.gif b/icon/filext/sbs12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext/sbs12x12.gif differ diff --git a/icon/filext/sf312x12.gif b/icon/filext/sf312x12.gif new file mode 100644 index 00000000..673bb327 Binary files /dev/null and b/icon/filext/sf312x12.gif differ diff --git a/icon/filext/sgp12x12.gif b/icon/filext/sgp12x12.gif new file mode 100644 index 00000000..673bb327 Binary files /dev/null and b/icon/filext/sgp12x12.gif differ diff --git a/icon/filext/spo12x12.gif b/icon/filext/spo12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext/spo12x12.gif differ diff --git a/icon/filext/spp12x12.gif b/icon/filext/spp12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext/spp12x12.gif differ diff --git a/icon/filext/sps12x12.gif b/icon/filext/sps12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext/sps12x12.gif differ diff --git a/icon/filext/swf12x12.gif b/icon/filext/swf12x12.gif new file mode 100644 index 00000000..300422ce Binary files /dev/null and b/icon/filext/swf12x12.gif differ diff --git a/icon/filext/tar12x12.gif b/icon/filext/tar12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/tar12x12.gif differ diff --git a/icon/filext/tex12x12.gif b/icon/filext/tex12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext/tex12x12.gif differ diff --git a/icon/filext/tgz12x12.gif b/icon/filext/tgz12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/tgz12x12.gif differ diff --git a/icon/filext/tif12x12.gif b/icon/filext/tif12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext/tif12x12.gif differ diff --git a/icon/filext/txt12x12.gif b/icon/filext/txt12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext/txt12x12.gif differ diff --git a/icon/filext/voc12x12.gif b/icon/filext/voc12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext/voc12x12.gif differ diff --git a/icon/filext/vp12x12.gif b/icon/filext/vp12x12.gif new file mode 100644 index 00000000..f0e6511e Binary files /dev/null and b/icon/filext/vp12x12.gif differ diff --git a/icon/filext/wav12x12.gif b/icon/filext/wav12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext/wav12x12.gif differ diff --git a/icon/filext/wmv12x12.gif b/icon/filext/wmv12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext/wmv12x12.gif differ diff --git a/icon/filext/wxm12x12.gif b/icon/filext/wxm12x12.gif new file mode 100644 index 00000000..ddc9e522 Binary files /dev/null and b/icon/filext/wxm12x12.gif differ diff --git a/icon/filext/wxmx12x12.gif b/icon/filext/wxmx12x12.gif new file mode 100644 index 00000000..ddc9e522 Binary files /dev/null and b/icon/filext/wxmx12x12.gif differ diff --git a/icon/filext/xls12x12.gif b/icon/filext/xls12x12.gif new file mode 100644 index 00000000..d279651d Binary files /dev/null and b/icon/filext/xls12x12.gif differ diff --git a/icon/filext/xlsx12x12.gif b/icon/filext/xlsx12x12.gif new file mode 100644 index 00000000..d279651d Binary files /dev/null and b/icon/filext/xlsx12x12.gif differ diff --git a/icon/filext/xxx12x12.gif b/icon/filext/xxx12x12.gif new file mode 100644 index 00000000..73f05675 Binary files /dev/null and b/icon/filext/xxx12x12.gif differ diff --git a/icon/filext/zip12x12.gif b/icon/filext/zip12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext/zip12x12.gif differ diff --git a/icon/filext12x12/3gp12x12.gif b/icon/filext12x12/3gp12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/3gp12x12.gif differ diff --git a/icon/filext12x12/7z12x12.zip b/icon/filext12x12/7z12x12.zip new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/7z12x12.zip differ diff --git a/icon/filext12x12/asm12x12.gif b/icon/filext12x12/asm12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/asm12x12.gif differ diff --git a/icon/filext12x12/atc12x12.gif b/icon/filext12x12/atc12x12.gif new file mode 100644 index 00000000..da41cbfa Binary files /dev/null and b/icon/filext12x12/atc12x12.gif differ diff --git a/icon/filext12x12/avi12x12.gif b/icon/filext12x12/avi12x12.gif new file mode 100644 index 00000000..1d1cc669 Binary files /dev/null and b/icon/filext12x12/avi12x12.gif differ diff --git a/icon/filext12x12/bas12x12.gif b/icon/filext12x12/bas12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/bas12x12.gif differ diff --git a/icon/filext12x12/bat12x12.gif b/icon/filext12x12/bat12x12.gif new file mode 100644 index 00000000..c9412f30 Binary files /dev/null and b/icon/filext12x12/bat12x12.gif differ diff --git a/icon/filext12x12/bbl12x12.gif b/icon/filext12x12/bbl12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext12x12/bbl12x12.gif differ diff --git a/icon/filext12x12/bib12x12.gif b/icon/filext12x12/bib12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext12x12/bib12x12.gif differ diff --git a/icon/filext12x12/bin12x12.gif b/icon/filext12x12/bin12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/bin12x12.gif differ diff --git a/icon/filext12x12/bmp12x12.gif b/icon/filext12x12/bmp12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/bmp12x12.gif differ diff --git a/icon/filext12x12/bz212x12.gif b/icon/filext12x12/bz212x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/bz212x12.gif differ diff --git a/icon/filext12x12/c12x12.gif b/icon/filext12x12/c12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/c12x12.gif differ diff --git a/icon/filext12x12/cc12x12.gif b/icon/filext12x12/cc12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/cc12x12.gif differ diff --git a/icon/filext12x12/cdr12x12.gif b/icon/filext12x12/cdr12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/cdr12x12.gif differ diff --git a/icon/filext12x12/com12x12.gif b/icon/filext12x12/com12x12.gif new file mode 100644 index 00000000..c9412f30 Binary files /dev/null and b/icon/filext12x12/com12x12.gif differ diff --git a/icon/filext12x12/cpp12x12.gif b/icon/filext12x12/cpp12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/cpp12x12.gif differ diff --git a/icon/filext12x12/css12x12.gif b/icon/filext12x12/css12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext12x12/css12x12.gif differ diff --git a/icon/filext12x12/csv12x12.gif b/icon/filext12x12/csv12x12.gif new file mode 100644 index 00000000..d279651d Binary files /dev/null and b/icon/filext12x12/csv12x12.gif differ diff --git a/icon/filext12x12/doc12x12.gif b/icon/filext12x12/doc12x12.gif new file mode 100644 index 00000000..39d70ded Binary files /dev/null and b/icon/filext12x12/doc12x12.gif differ diff --git a/icon/filext12x12/docx12x12.gif b/icon/filext12x12/docx12x12.gif new file mode 100644 index 00000000..39d70ded Binary files /dev/null and b/icon/filext12x12/docx12x12.gif differ diff --git a/icon/filext12x12/dotm12x12.gif b/icon/filext12x12/dotm12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext12x12/dotm12x12.gif differ diff --git a/icon/filext12x12/dwd12x12.gif b/icon/filext12x12/dwd12x12.gif new file mode 100644 index 00000000..93515bac Binary files /dev/null and b/icon/filext12x12/dwd12x12.gif differ diff --git a/icon/filext12x12/eps12x12.gif b/icon/filext12x12/eps12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext12x12/eps12x12.gif differ diff --git a/icon/filext12x12/exe12x12.gif b/icon/filext12x12/exe12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/exe12x12.gif differ diff --git a/icon/filext12x12/fdf12x12.gif b/icon/filext12x12/fdf12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext12x12/fdf12x12.gif differ diff --git a/icon/filext12x12/flv12x12.gif b/icon/filext12x12/flv12x12.gif new file mode 100644 index 00000000..300422ce Binary files /dev/null and b/icon/filext12x12/flv12x12.gif differ diff --git a/icon/filext12x12/gif12x12.gif b/icon/filext12x12/gif12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/gif12x12.gif differ diff --git a/icon/filext12x12/gz12x12.gif b/icon/filext12x12/gz12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/gz12x12.gif differ diff --git a/icon/filext12x12/h12x12.gif b/icon/filext12x12/h12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/h12x12.gif differ diff --git a/icon/filext12x12/hex12x12.gif b/icon/filext12x12/hex12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/hex12x12.gif differ diff --git a/icon/filext12x12/htm12x12.gif b/icon/filext12x12/htm12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext12x12/htm12x12.gif differ diff --git a/icon/filext12x12/html12x12.gif b/icon/filext12x12/html12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext12x12/html12x12.gif differ diff --git a/icon/filext12x12/img12x12.gif b/icon/filext12x12/img12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/img12x12.gif differ diff --git a/icon/filext12x12/java12x12.gif b/icon/filext12x12/java12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/java12x12.gif differ diff --git a/icon/filext12x12/jpeg12x12.gif b/icon/filext12x12/jpeg12x12.gif new file mode 100644 index 00000000..fd65a171 Binary files /dev/null and b/icon/filext12x12/jpeg12x12.gif differ diff --git a/icon/filext12x12/jpg12x12.gif b/icon/filext12x12/jpg12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/jpg12x12.gif differ diff --git a/icon/filext12x12/latex12x12.gif b/icon/filext12x12/latex12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext12x12/latex12x12.gif differ diff --git a/icon/filext12x12/m12x12.gif b/icon/filext12x12/m12x12.gif new file mode 100644 index 00000000..5a22c07b Binary files /dev/null and b/icon/filext12x12/m12x12.gif differ diff --git a/icon/filext12x12/mas12x12.gif b/icon/filext12x12/mas12x12.gif new file mode 100644 index 00000000..6197678d Binary files /dev/null and b/icon/filext12x12/mas12x12.gif differ diff --git a/icon/filext12x12/mdb12x12.gif b/icon/filext12x12/mdb12x12.gif new file mode 100644 index 00000000..e0271271 Binary files /dev/null and b/icon/filext12x12/mdb12x12.gif differ diff --git a/icon/filext12x12/mht12x12.gif b/icon/filext12x12/mht12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext12x12/mht12x12.gif differ diff --git a/icon/filext12x12/mhtml12x12.gif b/icon/filext12x12/mhtml12x12.gif new file mode 100644 index 00000000..76cd225a Binary files /dev/null and b/icon/filext12x12/mhtml12x12.gif differ diff --git a/icon/filext12x12/mid12x12.gif b/icon/filext12x12/mid12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext12x12/mid12x12.gif differ diff --git a/icon/filext12x12/mov12x12.gif b/icon/filext12x12/mov12x12.gif new file mode 100644 index 00000000..1d1cc669 Binary files /dev/null and b/icon/filext12x12/mov12x12.gif differ diff --git a/icon/filext12x12/mp312x12.gif b/icon/filext12x12/mp312x12.gif new file mode 100644 index 00000000..992bde65 Binary files /dev/null and b/icon/filext12x12/mp312x12.gif differ diff --git a/icon/filext12x12/mp412x12.gif b/icon/filext12x12/mp412x12.gif new file mode 100644 index 00000000..1d1cc669 Binary files /dev/null and b/icon/filext12x12/mp412x12.gif differ diff --git a/icon/filext12x12/mpeg12x12.gif b/icon/filext12x12/mpeg12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/mpeg12x12.gif differ diff --git a/icon/filext12x12/mpg12x12.gif b/icon/filext12x12/mpg12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/mpg12x12.gif differ diff --git a/icon/filext12x12/mpp12x12.gif b/icon/filext12x12/mpp12x12.gif new file mode 100644 index 00000000..e4aa6f6e Binary files /dev/null and b/icon/filext12x12/mpp12x12.gif differ diff --git a/icon/filext12x12/mus12x12.gif b/icon/filext12x12/mus12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext12x12/mus12x12.gif differ diff --git a/icon/filext12x12/nb12x12.gif b/icon/filext12x12/nb12x12.gif new file mode 100644 index 00000000..0226a2d6 Binary files /dev/null and b/icon/filext12x12/nb12x12.gif differ diff --git a/icon/filext12x12/nue12x12.gif b/icon/filext12x12/nue12x12.gif new file mode 100644 index 00000000..f44841fa Binary files /dev/null and b/icon/filext12x12/nue12x12.gif differ diff --git a/icon/filext12x12/odb12x12.gif b/icon/filext12x12/odb12x12.gif new file mode 100644 index 00000000..75ca1e67 Binary files /dev/null and b/icon/filext12x12/odb12x12.gif differ diff --git a/icon/filext12x12/odc12x12.gif b/icon/filext12x12/odc12x12.gif new file mode 100644 index 00000000..28835113 Binary files /dev/null and b/icon/filext12x12/odc12x12.gif differ diff --git a/icon/filext12x12/odf12x12.gif b/icon/filext12x12/odf12x12.gif new file mode 100644 index 00000000..e9dcb79b Binary files /dev/null and b/icon/filext12x12/odf12x12.gif differ diff --git a/icon/filext12x12/odg12x12.gif b/icon/filext12x12/odg12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext12x12/odg12x12.gif differ diff --git a/icon/filext12x12/odi12x12.gif b/icon/filext12x12/odi12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext12x12/odi12x12.gif differ diff --git a/icon/filext12x12/odm12x12.gif b/icon/filext12x12/odm12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext12x12/odm12x12.gif differ diff --git a/icon/filext12x12/odp12x12.gif b/icon/filext12x12/odp12x12.gif new file mode 100644 index 00000000..5b54bf8e Binary files /dev/null and b/icon/filext12x12/odp12x12.gif differ diff --git a/icon/filext12x12/ods12x12.gif b/icon/filext12x12/ods12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext12x12/ods12x12.gif differ diff --git a/icon/filext12x12/odt12x12.gif b/icon/filext12x12/odt12x12.gif new file mode 100644 index 00000000..d3f0c2e1 Binary files /dev/null and b/icon/filext12x12/odt12x12.gif differ diff --git a/icon/filext12x12/open-office-base12x12.gif b/icon/filext12x12/open-office-base12x12.gif new file mode 100644 index 00000000..75ca1e67 Binary files /dev/null and b/icon/filext12x12/open-office-base12x12.gif differ diff --git a/icon/filext12x12/open-office-calc12x12.gif b/icon/filext12x12/open-office-calc12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext12x12/open-office-calc12x12.gif differ diff --git a/icon/filext12x12/open-office-draw12x12.gif b/icon/filext12x12/open-office-draw12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext12x12/open-office-draw12x12.gif differ diff --git a/icon/filext12x12/open-office-impress12x12.gif b/icon/filext12x12/open-office-impress12x12.gif new file mode 100644 index 00000000..5b0a2532 Binary files /dev/null and b/icon/filext12x12/open-office-impress12x12.gif differ diff --git a/icon/filext12x12/open-office-math12x12.gif b/icon/filext12x12/open-office-math12x12.gif new file mode 100644 index 00000000..e9dcb79b Binary files /dev/null and b/icon/filext12x12/open-office-math12x12.gif differ diff --git a/icon/filext12x12/open-office-writer12x12.gif b/icon/filext12x12/open-office-writer12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext12x12/open-office-writer12x12.gif differ diff --git a/icon/filext12x12/otg12x12.gif b/icon/filext12x12/otg12x12.gif new file mode 100644 index 00000000..f33264de Binary files /dev/null and b/icon/filext12x12/otg12x12.gif differ diff --git a/icon/filext12x12/otp12x12.gif b/icon/filext12x12/otp12x12.gif new file mode 100644 index 00000000..5b0a2532 Binary files /dev/null and b/icon/filext12x12/otp12x12.gif differ diff --git a/icon/filext12x12/ots12x12.gif b/icon/filext12x12/ots12x12.gif new file mode 100644 index 00000000..326ce916 Binary files /dev/null and b/icon/filext12x12/ots12x12.gif differ diff --git a/icon/filext12x12/ott12x12.gif b/icon/filext12x12/ott12x12.gif new file mode 100644 index 00000000..f96da65b Binary files /dev/null and b/icon/filext12x12/ott12x12.gif differ diff --git a/icon/filext12x12/pas12x12.gif b/icon/filext12x12/pas12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/pas12x12.gif differ diff --git a/icon/filext12x12/pdf12x12.gif b/icon/filext12x12/pdf12x12.gif new file mode 100644 index 00000000..014997b5 Binary files /dev/null and b/icon/filext12x12/pdf12x12.gif differ diff --git a/icon/filext12x12/pl12x12.gif b/icon/filext12x12/pl12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/pl12x12.gif differ diff --git a/icon/filext12x12/png12x12.gif b/icon/filext12x12/png12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/png12x12.gif differ diff --git a/icon/filext12x12/pps12x12.gif b/icon/filext12x12/pps12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext12x12/pps12x12.gif differ diff --git a/icon/filext12x12/ppsx12x12.gif b/icon/filext12x12/ppsx12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext12x12/ppsx12x12.gif differ diff --git a/icon/filext12x12/ppt12x12.gif b/icon/filext12x12/ppt12x12.gif new file mode 100644 index 00000000..07376a6d Binary files /dev/null and b/icon/filext12x12/ppt12x12.gif differ diff --git a/icon/filext12x12/pptx12x12.gif b/icon/filext12x12/pptx12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext12x12/pptx12x12.gif differ diff --git a/icon/filext12x12/ps12x12.gif b/icon/filext12x12/ps12x12.gif new file mode 100644 index 00000000..caeb41ec Binary files /dev/null and b/icon/filext12x12/ps12x12.gif differ diff --git a/icon/filext12x12/pspbrwse.jbf b/icon/filext12x12/pspbrwse.jbf new file mode 100644 index 00000000..4c28becd Binary files /dev/null and b/icon/filext12x12/pspbrwse.jbf differ diff --git a/icon/filext12x12/pss12x12.gif b/icon/filext12x12/pss12x12.gif new file mode 100644 index 00000000..bb024a35 Binary files /dev/null and b/icon/filext12x12/pss12x12.gif differ diff --git a/icon/filext12x12/qt12x12.gif b/icon/filext12x12/qt12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/qt12x12.gif differ diff --git a/icon/filext12x12/r12x12.gif b/icon/filext12x12/r12x12.gif new file mode 100644 index 00000000..c67f4ce2 Binary files /dev/null and b/icon/filext12x12/r12x12.gif differ diff --git a/icon/filext12x12/ram12x12.gif b/icon/filext12x12/ram12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/ram12x12.gif differ diff --git a/icon/filext12x12/rar12x12.gif b/icon/filext12x12/rar12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/rar12x12.gif differ diff --git a/icon/filext12x12/raw12x12.gif b/icon/filext12x12/raw12x12.gif new file mode 100644 index 00000000..56e29b53 Binary files /dev/null and b/icon/filext12x12/raw12x12.gif differ diff --git a/icon/filext12x12/rdata12x12.gif b/icon/filext12x12/rdata12x12.gif new file mode 100644 index 00000000..c67f4ce2 Binary files /dev/null and b/icon/filext12x12/rdata12x12.gif differ diff --git a/icon/filext12x12/rm12x12.gif b/icon/filext12x12/rm12x12.gif new file mode 100644 index 00000000..5ddccf70 Binary files /dev/null and b/icon/filext12x12/rm12x12.gif differ diff --git a/icon/filext12x12/rp12x12.gif b/icon/filext12x12/rp12x12.gif new file mode 100644 index 00000000..89413881 Binary files /dev/null and b/icon/filext12x12/rp12x12.gif differ diff --git a/icon/filext12x12/rtf12x12.gif b/icon/filext12x12/rtf12x12.gif new file mode 100644 index 00000000..a328b770 Binary files /dev/null and b/icon/filext12x12/rtf12x12.gif differ diff --git a/icon/filext12x12/s12x12.gif b/icon/filext12x12/s12x12.gif new file mode 100644 index 00000000..6536b760 Binary files /dev/null and b/icon/filext12x12/s12x12.gif differ diff --git a/icon/filext12x12/sav12x12.gif b/icon/filext12x12/sav12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext12x12/sav12x12.gif differ diff --git a/icon/filext12x12/sbs12x12.gif b/icon/filext12x12/sbs12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext12x12/sbs12x12.gif differ diff --git a/icon/filext12x12/sf312x12.gif b/icon/filext12x12/sf312x12.gif new file mode 100644 index 00000000..673bb327 Binary files /dev/null and b/icon/filext12x12/sf312x12.gif differ diff --git a/icon/filext12x12/sgp12x12.gif b/icon/filext12x12/sgp12x12.gif new file mode 100644 index 00000000..673bb327 Binary files /dev/null and b/icon/filext12x12/sgp12x12.gif differ diff --git a/icon/filext12x12/spo12x12.gif b/icon/filext12x12/spo12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext12x12/spo12x12.gif differ diff --git a/icon/filext12x12/spp12x12.gif b/icon/filext12x12/spp12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext12x12/spp12x12.gif differ diff --git a/icon/filext12x12/sps12x12.gif b/icon/filext12x12/sps12x12.gif new file mode 100644 index 00000000..3bb0cb02 Binary files /dev/null and b/icon/filext12x12/sps12x12.gif differ diff --git a/icon/filext12x12/swf12x12.gif b/icon/filext12x12/swf12x12.gif new file mode 100644 index 00000000..300422ce Binary files /dev/null and b/icon/filext12x12/swf12x12.gif differ diff --git a/icon/filext12x12/tar12x12.gif b/icon/filext12x12/tar12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/tar12x12.gif differ diff --git a/icon/filext12x12/tex12x12.gif b/icon/filext12x12/tex12x12.gif new file mode 100644 index 00000000..c9072734 Binary files /dev/null and b/icon/filext12x12/tex12x12.gif differ diff --git a/icon/filext12x12/tgz12x12.gif b/icon/filext12x12/tgz12x12.gif new file mode 100644 index 00000000..add52401 Binary files /dev/null and b/icon/filext12x12/tgz12x12.gif differ diff --git a/icon/filext12x12/tif12x12.gif b/icon/filext12x12/tif12x12.gif new file mode 100644 index 00000000..699027ce Binary files /dev/null and b/icon/filext12x12/tif12x12.gif differ diff --git a/icon/filext12x12/txt12x12.gif b/icon/filext12x12/txt12x12.gif new file mode 100644 index 00000000..7981c067 Binary files /dev/null and b/icon/filext12x12/txt12x12.gif differ diff --git a/icon/filext12x12/voc12x12.gif b/icon/filext12x12/voc12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext12x12/voc12x12.gif differ diff --git a/icon/filext12x12/vp12x12.gif b/icon/filext12x12/vp12x12.gif new file mode 100644 index 00000000..f0e6511e Binary files /dev/null and b/icon/filext12x12/vp12x12.gif differ diff --git a/icon/filext12x12/wav12x12.gif b/icon/filext12x12/wav12x12.gif new file mode 100644 index 00000000..a1041b17 Binary files /dev/null and b/icon/filext12x12/wav12x12.gif differ diff --git a/icon/filext12x12/wma12x12.gif b/icon/filext12x12/wma12x12.gif new file mode 100644 index 00000000..992bde65 Binary files /dev/null and b/icon/filext12x12/wma12x12.gif differ diff --git a/icon/filext12x12/wmv12x12.gif b/icon/filext12x12/wmv12x12.gif new file mode 100644 index 00000000..1d1cc669 Binary files /dev/null and b/icon/filext12x12/wmv12x12.gif differ diff --git a/icon/filext12x12/wxm12x12.gif b/icon/filext12x12/wxm12x12.gif new file mode 100644 index 00000000..ddc9e522 Binary files /dev/null and b/icon/filext12x12/wxm12x12.gif differ diff --git a/icon/filext12x12/wxmx12x12.gif b/icon/filext12x12/wxmx12x12.gif new file mode 100644 index 00000000..ddc9e522 Binary files /dev/null and b/icon/filext12x12/wxmx12x12.gif differ diff --git a/icon/filext12x12/xls12x12.gif b/icon/filext12x12/xls12x12.gif new file mode 100644 index 00000000..9e2f0a8d Binary files /dev/null and b/icon/filext12x12/xls12x12.gif differ diff --git a/icon/filext12x12/xlsx12x12.gif b/icon/filext12x12/xlsx12x12.gif new file mode 100644 index 00000000..d279651d Binary files /dev/null and b/icon/filext12x12/xlsx12x12.gif differ diff --git a/icon/filext12x12/xxx12x12.gif b/icon/filext12x12/xxx12x12.gif new file mode 100644 index 00000000..73f05675 Binary files /dev/null and b/icon/filext12x12/xxx12x12.gif differ diff --git a/icon/filext12x12/zip12x12.gif b/icon/filext12x12/zip12x12.gif new file mode 100644 index 00000000..41ca8451 Binary files /dev/null and b/icon/filext12x12/zip12x12.gif differ diff --git a/icon/filext16x16/3gp16x16.gif b/icon/filext16x16/3gp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/3gp16x16.gif differ diff --git a/icon/filext16x16/7z16x16.gif b/icon/filext16x16/7z16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/7z16x16.gif differ diff --git a/icon/filext16x16/asm16x16.gif b/icon/filext16x16/asm16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/asm16x16.gif differ diff --git a/icon/filext16x16/atc16x16.gif b/icon/filext16x16/atc16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/atc16x16.gif differ diff --git a/icon/filext16x16/avi16x16.gif b/icon/filext16x16/avi16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/avi16x16.gif differ diff --git a/icon/filext16x16/bas16x16.gif b/icon/filext16x16/bas16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/bas16x16.gif differ diff --git a/icon/filext16x16/bat16x16.gif b/icon/filext16x16/bat16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/bat16x16.gif differ diff --git a/icon/filext16x16/bbl16x16.gif b/icon/filext16x16/bbl16x16.gif new file mode 100644 index 00000000..7cea4b82 Binary files /dev/null and b/icon/filext16x16/bbl16x16.gif differ diff --git a/icon/filext16x16/bib16x16.gif b/icon/filext16x16/bib16x16.gif new file mode 100644 index 00000000..7cea4b82 Binary files /dev/null and b/icon/filext16x16/bib16x16.gif differ diff --git a/icon/filext16x16/bin16x16.gif b/icon/filext16x16/bin16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/bin16x16.gif differ diff --git a/icon/filext16x16/bmp16x16.gif b/icon/filext16x16/bmp16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/bmp16x16.gif differ diff --git a/icon/filext16x16/bz16x16.gif b/icon/filext16x16/bz16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/bz16x16.gif differ diff --git a/icon/filext16x16/bz216x16.gif b/icon/filext16x16/bz216x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/bz216x16.gif differ diff --git a/icon/filext16x16/c16x16.gif b/icon/filext16x16/c16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/c16x16.gif differ diff --git a/icon/filext16x16/cc16x16.gif b/icon/filext16x16/cc16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/cc16x16.gif differ diff --git a/icon/filext16x16/cdr16x16.gif b/icon/filext16x16/cdr16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/cdr16x16.gif differ diff --git a/icon/filext16x16/com16x16.gif b/icon/filext16x16/com16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/com16x16.gif differ diff --git a/icon/filext16x16/cpp16x16.gif b/icon/filext16x16/cpp16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/cpp16x16.gif differ diff --git a/icon/filext16x16/css16x16.gif b/icon/filext16x16/css16x16.gif new file mode 100644 index 00000000..8aeb1a5b Binary files /dev/null and b/icon/filext16x16/css16x16.gif differ diff --git a/icon/filext16x16/csv16x16.gif b/icon/filext16x16/csv16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/csv16x16.gif differ diff --git a/icon/filext16x16/dmg16x16.gif b/icon/filext16x16/dmg16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/dmg16x16.gif differ diff --git a/icon/filext16x16/doc16x16.gif b/icon/filext16x16/doc16x16.gif new file mode 100644 index 00000000..0a850969 Binary files /dev/null and b/icon/filext16x16/doc16x16.gif differ diff --git a/icon/filext16x16/docx16x16.gif b/icon/filext16x16/docx16x16.gif new file mode 100644 index 00000000..0a850969 Binary files /dev/null and b/icon/filext16x16/docx16x16.gif differ diff --git a/icon/filext16x16/dotm16x16.gif b/icon/filext16x16/dotm16x16.gif new file mode 100644 index 00000000..0a850969 Binary files /dev/null and b/icon/filext16x16/dotm16x16.gif differ diff --git a/icon/filext16x16/dwd16x16.gif b/icon/filext16x16/dwd16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/dwd16x16.gif differ diff --git a/icon/filext16x16/eps16x16.gif b/icon/filext16x16/eps16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/eps16x16.gif differ diff --git a/icon/filext16x16/exe16x16.gif b/icon/filext16x16/exe16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/exe16x16.gif differ diff --git a/icon/filext16x16/fdf16x16.gif b/icon/filext16x16/fdf16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/fdf16x16.gif differ diff --git a/icon/filext16x16/flv16x16.gif b/icon/filext16x16/flv16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/flv16x16.gif differ diff --git a/icon/filext16x16/gif16x16.gif b/icon/filext16x16/gif16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/gif16x16.gif differ diff --git a/icon/filext16x16/gz16x16.gif b/icon/filext16x16/gz16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/gz16x16.gif differ diff --git a/icon/filext16x16/h16x16.gif b/icon/filext16x16/h16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/h16x16.gif differ diff --git a/icon/filext16x16/hex16x16.gif b/icon/filext16x16/hex16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/hex16x16.gif differ diff --git a/icon/filext16x16/htm16x16.gif b/icon/filext16x16/htm16x16.gif new file mode 100644 index 00000000..1a6632fb Binary files /dev/null and b/icon/filext16x16/htm16x16.gif differ diff --git a/icon/filext16x16/html16x16.gif b/icon/filext16x16/html16x16.gif new file mode 100644 index 00000000..1a6632fb Binary files /dev/null and b/icon/filext16x16/html16x16.gif differ diff --git a/icon/filext16x16/img16x16.gif b/icon/filext16x16/img16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/img16x16.gif differ diff --git a/icon/filext16x16/java16x16.gif b/icon/filext16x16/java16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/java16x16.gif differ diff --git a/icon/filext16x16/jpeg16x16.gif b/icon/filext16x16/jpeg16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/jpeg16x16.gif differ diff --git a/icon/filext16x16/jpg16x16.gif b/icon/filext16x16/jpg16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/jpg16x16.gif differ diff --git a/icon/filext16x16/latex16x16.gif b/icon/filext16x16/latex16x16.gif new file mode 100644 index 00000000..7cea4b82 Binary files /dev/null and b/icon/filext16x16/latex16x16.gif differ diff --git a/icon/filext16x16/m16x16.gif b/icon/filext16x16/m16x16.gif new file mode 100644 index 00000000..cb4bc25c Binary files /dev/null and b/icon/filext16x16/m16x16.gif differ diff --git a/icon/filext16x16/mas16x16.gif b/icon/filext16x16/mas16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/mas16x16.gif differ diff --git a/icon/filext16x16/mdb16x16.gif b/icon/filext16x16/mdb16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/mdb16x16.gif differ diff --git a/icon/filext16x16/mht16x16.gif b/icon/filext16x16/mht16x16.gif new file mode 100644 index 00000000..1a6632fb Binary files /dev/null and b/icon/filext16x16/mht16x16.gif differ diff --git a/icon/filext16x16/mhtml16x16.gif b/icon/filext16x16/mhtml16x16.gif new file mode 100644 index 00000000..1a6632fb Binary files /dev/null and b/icon/filext16x16/mhtml16x16.gif differ diff --git a/icon/filext16x16/mid16x16.gif b/icon/filext16x16/mid16x16.gif new file mode 100644 index 00000000..d4da6f1f Binary files /dev/null and b/icon/filext16x16/mid16x16.gif differ diff --git a/icon/filext16x16/mov16x16.gif b/icon/filext16x16/mov16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/mov16x16.gif differ diff --git a/icon/filext16x16/mp316x16.gif b/icon/filext16x16/mp316x16.gif new file mode 100644 index 00000000..d4da6f1f Binary files /dev/null and b/icon/filext16x16/mp316x16.gif differ diff --git a/icon/filext16x16/mp416x16.gif b/icon/filext16x16/mp416x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/mp416x16.gif differ diff --git a/icon/filext16x16/mpeg16x16.gif b/icon/filext16x16/mpeg16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/mpeg16x16.gif differ diff --git a/icon/filext16x16/mpg16x16.gif b/icon/filext16x16/mpg16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/mpg16x16.gif differ diff --git a/icon/filext16x16/mpp16x16.gif b/icon/filext16x16/mpp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/mpp16x16.gif differ diff --git a/icon/filext16x16/mus16x16.gif b/icon/filext16x16/mus16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/mus16x16.gif differ diff --git a/icon/filext16x16/nb16x16.gif b/icon/filext16x16/nb16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/nb16x16.gif differ diff --git a/icon/filext16x16/nue16x16.gif b/icon/filext16x16/nue16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/nue16x16.gif differ diff --git a/icon/filext16x16/odb16x16.gif b/icon/filext16x16/odb16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/odb16x16.gif differ diff --git a/icon/filext16x16/odc16x16.gif b/icon/filext16x16/odc16x16.gif new file mode 100644 index 00000000..6e23f19d Binary files /dev/null and b/icon/filext16x16/odc16x16.gif differ diff --git a/icon/filext16x16/odf16x16.gif b/icon/filext16x16/odf16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/odf16x16.gif differ diff --git a/icon/filext16x16/odg16x16.gif b/icon/filext16x16/odg16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/odg16x16.gif differ diff --git a/icon/filext16x16/odi16x16.gif b/icon/filext16x16/odi16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/odi16x16.gif differ diff --git a/icon/filext16x16/odm16x16.gif b/icon/filext16x16/odm16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/odm16x16.gif differ diff --git a/icon/filext16x16/odp16x16.gif b/icon/filext16x16/odp16x16.gif new file mode 100644 index 00000000..697df9d0 Binary files /dev/null and b/icon/filext16x16/odp16x16.gif differ diff --git a/icon/filext16x16/ods16x16.gif b/icon/filext16x16/ods16x16.gif new file mode 100644 index 00000000..6e23f19d Binary files /dev/null and b/icon/filext16x16/ods16x16.gif differ diff --git a/icon/filext16x16/odt16x16.gif b/icon/filext16x16/odt16x16.gif new file mode 100644 index 00000000..0a850969 Binary files /dev/null and b/icon/filext16x16/odt16x16.gif differ diff --git a/icon/filext16x16/otg16x16.gif b/icon/filext16x16/otg16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/otg16x16.gif differ diff --git a/icon/filext16x16/otp16x16.gif b/icon/filext16x16/otp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/otp16x16.gif differ diff --git a/icon/filext16x16/ots16x16.gif b/icon/filext16x16/ots16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/ots16x16.gif differ diff --git a/icon/filext16x16/ott16x16.gif b/icon/filext16x16/ott16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/ott16x16.gif differ diff --git a/icon/filext16x16/pas16x16.gif b/icon/filext16x16/pas16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/pas16x16.gif differ diff --git a/icon/filext16x16/pdf16x16.gif b/icon/filext16x16/pdf16x16.gif new file mode 100644 index 00000000..71aaba68 Binary files /dev/null and b/icon/filext16x16/pdf16x16.gif differ diff --git a/icon/filext16x16/pl16x16.gif b/icon/filext16x16/pl16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/pl16x16.gif differ diff --git a/icon/filext16x16/png16x16.gif b/icon/filext16x16/png16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/png16x16.gif differ diff --git a/icon/filext16x16/pps16x16.gif b/icon/filext16x16/pps16x16.gif new file mode 100644 index 00000000..697df9d0 Binary files /dev/null and b/icon/filext16x16/pps16x16.gif differ diff --git a/icon/filext16x16/ppsx16x16.gif b/icon/filext16x16/ppsx16x16.gif new file mode 100644 index 00000000..697df9d0 Binary files /dev/null and b/icon/filext16x16/ppsx16x16.gif differ diff --git a/icon/filext16x16/ppt16x16.gif b/icon/filext16x16/ppt16x16.gif new file mode 100644 index 00000000..697df9d0 Binary files /dev/null and b/icon/filext16x16/ppt16x16.gif differ diff --git a/icon/filext16x16/pptx16x16.gif b/icon/filext16x16/pptx16x16.gif new file mode 100644 index 00000000..697df9d0 Binary files /dev/null and b/icon/filext16x16/pptx16x16.gif differ diff --git a/icon/filext16x16/ps16x16.gif b/icon/filext16x16/ps16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/ps16x16.gif differ diff --git a/icon/filext16x16/pspbrwse.jbf b/icon/filext16x16/pspbrwse.jbf new file mode 100644 index 00000000..0d88afec Binary files /dev/null and b/icon/filext16x16/pspbrwse.jbf differ diff --git a/icon/filext16x16/pss16x16.gif b/icon/filext16x16/pss16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/pss16x16.gif differ diff --git a/icon/filext16x16/qt16x16.gif b/icon/filext16x16/qt16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/qt16x16.gif differ diff --git a/icon/filext16x16/r16x16.gif b/icon/filext16x16/r16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/r16x16.gif differ diff --git a/icon/filext16x16/ram16x16.gif b/icon/filext16x16/ram16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/ram16x16.gif differ diff --git a/icon/filext16x16/rar16x16.gif b/icon/filext16x16/rar16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/rar16x16.gif differ diff --git a/icon/filext16x16/raw16x16.gif b/icon/filext16x16/raw16x16.gif new file mode 100644 index 00000000..12ba86b6 Binary files /dev/null and b/icon/filext16x16/raw16x16.gif differ diff --git a/icon/filext16x16/rdata16x16.gif b/icon/filext16x16/rdata16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/rdata16x16.gif differ diff --git a/icon/filext16x16/rm16x16.gif b/icon/filext16x16/rm16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/rm16x16.gif differ diff --git a/icon/filext16x16/rp16x16.gif b/icon/filext16x16/rp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/rp16x16.gif differ diff --git a/icon/filext16x16/rtf16x16.gif b/icon/filext16x16/rtf16x16.gif new file mode 100644 index 00000000..0a850969 Binary files /dev/null and b/icon/filext16x16/rtf16x16.gif differ diff --git a/icon/filext16x16/s16x16.gif b/icon/filext16x16/s16x16.gif new file mode 100644 index 00000000..6b22216e Binary files /dev/null and b/icon/filext16x16/s16x16.gif differ diff --git a/icon/filext16x16/sav16x16.gif b/icon/filext16x16/sav16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/sav16x16.gif differ diff --git a/icon/filext16x16/sbs16x16.gif b/icon/filext16x16/sbs16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/sbs16x16.gif differ diff --git a/icon/filext16x16/sf316x16.gif b/icon/filext16x16/sf316x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/sf316x16.gif differ diff --git a/icon/filext16x16/sgp16x16.gif b/icon/filext16x16/sgp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/sgp16x16.gif differ diff --git a/icon/filext16x16/spo16x16.gif b/icon/filext16x16/spo16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/spo16x16.gif differ diff --git a/icon/filext16x16/spp16x16.gif b/icon/filext16x16/spp16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/spp16x16.gif differ diff --git a/icon/filext16x16/sps16x16.gif b/icon/filext16x16/sps16x16.gif new file mode 100644 index 00000000..1fcd62bf Binary files /dev/null and b/icon/filext16x16/sps16x16.gif differ diff --git a/icon/filext16x16/swf16x16.gif b/icon/filext16x16/swf16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/swf16x16.gif differ diff --git a/icon/filext16x16/sws16x16.gif b/icon/filext16x16/sws16x16.gif new file mode 100644 index 00000000..cb4bc25c Binary files /dev/null and b/icon/filext16x16/sws16x16.gif differ diff --git a/icon/filext16x16/sws32x32.gif b/icon/filext16x16/sws32x32.gif new file mode 100644 index 00000000..e817ea17 Binary files /dev/null and b/icon/filext16x16/sws32x32.gif differ diff --git a/icon/filext16x16/tar16x16.gif b/icon/filext16x16/tar16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/tar16x16.gif differ diff --git a/icon/filext16x16/tex16x16.gif b/icon/filext16x16/tex16x16.gif new file mode 100644 index 00000000..7cea4b82 Binary files /dev/null and b/icon/filext16x16/tex16x16.gif differ diff --git a/icon/filext16x16/tgz16x16.gif b/icon/filext16x16/tgz16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/tgz16x16.gif differ diff --git a/icon/filext16x16/tif16x16.gif b/icon/filext16x16/tif16x16.gif new file mode 100644 index 00000000..3d7f2661 Binary files /dev/null and b/icon/filext16x16/tif16x16.gif differ diff --git a/icon/filext16x16/txt16x16.gif b/icon/filext16x16/txt16x16.gif new file mode 100644 index 00000000..c1172828 Binary files /dev/null and b/icon/filext16x16/txt16x16.gif differ diff --git a/icon/filext16x16/url16x16.gif b/icon/filext16x16/url16x16.gif new file mode 100644 index 00000000..43202dcd Binary files /dev/null and b/icon/filext16x16/url16x16.gif differ diff --git a/icon/filext16x16/voc16x16.gif b/icon/filext16x16/voc16x16.gif new file mode 100644 index 00000000..d4da6f1f Binary files /dev/null and b/icon/filext16x16/voc16x16.gif differ diff --git a/icon/filext16x16/void16x16.gif b/icon/filext16x16/void16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/void16x16.gif differ diff --git a/icon/filext16x16/vp16x16.gif b/icon/filext16x16/vp16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/vp16x16.gif differ diff --git a/icon/filext16x16/wav16x16.gif b/icon/filext16x16/wav16x16.gif new file mode 100644 index 00000000..d4da6f1f Binary files /dev/null and b/icon/filext16x16/wav16x16.gif differ diff --git a/icon/filext16x16/wma16x16.gif b/icon/filext16x16/wma16x16.gif new file mode 100644 index 00000000..d4da6f1f Binary files /dev/null and b/icon/filext16x16/wma16x16.gif differ diff --git a/icon/filext16x16/wmv16x16.gif b/icon/filext16x16/wmv16x16.gif new file mode 100644 index 00000000..f3f71b7d Binary files /dev/null and b/icon/filext16x16/wmv16x16.gif differ diff --git a/icon/filext16x16/wxm16x16.gif b/icon/filext16x16/wxm16x16.gif new file mode 100644 index 00000000..cb4bc25c Binary files /dev/null and b/icon/filext16x16/wxm16x16.gif differ diff --git a/icon/filext16x16/wxmx16x16.gif b/icon/filext16x16/wxmx16x16.gif new file mode 100644 index 00000000..cb4bc25c Binary files /dev/null and b/icon/filext16x16/wxmx16x16.gif differ diff --git a/icon/filext16x16/xls16x16.gif b/icon/filext16x16/xls16x16.gif new file mode 100644 index 00000000..6e23f19d Binary files /dev/null and b/icon/filext16x16/xls16x16.gif differ diff --git a/icon/filext16x16/xlsx16x16.gif b/icon/filext16x16/xlsx16x16.gif new file mode 100644 index 00000000..6e23f19d Binary files /dev/null and b/icon/filext16x16/xlsx16x16.gif differ diff --git a/icon/filext16x16/xxx16x16.gif b/icon/filext16x16/xxx16x16.gif new file mode 100644 index 00000000..6310b821 Binary files /dev/null and b/icon/filext16x16/xxx16x16.gif differ diff --git a/icon/filext16x16/zip16x16.gif b/icon/filext16x16/zip16x16.gif new file mode 100644 index 00000000..b2929586 Binary files /dev/null and b/icon/filext16x16/zip16x16.gif differ diff --git a/icon/filext32x32/3gp32x32.gif b/icon/filext32x32/3gp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/3gp32x32.gif differ diff --git a/icon/filext32x32/7z32x32.gif b/icon/filext32x32/7z32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/7z32x32.gif differ diff --git a/icon/filext32x32/asm32x32.gif b/icon/filext32x32/asm32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/asm32x32.gif differ diff --git a/icon/filext32x32/atc32x32.gif b/icon/filext32x32/atc32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/atc32x32.gif differ diff --git a/icon/filext32x32/avi32x32.gif b/icon/filext32x32/avi32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/avi32x32.gif differ diff --git a/icon/filext32x32/bas32x32.gif b/icon/filext32x32/bas32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/bas32x32.gif differ diff --git a/icon/filext32x32/bat32x32.gif b/icon/filext32x32/bat32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/bat32x32.gif differ diff --git a/icon/filext32x32/bbl32x32.gif b/icon/filext32x32/bbl32x32.gif new file mode 100644 index 00000000..567c9ecf Binary files /dev/null and b/icon/filext32x32/bbl32x32.gif differ diff --git a/icon/filext32x32/bib32x32.gif b/icon/filext32x32/bib32x32.gif new file mode 100644 index 00000000..567c9ecf Binary files /dev/null and b/icon/filext32x32/bib32x32.gif differ diff --git a/icon/filext32x32/bin32x32.gif b/icon/filext32x32/bin32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/bin32x32.gif differ diff --git a/icon/filext32x32/bmp32x32.gif b/icon/filext32x32/bmp32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/bmp32x32.gif differ diff --git a/icon/filext32x32/bz232x32.gif b/icon/filext32x32/bz232x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/bz232x32.gif differ diff --git a/icon/filext32x32/c32x32.gif b/icon/filext32x32/c32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/c32x32.gif differ diff --git a/icon/filext32x32/cc32x32.gif b/icon/filext32x32/cc32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/cc32x32.gif differ diff --git a/icon/filext32x32/cdr32x32.gif b/icon/filext32x32/cdr32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/cdr32x32.gif differ diff --git a/icon/filext32x32/com32x32.gif b/icon/filext32x32/com32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/com32x32.gif differ diff --git a/icon/filext32x32/cpp32x32.gif b/icon/filext32x32/cpp32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/cpp32x32.gif differ diff --git a/icon/filext32x32/css32x32.gif b/icon/filext32x32/css32x32.gif new file mode 100644 index 00000000..70d37581 Binary files /dev/null and b/icon/filext32x32/css32x32.gif differ diff --git a/icon/filext32x32/csv32x32.gif b/icon/filext32x32/csv32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/csv32x32.gif differ diff --git a/icon/filext32x32/dmg32x32.gif b/icon/filext32x32/dmg32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/dmg32x32.gif differ diff --git a/icon/filext32x32/doc32x32.gif b/icon/filext32x32/doc32x32.gif new file mode 100644 index 00000000..62c88dc6 Binary files /dev/null and b/icon/filext32x32/doc32x32.gif differ diff --git a/icon/filext32x32/docx32x32.gif b/icon/filext32x32/docx32x32.gif new file mode 100644 index 00000000..62c88dc6 Binary files /dev/null and b/icon/filext32x32/docx32x32.gif differ diff --git a/icon/filext32x32/dotm32x32.gif b/icon/filext32x32/dotm32x32.gif new file mode 100644 index 00000000..62c88dc6 Binary files /dev/null and b/icon/filext32x32/dotm32x32.gif differ diff --git a/icon/filext32x32/dwd32x32.gif b/icon/filext32x32/dwd32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/dwd32x32.gif differ diff --git a/icon/filext32x32/eps32x32.gif b/icon/filext32x32/eps32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/eps32x32.gif differ diff --git a/icon/filext32x32/exe32x32.gif b/icon/filext32x32/exe32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/exe32x32.gif differ diff --git a/icon/filext32x32/fdf32x32.gif b/icon/filext32x32/fdf32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/fdf32x32.gif differ diff --git a/icon/filext32x32/flv32x32.gif b/icon/filext32x32/flv32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/flv32x32.gif differ diff --git a/icon/filext32x32/gif32x32.gif b/icon/filext32x32/gif32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/gif32x32.gif differ diff --git a/icon/filext32x32/gz32x32.gif b/icon/filext32x32/gz32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/gz32x32.gif differ diff --git a/icon/filext32x32/h32x32.gif b/icon/filext32x32/h32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/h32x32.gif differ diff --git a/icon/filext32x32/hex32x32.gif b/icon/filext32x32/hex32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/hex32x32.gif differ diff --git a/icon/filext32x32/htm32x32.gif b/icon/filext32x32/htm32x32.gif new file mode 100644 index 00000000..93311c93 Binary files /dev/null and b/icon/filext32x32/htm32x32.gif differ diff --git a/icon/filext32x32/html32x32.gif b/icon/filext32x32/html32x32.gif new file mode 100644 index 00000000..93311c93 Binary files /dev/null and b/icon/filext32x32/html32x32.gif differ diff --git a/icon/filext32x32/img32x32.gif b/icon/filext32x32/img32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/img32x32.gif differ diff --git a/icon/filext32x32/java32x32.gif b/icon/filext32x32/java32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/java32x32.gif differ diff --git a/icon/filext32x32/jpeg32x32.gif b/icon/filext32x32/jpeg32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/jpeg32x32.gif differ diff --git a/icon/filext32x32/jpg32x32.gif b/icon/filext32x32/jpg32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/jpg32x32.gif differ diff --git a/icon/filext32x32/latex32x32.gif b/icon/filext32x32/latex32x32.gif new file mode 100644 index 00000000..567c9ecf Binary files /dev/null and b/icon/filext32x32/latex32x32.gif differ diff --git a/icon/filext32x32/m32x32.gif b/icon/filext32x32/m32x32.gif new file mode 100644 index 00000000..e817ea17 Binary files /dev/null and b/icon/filext32x32/m32x32.gif differ diff --git a/icon/filext32x32/mas32x32.gif b/icon/filext32x32/mas32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/mas32x32.gif differ diff --git a/icon/filext32x32/mdb32x32.gif b/icon/filext32x32/mdb32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/mdb32x32.gif differ diff --git a/icon/filext32x32/mht32x32.gif b/icon/filext32x32/mht32x32.gif new file mode 100644 index 00000000..93311c93 Binary files /dev/null and b/icon/filext32x32/mht32x32.gif differ diff --git a/icon/filext32x32/mhtml32x32.gif b/icon/filext32x32/mhtml32x32.gif new file mode 100644 index 00000000..93311c93 Binary files /dev/null and b/icon/filext32x32/mhtml32x32.gif differ diff --git a/icon/filext32x32/mid32x32.gif b/icon/filext32x32/mid32x32.gif new file mode 100644 index 00000000..32a1878f Binary files /dev/null and b/icon/filext32x32/mid32x32.gif differ diff --git a/icon/filext32x32/mov32x32.gif b/icon/filext32x32/mov32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/mov32x32.gif differ diff --git a/icon/filext32x32/mp332x32.gif b/icon/filext32x32/mp332x32.gif new file mode 100644 index 00000000..32a1878f Binary files /dev/null and b/icon/filext32x32/mp332x32.gif differ diff --git a/icon/filext32x32/mp432x32.gif b/icon/filext32x32/mp432x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/mp432x32.gif differ diff --git a/icon/filext32x32/mpeg32x32.gif b/icon/filext32x32/mpeg32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/mpeg32x32.gif differ diff --git a/icon/filext32x32/mpg32x32.gif b/icon/filext32x32/mpg32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/mpg32x32.gif differ diff --git a/icon/filext32x32/mpp32x32.gif b/icon/filext32x32/mpp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/mpp32x32.gif differ diff --git a/icon/filext32x32/mus32x32.gif b/icon/filext32x32/mus32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/mus32x32.gif differ diff --git a/icon/filext32x32/nb32x32.gif b/icon/filext32x32/nb32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/nb32x32.gif differ diff --git a/icon/filext32x32/nue32x32.gif b/icon/filext32x32/nue32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/nue32x32.gif differ diff --git a/icon/filext32x32/odb32x32.gif b/icon/filext32x32/odb32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/odb32x32.gif differ diff --git a/icon/filext32x32/odc32x32.gif b/icon/filext32x32/odc32x32.gif new file mode 100644 index 00000000..0bd5c731 Binary files /dev/null and b/icon/filext32x32/odc32x32.gif differ diff --git a/icon/filext32x32/odf32x32.gif b/icon/filext32x32/odf32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/odf32x32.gif differ diff --git a/icon/filext32x32/odg32x32.gif b/icon/filext32x32/odg32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/odg32x32.gif differ diff --git a/icon/filext32x32/odi32x32.gif b/icon/filext32x32/odi32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/odi32x32.gif differ diff --git a/icon/filext32x32/odm32x32.gif b/icon/filext32x32/odm32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/odm32x32.gif differ diff --git a/icon/filext32x32/odp32x32.gif b/icon/filext32x32/odp32x32.gif new file mode 100644 index 00000000..abe807ea Binary files /dev/null and b/icon/filext32x32/odp32x32.gif differ diff --git a/icon/filext32x32/ods32x32.gif b/icon/filext32x32/ods32x32.gif new file mode 100644 index 00000000..0bd5c731 Binary files /dev/null and b/icon/filext32x32/ods32x32.gif differ diff --git a/icon/filext32x32/odt32x32.gif b/icon/filext32x32/odt32x32.gif new file mode 100644 index 00000000..62c88dc6 Binary files /dev/null and b/icon/filext32x32/odt32x32.gif differ diff --git a/icon/filext32x32/odt32x3w2.gif b/icon/filext32x32/odt32x3w2.gif new file mode 100644 index 00000000..ad0f41c4 Binary files /dev/null and b/icon/filext32x32/odt32x3w2.gif differ diff --git a/icon/filext32x32/otg32x32.gif b/icon/filext32x32/otg32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/otg32x32.gif differ diff --git a/icon/filext32x32/otp32x32.gif b/icon/filext32x32/otp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/otp32x32.gif differ diff --git a/icon/filext32x32/ots32x32.gif b/icon/filext32x32/ots32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/ots32x32.gif differ diff --git a/icon/filext32x32/ott32x32.gif b/icon/filext32x32/ott32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/ott32x32.gif differ diff --git a/icon/filext32x32/pas32x32.gif b/icon/filext32x32/pas32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/pas32x32.gif differ diff --git a/icon/filext32x32/pdf32x32.gif b/icon/filext32x32/pdf32x32.gif new file mode 100644 index 00000000..a5bf0679 Binary files /dev/null and b/icon/filext32x32/pdf32x32.gif differ diff --git a/icon/filext32x32/pl32x32.gif b/icon/filext32x32/pl32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/pl32x32.gif differ diff --git a/icon/filext32x32/png32x32.gif b/icon/filext32x32/png32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/png32x32.gif differ diff --git a/icon/filext32x32/pps32x32.gif b/icon/filext32x32/pps32x32.gif new file mode 100644 index 00000000..abe807ea Binary files /dev/null and b/icon/filext32x32/pps32x32.gif differ diff --git a/icon/filext32x32/ppsx32x32.gif b/icon/filext32x32/ppsx32x32.gif new file mode 100644 index 00000000..abe807ea Binary files /dev/null and b/icon/filext32x32/ppsx32x32.gif differ diff --git a/icon/filext32x32/ppt32X32.gif b/icon/filext32x32/ppt32X32.gif new file mode 100644 index 00000000..38d0a24b Binary files /dev/null and b/icon/filext32x32/ppt32X32.gif differ diff --git a/icon/filext32x32/ppt32x32.gif b/icon/filext32x32/ppt32x32.gif new file mode 100644 index 00000000..6cc3c9b5 Binary files /dev/null and b/icon/filext32x32/ppt32x32.gif differ diff --git a/icon/filext32x32/pptx32x32.gif b/icon/filext32x32/pptx32x32.gif new file mode 100644 index 00000000..abe807ea Binary files /dev/null and b/icon/filext32x32/pptx32x32.gif differ diff --git a/icon/filext32x32/ps32x32.gif b/icon/filext32x32/ps32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/ps32x32.gif differ diff --git a/icon/filext32x32/pspbrwse.jbf b/icon/filext32x32/pspbrwse.jbf new file mode 100644 index 00000000..a39d1e5d Binary files /dev/null and b/icon/filext32x32/pspbrwse.jbf differ diff --git a/icon/filext32x32/pss32x32.gif b/icon/filext32x32/pss32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/pss32x32.gif differ diff --git a/icon/filext32x32/py32x32.gif b/icon/filext32x32/py32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/py32x32.gif differ diff --git a/icon/filext32x32/qt32x32.gif b/icon/filext32x32/qt32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/qt32x32.gif differ diff --git a/icon/filext32x32/r32x32.gif b/icon/filext32x32/r32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/r32x32.gif differ diff --git a/icon/filext32x32/ram32x32.gif b/icon/filext32x32/ram32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/ram32x32.gif differ diff --git a/icon/filext32x32/rar32x32.gif b/icon/filext32x32/rar32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/rar32x32.gif differ diff --git a/icon/filext32x32/raw32x32.gif b/icon/filext32x32/raw32x32.gif new file mode 100644 index 00000000..ef2cbb86 Binary files /dev/null and b/icon/filext32x32/raw32x32.gif differ diff --git a/icon/filext32x32/rdata32x32.gif b/icon/filext32x32/rdata32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/rdata32x32.gif differ diff --git a/icon/filext32x32/rm32x32.gif b/icon/filext32x32/rm32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/rm32x32.gif differ diff --git a/icon/filext32x32/rp32x32.gif b/icon/filext32x32/rp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/rp32x32.gif differ diff --git a/icon/filext32x32/rtf32x32.gif b/icon/filext32x32/rtf32x32.gif new file mode 100644 index 00000000..62c88dc6 Binary files /dev/null and b/icon/filext32x32/rtf32x32.gif differ diff --git a/icon/filext32x32/s32x32.gif b/icon/filext32x32/s32x32.gif new file mode 100644 index 00000000..61b44396 Binary files /dev/null and b/icon/filext32x32/s32x32.gif differ diff --git a/icon/filext32x32/sav32x32.gif b/icon/filext32x32/sav32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/sav32x32.gif differ diff --git a/icon/filext32x32/sbs32x32.gif b/icon/filext32x32/sbs32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/sbs32x32.gif differ diff --git a/icon/filext32x32/sf332x32.gif b/icon/filext32x32/sf332x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/sf332x32.gif differ diff --git a/icon/filext32x32/sgp32x32.gif b/icon/filext32x32/sgp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/sgp32x32.gif differ diff --git a/icon/filext32x32/spo32x32.gif b/icon/filext32x32/spo32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/spo32x32.gif differ diff --git a/icon/filext32x32/spp32x32.gif b/icon/filext32x32/spp32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/spp32x32.gif differ diff --git a/icon/filext32x32/sps32x32.gif b/icon/filext32x32/sps32x32.gif new file mode 100644 index 00000000..7444e22c Binary files /dev/null and b/icon/filext32x32/sps32x32.gif differ diff --git a/icon/filext32x32/swf32x32.gif b/icon/filext32x32/swf32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/swf32x32.gif differ diff --git a/icon/filext32x32/tar32x32.gif b/icon/filext32x32/tar32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/tar32x32.gif differ diff --git a/icon/filext32x32/tex32x32.gif b/icon/filext32x32/tex32x32.gif new file mode 100644 index 00000000..567c9ecf Binary files /dev/null and b/icon/filext32x32/tex32x32.gif differ diff --git a/icon/filext32x32/tgz32x32.gif b/icon/filext32x32/tgz32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/tgz32x32.gif differ diff --git a/icon/filext32x32/tif32x32.gif b/icon/filext32x32/tif32x32.gif new file mode 100644 index 00000000..a81112f6 Binary files /dev/null and b/icon/filext32x32/tif32x32.gif differ diff --git a/icon/filext32x32/txt32x32.gif b/icon/filext32x32/txt32x32.gif new file mode 100644 index 00000000..db41065e Binary files /dev/null and b/icon/filext32x32/txt32x32.gif differ diff --git a/icon/filext32x32/url32x32.gif b/icon/filext32x32/url32x32.gif new file mode 100644 index 00000000..76ce4885 Binary files /dev/null and b/icon/filext32x32/url32x32.gif differ diff --git a/icon/filext32x32/voc32x32.gif b/icon/filext32x32/voc32x32.gif new file mode 100644 index 00000000..32a1878f Binary files /dev/null and b/icon/filext32x32/voc32x32.gif differ diff --git a/icon/filext32x32/void32x32.gif b/icon/filext32x32/void32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/void32x32.gif differ diff --git a/icon/filext32x32/vp32x32.gif b/icon/filext32x32/vp32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/vp32x32.gif differ diff --git a/icon/filext32x32/wav32x32.gif b/icon/filext32x32/wav32x32.gif new file mode 100644 index 00000000..32a1878f Binary files /dev/null and b/icon/filext32x32/wav32x32.gif differ diff --git a/icon/filext32x32/wma32x32.gif b/icon/filext32x32/wma32x32.gif new file mode 100644 index 00000000..32a1878f Binary files /dev/null and b/icon/filext32x32/wma32x32.gif differ diff --git a/icon/filext32x32/wmv32x32.gif b/icon/filext32x32/wmv32x32.gif new file mode 100644 index 00000000..7737d2d8 Binary files /dev/null and b/icon/filext32x32/wmv32x32.gif differ diff --git a/icon/filext32x32/wxm32x32.gif b/icon/filext32x32/wxm32x32.gif new file mode 100644 index 00000000..e817ea17 Binary files /dev/null and b/icon/filext32x32/wxm32x32.gif differ diff --git a/icon/filext32x32/wxmx32x32.gif b/icon/filext32x32/wxmx32x32.gif new file mode 100644 index 00000000..e817ea17 Binary files /dev/null and b/icon/filext32x32/wxmx32x32.gif differ diff --git a/icon/filext32x32/xls32x32.gif b/icon/filext32x32/xls32x32.gif new file mode 100644 index 00000000..0bd5c731 Binary files /dev/null and b/icon/filext32x32/xls32x32.gif differ diff --git a/icon/filext32x32/xlsx32x32.gif b/icon/filext32x32/xlsx32x32.gif new file mode 100644 index 00000000..0bd5c731 Binary files /dev/null and b/icon/filext32x32/xlsx32x32.gif differ diff --git a/icon/filext32x32/xxx32x32.gif b/icon/filext32x32/xxx32x32.gif new file mode 100644 index 00000000..83fae15a Binary files /dev/null and b/icon/filext32x32/xxx32x32.gif differ diff --git a/icon/filext32x32/zip32x32 - copia.gif b/icon/filext32x32/zip32x32 - copia.gif new file mode 100644 index 00000000..2e4e9842 Binary files /dev/null and b/icon/filext32x32/zip32x32 - copia.gif differ diff --git a/icon/filext32x32/zip32x32.gif b/icon/filext32x32/zip32x32.gif new file mode 100644 index 00000000..f77f712c Binary files /dev/null and b/icon/filext32x32/zip32x32.gif differ diff --git a/icon/fizda12x12.png b/icon/fizda12x12.png new file mode 100644 index 00000000..01f93a80 Binary files /dev/null and b/icon/fizda12x12.png differ diff --git a/icon/fizda_off12x12.png b/icon/fizda_off12x12.png new file mode 100644 index 00000000..7e0c9fe6 Binary files /dev/null and b/icon/fizda_off12x12.png differ diff --git a/icon/folder-closed-plus16x16.gif b/icon/folder-closed-plus16x16.gif new file mode 100644 index 00000000..1505fb75 Binary files /dev/null and b/icon/folder-closed-plus16x16.gif differ diff --git a/icon/folder-closed16x16.gif b/icon/folder-closed16x16.gif new file mode 100644 index 00000000..6063be7a Binary files /dev/null and b/icon/folder-closed16x16.gif differ diff --git a/icon/folder-no12x12.gif b/icon/folder-no12x12.gif new file mode 100644 index 00000000..f32f046a Binary files /dev/null and b/icon/folder-no12x12.gif differ diff --git a/icon/folder-no16x16.gif b/icon/folder-no16x16.gif new file mode 100644 index 00000000..30679bdf Binary files /dev/null and b/icon/folder-no16x16.gif differ diff --git a/icon/folder-no_off16x16.gif b/icon/folder-no_off16x16.gif new file mode 100644 index 00000000..2999f2d4 Binary files /dev/null and b/icon/folder-no_off16x16.gif differ diff --git a/icon/folder-open-plus16x16.gif b/icon/folder-open-plus16x16.gif new file mode 100644 index 00000000..825bdd3a Binary files /dev/null and b/icon/folder-open-plus16x16.gif differ diff --git a/icon/folder-open16x16.gif b/icon/folder-open16x16.gif new file mode 100644 index 00000000..c3c7070f Binary files /dev/null and b/icon/folder-open16x16.gif differ diff --git a/icon/folder-yes12x12.gif b/icon/folder-yes12x12.gif new file mode 100644 index 00000000..b4abc9ba Binary files /dev/null and b/icon/folder-yes12x12.gif differ diff --git a/icon/folder-yes16x16.gif b/icon/folder-yes16x16.gif new file mode 100644 index 00000000..25ad41f5 Binary files /dev/null and b/icon/folder-yes16x16.gif differ diff --git a/icon/folder_closed12x16.gif b/icon/folder_closed12x16.gif new file mode 100644 index 00000000..8cceed1a Binary files /dev/null and b/icon/folder_closed12x16.gif differ diff --git a/icon/folder_closed_plus12x16.gif b/icon/folder_closed_plus12x16.gif new file mode 100644 index 00000000..f98a1e97 Binary files /dev/null and b/icon/folder_closed_plus12x16.gif differ diff --git a/icon/folder_open12x16.gif b/icon/folder_open12x16.gif new file mode 100644 index 00000000..c362125a Binary files /dev/null and b/icon/folder_open12x16.gif differ diff --git a/icon/folder_open_plus12x16.gif b/icon/folder_open_plus12x16.gif new file mode 100644 index 00000000..4deb5934 Binary files /dev/null and b/icon/folder_open_plus12x16.gif differ diff --git a/icon/folderno12x12.gif b/icon/folderno12x12.gif new file mode 100644 index 00000000..956877b9 Binary files /dev/null and b/icon/folderno12x12.gif differ diff --git a/icon/folderok12x12.gif b/icon/folderok12x12.gif new file mode 100644 index 00000000..0e243bf4 Binary files /dev/null and b/icon/folderok12x12.gif differ diff --git a/icon/forum16x16.gif b/icon/forum16x16.gif new file mode 100644 index 00000000..0d0d1b7f Binary files /dev/null and b/icon/forum16x16.gif differ diff --git a/icon/fullscreen16x16.gif b/icon/fullscreen16x16.gif new file mode 100644 index 00000000..5869d0fb Binary files /dev/null and b/icon/fullscreen16x16.gif differ diff --git a/icon/googlescholar16x16.gif b/icon/googlescholar16x16.gif new file mode 100644 index 00000000..4e8aee8d Binary files /dev/null and b/icon/googlescholar16x16.gif differ diff --git a/icon/googlescholar32x32.gif b/icon/googlescholar32x32.gif new file mode 100644 index 00000000..82f78f06 Binary files /dev/null and b/icon/googlescholar32x32.gif differ diff --git a/icon/googlescholar64x64.gif b/icon/googlescholar64x64.gif new file mode 100644 index 00000000..225e6fa2 Binary files /dev/null and b/icon/googlescholar64x64.gif differ diff --git a/icon/grades32x32.gif b/icon/grades32x32.gif new file mode 100644 index 00000000..61d73c1f Binary files /dev/null and b/icon/grades32x32.gif differ diff --git a/icon/green1x36.gif b/icon/green1x36.gif new file mode 100644 index 00000000..ada9c6ab Binary files /dev/null and b/icon/green1x36.gif differ diff --git a/icon/groups16x16.gif b/icon/groups16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/groups16x16.gif differ diff --git a/icon/grouptypes16x16.gif b/icon/grouptypes16x16.gif new file mode 100644 index 00000000..d8939560 Binary files /dev/null and b/icon/grouptypes16x16.gif differ diff --git a/icon/heart16x16.gif b/icon/heart16x16.gif new file mode 100644 index 00000000..c88abb23 Binary files /dev/null and b/icon/heart16x16.gif differ diff --git a/icon/hidden_off12x12.gif b/icon/hidden_off12x12.gif new file mode 100644 index 00000000..1e89ed63 Binary files /dev/null and b/icon/hidden_off12x12.gif differ diff --git a/icon/hidden_off16x16.gif b/icon/hidden_off16x16.gif new file mode 100644 index 00000000..ab48fa0c Binary files /dev/null and b/icon/hidden_off16x16.gif differ diff --git a/icon/hidden_on12x12.gif b/icon/hidden_on12x12.gif new file mode 100644 index 00000000..a2ae8765 Binary files /dev/null and b/icon/hidden_on12x12.gif differ diff --git a/icon/hidden_on16x16.gif b/icon/hidden_on16x16.gif new file mode 100644 index 00000000..d19fec1d Binary files /dev/null and b/icon/hidden_on16x16.gif differ diff --git a/icon/hierarchy16x16.gif b/icon/hierarchy16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/hierarchy16x16.gif differ diff --git a/icon/house16x16.gif b/icon/house16x16.gif new file mode 100644 index 00000000..c9c96068 Binary files /dev/null and b/icon/house16x16.gif differ diff --git a/icon/iconset/awesome/128x128/cake128x128.gif b/icon/iconset/awesome/128x128/cake128x128.gif new file mode 100644 index 00000000..0dcae15e Binary files /dev/null and b/icon/iconset/awesome/128x128/cake128x128.gif differ diff --git a/icon/iconset/awesome/action16x16/addremoveusers16x16.gif b/icon/iconset/awesome/action16x16/addremoveusers16x16.gif new file mode 100644 index 00000000..141be84f Binary files /dev/null and b/icon/iconset/awesome/action16x16/addremoveusers16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/adduser16x16.gif b/icon/iconset/awesome/action16x16/adduser16x16.gif new file mode 100644 index 00000000..141be84f Binary files /dev/null and b/icon/iconset/awesome/action16x16/adduser16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/announce16x16.gif b/icon/iconset/awesome/action16x16/announce16x16.gif new file mode 100644 index 00000000..80912950 Binary files /dev/null and b/icon/iconset/awesome/action16x16/announce16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/arroba16x16.gif b/icon/iconset/awesome/action16x16/arroba16x16.gif new file mode 100644 index 00000000..1da179fc Binary files /dev/null and b/icon/iconset/awesome/action16x16/arroba16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/ass16x16.gif b/icon/iconset/awesome/action16x16/ass16x16.gif new file mode 100644 index 00000000..59386beb Binary files /dev/null and b/icon/iconset/awesome/action16x16/ass16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/bell16x16.gif b/icon/iconset/awesome/action16x16/bell16x16.gif new file mode 100644 index 00000000..82a17879 Binary files /dev/null and b/icon/iconset/awesome/action16x16/bell16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/blocks16x16.gif b/icon/iconset/awesome/action16x16/blocks16x16.gif new file mode 100644 index 00000000..a5144017 Binary files /dev/null and b/icon/iconset/awesome/action16x16/blocks16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/books16x16.gif b/icon/iconset/awesome/action16x16/books16x16.gif new file mode 100644 index 00000000..42f3c02e Binary files /dev/null and b/icon/iconset/awesome/action16x16/books16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/card16x16.gif b/icon/iconset/awesome/action16x16/card16x16.gif new file mode 100644 index 00000000..f1522ba1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/card16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/cardtch16x16.gif b/icon/iconset/awesome/action16x16/cardtch16x16.gif new file mode 100644 index 00000000..f1522ba1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/cardtch16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/chat16x16.gif b/icon/iconset/awesome/action16x16/chat16x16.gif new file mode 100644 index 00000000..a1ef815f Binary files /dev/null and b/icon/iconset/awesome/action16x16/chat16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/classphoto16x16.gif b/icon/iconset/awesome/action16x16/classphoto16x16.gif new file mode 100644 index 00000000..ade36674 Binary files /dev/null and b/icon/iconset/awesome/action16x16/classphoto16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/classphototch16x16.gif b/icon/iconset/awesome/action16x16/classphototch16x16.gif new file mode 100644 index 00000000..095e2895 Binary files /dev/null and b/icon/iconset/awesome/action16x16/classphototch16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/clock16x16.gif b/icon/iconset/awesome/action16x16/clock16x16.gif new file mode 100644 index 00000000..8a146087 Binary files /dev/null and b/icon/iconset/awesome/action16x16/clock16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/config16x16.gif b/icon/iconset/awesome/action16x16/config16x16.gif new file mode 100644 index 00000000..450b23d1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/config16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/configs16x16.gif b/icon/iconset/awesome/action16x16/configs16x16.gif new file mode 100644 index 00000000..e0ef3385 Binary files /dev/null and b/icon/iconset/awesome/action16x16/configs16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/coursesdegree16x16.gif b/icon/iconset/awesome/action16x16/coursesdegree16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/iconset/awesome/action16x16/coursesdegree16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/crs16x16.gif b/icon/iconset/awesome/action16x16/crs16x16.gif new file mode 100644 index 00000000..a0ec9e79 Binary files /dev/null and b/icon/iconset/awesome/action16x16/crs16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/ctr16x16.gif b/icon/iconset/awesome/action16x16/ctr16x16.gif new file mode 100644 index 00000000..1010374a Binary files /dev/null and b/icon/iconset/awesome/action16x16/ctr16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/cty16x16.gif b/icon/iconset/awesome/action16x16/cty16x16.gif new file mode 100644 index 00000000..c5950aca Binary files /dev/null and b/icon/iconset/awesome/action16x16/cty16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/date16x16.gif b/icon/iconset/awesome/action16x16/date16x16.gif new file mode 100644 index 00000000..a9824a0e Binary files /dev/null and b/icon/iconset/awesome/action16x16/date16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/deg16x16.gif b/icon/iconset/awesome/action16x16/deg16x16.gif new file mode 100644 index 00000000..1e0eb6ff Binary files /dev/null and b/icon/iconset/awesome/action16x16/deg16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/deg_alt16x16.gif b/icon/iconset/awesome/action16x16/deg_alt16x16.gif new file mode 100644 index 00000000..a6274b1e Binary files /dev/null and b/icon/iconset/awesome/action16x16/deg_alt16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/desk16x16.gif b/icon/iconset/awesome/action16x16/desk16x16.gif new file mode 100644 index 00000000..826c5179 Binary files /dev/null and b/icon/iconset/awesome/action16x16/desk16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/download16x16.gif b/icon/iconset/awesome/action16x16/download16x16.gif new file mode 100644 index 00000000..0c0e4f43 Binary files /dev/null and b/icon/iconset/awesome/action16x16/download16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/earth16x16.gif b/icon/iconset/awesome/action16x16/earth16x16.gif new file mode 100644 index 00000000..c5950aca Binary files /dev/null and b/icon/iconset/awesome/action16x16/earth16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/editcard16x16.gif b/icon/iconset/awesome/action16x16/editcard16x16.gif new file mode 100644 index 00000000..f1522ba1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/editcard16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/editfolderuser16x16.gif b/icon/iconset/awesome/action16x16/editfolderuser16x16.gif new file mode 100644 index 00000000..a0ec9e79 Binary files /dev/null and b/icon/iconset/awesome/action16x16/editfolderuser16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/editnewmsg16x16.gif b/icon/iconset/awesome/action16x16/editnewmsg16x16.gif new file mode 100644 index 00000000..d60b3fc8 Binary files /dev/null and b/icon/iconset/awesome/action16x16/editnewmsg16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/edittutor16x16.gif b/icon/iconset/awesome/action16x16/edittutor16x16.gif new file mode 100644 index 00000000..8a146087 Binary files /dev/null and b/icon/iconset/awesome/action16x16/edittutor16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/email16x16.gif b/icon/iconset/awesome/action16x16/email16x16.gif new file mode 100644 index 00000000..09840aab Binary files /dev/null and b/icon/iconset/awesome/action16x16/email16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/enr16x16.gif b/icon/iconset/awesome/action16x16/enr16x16.gif new file mode 100644 index 00000000..141be84f Binary files /dev/null and b/icon/iconset/awesome/action16x16/enr16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/enrollmentrequest16x16.gif b/icon/iconset/awesome/action16x16/enrollmentrequest16x16.gif new file mode 100644 index 00000000..bcfdc5a5 Binary files /dev/null and b/icon/iconset/awesome/action16x16/enrollmentrequest16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/faq16x16.gif b/icon/iconset/awesome/action16x16/faq16x16.gif new file mode 100644 index 00000000..be18e315 Binary files /dev/null and b/icon/iconset/awesome/action16x16/faq16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/folder16x16.gif b/icon/iconset/awesome/action16x16/folder16x16.gif new file mode 100644 index 00000000..a0ec9e79 Binary files /dev/null and b/icon/iconset/awesome/action16x16/folder16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/folderusers16x16.gif b/icon/iconset/awesome/action16x16/folderusers16x16.gif new file mode 100644 index 00000000..a0ec9e79 Binary files /dev/null and b/icon/iconset/awesome/action16x16/folderusers16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/forum16x16.gif b/icon/iconset/awesome/action16x16/forum16x16.gif new file mode 100644 index 00000000..a5fc21e4 Binary files /dev/null and b/icon/iconset/awesome/action16x16/forum16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/grades16x16.gif b/icon/iconset/awesome/action16x16/grades16x16.gif new file mode 100644 index 00000000..a3675298 Binary files /dev/null and b/icon/iconset/awesome/action16x16/grades16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/groups16x16.gif b/icon/iconset/awesome/action16x16/groups16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/iconset/awesome/action16x16/groups16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/grouptypes16x16.gif b/icon/iconset/awesome/action16x16/grouptypes16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/iconset/awesome/action16x16/grouptypes16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/guide16x16.gif b/icon/iconset/awesome/action16x16/guide16x16.gif new file mode 100644 index 00000000..c4115f2f Binary files /dev/null and b/icon/iconset/awesome/action16x16/guide16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/heart16x16.gif b/icon/iconset/awesome/action16x16/heart16x16.gif new file mode 100644 index 00000000..61fad95c Binary files /dev/null and b/icon/iconset/awesome/action16x16/heart16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/house16x16.gif b/icon/iconset/awesome/action16x16/house16x16.gif new file mode 100644 index 00000000..1010374a Binary files /dev/null and b/icon/iconset/awesome/action16x16/house16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/houseteachers16x16.gif b/icon/iconset/awesome/action16x16/houseteachers16x16.gif new file mode 100644 index 00000000..5092ef1b Binary files /dev/null and b/icon/iconset/awesome/action16x16/houseteachers16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/info16x16.gif b/icon/iconset/awesome/action16x16/info16x16.gif new file mode 100644 index 00000000..dce60aea Binary files /dev/null and b/icon/iconset/awesome/action16x16/info16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/infogrades16x16.gif b/icon/iconset/awesome/action16x16/infogrades16x16.gif new file mode 100644 index 00000000..dce60aea Binary files /dev/null and b/icon/iconset/awesome/action16x16/infogrades16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/ins16x16.gif b/icon/iconset/awesome/action16x16/ins16x16.gif new file mode 100644 index 00000000..fbdb163c Binary files /dev/null and b/icon/iconset/awesome/action16x16/ins16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/institution16x16.gif b/icon/iconset/awesome/action16x16/institution16x16.gif new file mode 100644 index 00000000..fbdb163c Binary files /dev/null and b/icon/iconset/awesome/action16x16/institution16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/key16x16.gif b/icon/iconset/awesome/action16x16/key16x16.gif new file mode 100644 index 00000000..91ca7cdc Binary files /dev/null and b/icon/iconset/awesome/action16x16/key16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/keyuser16x16.gif b/icon/iconset/awesome/action16x16/keyuser16x16.gif new file mode 100644 index 00000000..7f44e7cb Binary files /dev/null and b/icon/iconset/awesome/action16x16/keyuser16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/lab16x16.gif b/icon/iconset/awesome/action16x16/lab16x16.gif new file mode 100644 index 00000000..60a9b69d Binary files /dev/null and b/icon/iconset/awesome/action16x16/lab16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/lightning16x16.gif b/icon/iconset/awesome/action16x16/lightning16x16.gif new file mode 100644 index 00000000..9b1452d7 Binary files /dev/null and b/icon/iconset/awesome/action16x16/lightning16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/link16x16.gif b/icon/iconset/awesome/action16x16/link16x16.gif new file mode 100644 index 00000000..43202dcd Binary files /dev/null and b/icon/iconset/awesome/action16x16/link16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/listtch16x16.gif b/icon/iconset/awesome/action16x16/listtch16x16.gif new file mode 100644 index 00000000..095e2895 Binary files /dev/null and b/icon/iconset/awesome/action16x16/listtch16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/msg16x16.gif b/icon/iconset/awesome/action16x16/msg16x16.gif new file mode 100644 index 00000000..09840aab Binary files /dev/null and b/icon/iconset/awesome/action16x16/msg16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/mygroups16x16.gif b/icon/iconset/awesome/action16x16/mygroups16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/iconset/awesome/action16x16/mygroups16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/note16x16.gif b/icon/iconset/awesome/action16x16/note16x16.gif new file mode 100644 index 00000000..80912950 Binary files /dev/null and b/icon/iconset/awesome/action16x16/note16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/pendrive16x16.gif b/icon/iconset/awesome/action16x16/pendrive16x16.gif new file mode 100644 index 00000000..afc4ee49 Binary files /dev/null and b/icon/iconset/awesome/action16x16/pendrive16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/per16x16.gif b/icon/iconset/awesome/action16x16/per16x16.gif new file mode 100644 index 00000000..bc5e62ff Binary files /dev/null and b/icon/iconset/awesome/action16x16/per16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/photo16x16.gif b/icon/iconset/awesome/action16x16/photo16x16.gif new file mode 100644 index 00000000..ed26d3bf Binary files /dev/null and b/icon/iconset/awesome/action16x16/photo16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/picture16x16.gif b/icon/iconset/awesome/action16x16/picture16x16.gif new file mode 100644 index 00000000..4f3945e1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/picture16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/pie16x16.gif b/icon/iconset/awesome/action16x16/pie16x16.gif new file mode 100644 index 00000000..f7cc53f1 Binary files /dev/null and b/icon/iconset/awesome/action16x16/pie16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/presentation16x16.gif b/icon/iconset/awesome/action16x16/presentation16x16.gif new file mode 100644 index 00000000..66e6da97 Binary files /dev/null and b/icon/iconset/awesome/action16x16/presentation16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/prf16x16.gif b/icon/iconset/awesome/action16x16/prf16x16.gif new file mode 100644 index 00000000..bc5e62ff Binary files /dev/null and b/icon/iconset/awesome/action16x16/prf16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/qr16x16.gif b/icon/iconset/awesome/action16x16/qr16x16.gif new file mode 100644 index 00000000..3c82875e Binary files /dev/null and b/icon/iconset/awesome/action16x16/qr16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/recmsg16x16.gif b/icon/iconset/awesome/action16x16/recmsg16x16.gif new file mode 100644 index 00000000..f3fe742b Binary files /dev/null and b/icon/iconset/awesome/action16x16/recmsg16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/recyclelist16x16.gif b/icon/iconset/awesome/action16x16/recyclelist16x16.gif new file mode 100644 index 00000000..7a33f765 Binary files /dev/null and b/icon/iconset/awesome/action16x16/recyclelist16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/removeuser16x16.gif b/icon/iconset/awesome/action16x16/removeuser16x16.gif new file mode 100644 index 00000000..08419956 Binary files /dev/null and b/icon/iconset/awesome/action16x16/removeuser16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/removeusers16x16.gif b/icon/iconset/awesome/action16x16/removeusers16x16.gif new file mode 100644 index 00000000..08419956 Binary files /dev/null and b/icon/iconset/awesome/action16x16/removeusers16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/role16x16.gif b/icon/iconset/awesome/action16x16/role16x16.gif new file mode 100644 index 00000000..bc5e62ff Binary files /dev/null and b/icon/iconset/awesome/action16x16/role16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/rollcall16x16.gif b/icon/iconset/awesome/action16x16/rollcall16x16.gif new file mode 100644 index 00000000..59386beb Binary files /dev/null and b/icon/iconset/awesome/action16x16/rollcall16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/search16x16.gif b/icon/iconset/awesome/action16x16/search16x16.gif new file mode 100644 index 00000000..92b4d8d8 Binary files /dev/null and b/icon/iconset/awesome/action16x16/search16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/sntmsg16x16.gif b/icon/iconset/awesome/action16x16/sntmsg16x16.gif new file mode 100644 index 00000000..443e6e77 Binary files /dev/null and b/icon/iconset/awesome/action16x16/sntmsg16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/sta16x16.gif b/icon/iconset/awesome/action16x16/sta16x16.gif new file mode 100644 index 00000000..a84c4c65 Binary files /dev/null and b/icon/iconset/awesome/action16x16/sta16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/star16x16.gif b/icon/iconset/awesome/action16x16/star16x16.gif new file mode 100644 index 00000000..cabd0b5a Binary files /dev/null and b/icon/iconset/awesome/action16x16/star16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/stats16x16.gif b/icon/iconset/awesome/action16x16/stats16x16.gif new file mode 100644 index 00000000..a84c4c65 Binary files /dev/null and b/icon/iconset/awesome/action16x16/stats16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/statsuser16x16.gif b/icon/iconset/awesome/action16x16/statsuser16x16.gif new file mode 100644 index 00000000..a84c4c65 Binary files /dev/null and b/icon/iconset/awesome/action16x16/statsuser16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/stop16x16.gif b/icon/iconset/awesome/action16x16/stop16x16.gif new file mode 100644 index 00000000..d7aa5e88 Binary files /dev/null and b/icon/iconset/awesome/action16x16/stop16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/survey16x16.gif b/icon/iconset/awesome/action16x16/survey16x16.gif new file mode 100644 index 00000000..59386beb Binary files /dev/null and b/icon/iconset/awesome/action16x16/survey16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/sys16x16.gif b/icon/iconset/awesome/action16x16/sys16x16.gif new file mode 100644 index 00000000..18611d16 Binary files /dev/null and b/icon/iconset/awesome/action16x16/sys16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/tablestats16x16.gif b/icon/iconset/awesome/action16x16/tablestats16x16.gif new file mode 100644 index 00000000..36c57ec8 Binary files /dev/null and b/icon/iconset/awesome/action16x16/tablestats16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/test16x16.gif b/icon/iconset/awesome/action16x16/test16x16.gif new file mode 100644 index 00000000..59386beb Binary files /dev/null and b/icon/iconset/awesome/action16x16/test16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/testresult16x16.gif b/icon/iconset/awesome/action16x16/testresult16x16.gif new file mode 100644 index 00000000..59386beb Binary files /dev/null and b/icon/iconset/awesome/action16x16/testresult16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/tutor16x16.gif b/icon/iconset/awesome/action16x16/tutor16x16.gif new file mode 100644 index 00000000..8a146087 Binary files /dev/null and b/icon/iconset/awesome/action16x16/tutor16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/userplugged16x16.gif b/icon/iconset/awesome/action16x16/userplugged16x16.gif new file mode 100644 index 00000000..5092ef1b Binary files /dev/null and b/icon/iconset/awesome/action16x16/userplugged16x16.gif differ diff --git a/icon/iconset/awesome/action16x16/usr16x16.gif b/icon/iconset/awesome/action16x16/usr16x16.gif new file mode 100644 index 00000000..5092ef1b Binary files /dev/null and b/icon/iconset/awesome/action16x16/usr16x16.gif differ diff --git a/icon/iconset/awesome/action32x32/addremoveusers32x32.gif b/icon/iconset/awesome/action32x32/addremoveusers32x32.gif new file mode 100644 index 00000000..96a3cbd5 Binary files /dev/null and b/icon/iconset/awesome/action32x32/addremoveusers32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/adduser32x32.gif b/icon/iconset/awesome/action32x32/adduser32x32.gif new file mode 100644 index 00000000..96a3cbd5 Binary files /dev/null and b/icon/iconset/awesome/action32x32/adduser32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/announce32x32.gif b/icon/iconset/awesome/action32x32/announce32x32.gif new file mode 100644 index 00000000..5b98b8e3 Binary files /dev/null and b/icon/iconset/awesome/action32x32/announce32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/arroba32x32.gif b/icon/iconset/awesome/action32x32/arroba32x32.gif new file mode 100644 index 00000000..7c284570 Binary files /dev/null and b/icon/iconset/awesome/action32x32/arroba32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/ass32x32.gif b/icon/iconset/awesome/action32x32/ass32x32.gif new file mode 100644 index 00000000..4b59b50d Binary files /dev/null and b/icon/iconset/awesome/action32x32/ass32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/bell32x32.gif b/icon/iconset/awesome/action32x32/bell32x32.gif new file mode 100644 index 00000000..933155ef Binary files /dev/null and b/icon/iconset/awesome/action32x32/bell32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/blocks32x32.gif b/icon/iconset/awesome/action32x32/blocks32x32.gif new file mode 100644 index 00000000..e3c68a95 Binary files /dev/null and b/icon/iconset/awesome/action32x32/blocks32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/books32x32.gif b/icon/iconset/awesome/action32x32/books32x32.gif new file mode 100644 index 00000000..25ae00c3 Binary files /dev/null and b/icon/iconset/awesome/action32x32/books32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/card32x32.gif b/icon/iconset/awesome/action32x32/card32x32.gif new file mode 100644 index 00000000..fb2d8497 Binary files /dev/null and b/icon/iconset/awesome/action32x32/card32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/cardtch32x32.gif b/icon/iconset/awesome/action32x32/cardtch32x32.gif new file mode 100644 index 00000000..fb2d8497 Binary files /dev/null and b/icon/iconset/awesome/action32x32/cardtch32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/chat32x32.gif b/icon/iconset/awesome/action32x32/chat32x32.gif new file mode 100644 index 00000000..4933c918 Binary files /dev/null and b/icon/iconset/awesome/action32x32/chat32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/classphoto32x32.gif b/icon/iconset/awesome/action32x32/classphoto32x32.gif new file mode 100644 index 00000000..2296dba8 Binary files /dev/null and b/icon/iconset/awesome/action32x32/classphoto32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/classphototch32x32.gif b/icon/iconset/awesome/action32x32/classphototch32x32.gif new file mode 100644 index 00000000..a0dd26ff Binary files /dev/null and b/icon/iconset/awesome/action32x32/classphototch32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/clock32x32.gif b/icon/iconset/awesome/action32x32/clock32x32.gif new file mode 100644 index 00000000..33bd9a6f Binary files /dev/null and b/icon/iconset/awesome/action32x32/clock32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/config32x32.gif b/icon/iconset/awesome/action32x32/config32x32.gif new file mode 100644 index 00000000..6f1298f0 Binary files /dev/null and b/icon/iconset/awesome/action32x32/config32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/configs32x32.gif b/icon/iconset/awesome/action32x32/configs32x32.gif new file mode 100644 index 00000000..b7a7ef51 Binary files /dev/null and b/icon/iconset/awesome/action32x32/configs32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/coursesdegree32x32.gif b/icon/iconset/awesome/action32x32/coursesdegree32x32.gif new file mode 100644 index 00000000..da58b5a9 Binary files /dev/null and b/icon/iconset/awesome/action32x32/coursesdegree32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/crs32x32.gif b/icon/iconset/awesome/action32x32/crs32x32.gif new file mode 100644 index 00000000..e0ba24e4 Binary files /dev/null and b/icon/iconset/awesome/action32x32/crs32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/ctr32x32.gif b/icon/iconset/awesome/action32x32/ctr32x32.gif new file mode 100644 index 00000000..c1b8918e Binary files /dev/null and b/icon/iconset/awesome/action32x32/ctr32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/cty32x32.gif b/icon/iconset/awesome/action32x32/cty32x32.gif new file mode 100644 index 00000000..0fc7b3d3 Binary files /dev/null and b/icon/iconset/awesome/action32x32/cty32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/date32x32.gif b/icon/iconset/awesome/action32x32/date32x32.gif new file mode 100644 index 00000000..50adaaea Binary files /dev/null and b/icon/iconset/awesome/action32x32/date32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/deg32x32.gif b/icon/iconset/awesome/action32x32/deg32x32.gif new file mode 100644 index 00000000..647cb019 Binary files /dev/null and b/icon/iconset/awesome/action32x32/deg32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/deg_alt32x32.gif b/icon/iconset/awesome/action32x32/deg_alt32x32.gif new file mode 100644 index 00000000..15beeae2 Binary files /dev/null and b/icon/iconset/awesome/action32x32/deg_alt32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/desk32x32.gif b/icon/iconset/awesome/action32x32/desk32x32.gif new file mode 100644 index 00000000..7e04d196 Binary files /dev/null and b/icon/iconset/awesome/action32x32/desk32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/download32x32.gif b/icon/iconset/awesome/action32x32/download32x32.gif new file mode 100644 index 00000000..7982e9f6 Binary files /dev/null and b/icon/iconset/awesome/action32x32/download32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/earth32x32.gif b/icon/iconset/awesome/action32x32/earth32x32.gif new file mode 100644 index 00000000..0fc7b3d3 Binary files /dev/null and b/icon/iconset/awesome/action32x32/earth32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/editcard32x32.gif b/icon/iconset/awesome/action32x32/editcard32x32.gif new file mode 100644 index 00000000..fb2d8497 Binary files /dev/null and b/icon/iconset/awesome/action32x32/editcard32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/editfolderuser32x32.gif b/icon/iconset/awesome/action32x32/editfolderuser32x32.gif new file mode 100644 index 00000000..e0ba24e4 Binary files /dev/null and b/icon/iconset/awesome/action32x32/editfolderuser32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/editnewmsg32x32.gif b/icon/iconset/awesome/action32x32/editnewmsg32x32.gif new file mode 100644 index 00000000..90a756c5 Binary files /dev/null and b/icon/iconset/awesome/action32x32/editnewmsg32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/edittutor32x32.gif b/icon/iconset/awesome/action32x32/edittutor32x32.gif new file mode 100644 index 00000000..33bd9a6f Binary files /dev/null and b/icon/iconset/awesome/action32x32/edittutor32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/email32x32.gif b/icon/iconset/awesome/action32x32/email32x32.gif new file mode 100644 index 00000000..532084f6 Binary files /dev/null and b/icon/iconset/awesome/action32x32/email32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/enr32x32.gif b/icon/iconset/awesome/action32x32/enr32x32.gif new file mode 100644 index 00000000..96a3cbd5 Binary files /dev/null and b/icon/iconset/awesome/action32x32/enr32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/enrollmentrequest32x32.gif b/icon/iconset/awesome/action32x32/enrollmentrequest32x32.gif new file mode 100644 index 00000000..bc914e44 Binary files /dev/null and b/icon/iconset/awesome/action32x32/enrollmentrequest32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/faq32x32.gif b/icon/iconset/awesome/action32x32/faq32x32.gif new file mode 100644 index 00000000..25a09eb8 Binary files /dev/null and b/icon/iconset/awesome/action32x32/faq32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/folder32x32.gif b/icon/iconset/awesome/action32x32/folder32x32.gif new file mode 100644 index 00000000..e0ba24e4 Binary files /dev/null and b/icon/iconset/awesome/action32x32/folder32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/folderusers32x32.gif b/icon/iconset/awesome/action32x32/folderusers32x32.gif new file mode 100644 index 00000000..e0ba24e4 Binary files /dev/null and b/icon/iconset/awesome/action32x32/folderusers32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/forum32x32.gif b/icon/iconset/awesome/action32x32/forum32x32.gif new file mode 100644 index 00000000..6eb1c87f Binary files /dev/null and b/icon/iconset/awesome/action32x32/forum32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/grades32x32.gif b/icon/iconset/awesome/action32x32/grades32x32.gif new file mode 100644 index 00000000..07fc2032 Binary files /dev/null and b/icon/iconset/awesome/action32x32/grades32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/groups32x32.gif b/icon/iconset/awesome/action32x32/groups32x32.gif new file mode 100644 index 00000000..da58b5a9 Binary files /dev/null and b/icon/iconset/awesome/action32x32/groups32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/grouptypes32x32.gif b/icon/iconset/awesome/action32x32/grouptypes32x32.gif new file mode 100644 index 00000000..da58b5a9 Binary files /dev/null and b/icon/iconset/awesome/action32x32/grouptypes32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/guide32x32.gif b/icon/iconset/awesome/action32x32/guide32x32.gif new file mode 100644 index 00000000..98c88b81 Binary files /dev/null and b/icon/iconset/awesome/action32x32/guide32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/heart32x32.gif b/icon/iconset/awesome/action32x32/heart32x32.gif new file mode 100644 index 00000000..d514ab26 Binary files /dev/null and b/icon/iconset/awesome/action32x32/heart32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/house32x32.gif b/icon/iconset/awesome/action32x32/house32x32.gif new file mode 100644 index 00000000..c1b8918e Binary files /dev/null and b/icon/iconset/awesome/action32x32/house32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/houseteachers32x32.gif b/icon/iconset/awesome/action32x32/houseteachers32x32.gif new file mode 100644 index 00000000..1c27c711 Binary files /dev/null and b/icon/iconset/awesome/action32x32/houseteachers32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/info32x32.gif b/icon/iconset/awesome/action32x32/info32x32.gif new file mode 100644 index 00000000..1d80beff Binary files /dev/null and b/icon/iconset/awesome/action32x32/info32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/infogrades32x32.gif b/icon/iconset/awesome/action32x32/infogrades32x32.gif new file mode 100644 index 00000000..1d80beff Binary files /dev/null and b/icon/iconset/awesome/action32x32/infogrades32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/ins32x32.gif b/icon/iconset/awesome/action32x32/ins32x32.gif new file mode 100644 index 00000000..723fa879 Binary files /dev/null and b/icon/iconset/awesome/action32x32/ins32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/institution32x32.gif b/icon/iconset/awesome/action32x32/institution32x32.gif new file mode 100644 index 00000000..723fa879 Binary files /dev/null and b/icon/iconset/awesome/action32x32/institution32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/key32x32.gif b/icon/iconset/awesome/action32x32/key32x32.gif new file mode 100644 index 00000000..87eb405e Binary files /dev/null and b/icon/iconset/awesome/action32x32/key32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/keyuser32x32.gif b/icon/iconset/awesome/action32x32/keyuser32x32.gif new file mode 100644 index 00000000..3a8444a8 Binary files /dev/null and b/icon/iconset/awesome/action32x32/keyuser32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/lab32x32.gif b/icon/iconset/awesome/action32x32/lab32x32.gif new file mode 100644 index 00000000..129dc53d Binary files /dev/null and b/icon/iconset/awesome/action32x32/lab32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/lightning32x32.gif b/icon/iconset/awesome/action32x32/lightning32x32.gif new file mode 100644 index 00000000..5a7b22fe Binary files /dev/null and b/icon/iconset/awesome/action32x32/lightning32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/link32x32.gif b/icon/iconset/awesome/action32x32/link32x32.gif new file mode 100644 index 00000000..76ce4885 Binary files /dev/null and b/icon/iconset/awesome/action32x32/link32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/listtch32x32.gif b/icon/iconset/awesome/action32x32/listtch32x32.gif new file mode 100644 index 00000000..a0dd26ff Binary files /dev/null and b/icon/iconset/awesome/action32x32/listtch32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/msg32x32.gif b/icon/iconset/awesome/action32x32/msg32x32.gif new file mode 100644 index 00000000..532084f6 Binary files /dev/null and b/icon/iconset/awesome/action32x32/msg32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/mygroups32x32.gif b/icon/iconset/awesome/action32x32/mygroups32x32.gif new file mode 100644 index 00000000..da58b5a9 Binary files /dev/null and b/icon/iconset/awesome/action32x32/mygroups32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/note32x32.gif b/icon/iconset/awesome/action32x32/note32x32.gif new file mode 100644 index 00000000..5b98b8e3 Binary files /dev/null and b/icon/iconset/awesome/action32x32/note32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/pendrive32x32.gif b/icon/iconset/awesome/action32x32/pendrive32x32.gif new file mode 100644 index 00000000..16021734 Binary files /dev/null and b/icon/iconset/awesome/action32x32/pendrive32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/per32x32.gif b/icon/iconset/awesome/action32x32/per32x32.gif new file mode 100644 index 00000000..d0208360 Binary files /dev/null and b/icon/iconset/awesome/action32x32/per32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/photo32x32.gif b/icon/iconset/awesome/action32x32/photo32x32.gif new file mode 100644 index 00000000..3a17a86e Binary files /dev/null and b/icon/iconset/awesome/action32x32/photo32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/picture32x32.gif b/icon/iconset/awesome/action32x32/picture32x32.gif new file mode 100644 index 00000000..aaf181f5 Binary files /dev/null and b/icon/iconset/awesome/action32x32/picture32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/pie32x32.gif b/icon/iconset/awesome/action32x32/pie32x32.gif new file mode 100644 index 00000000..1c0206ff Binary files /dev/null and b/icon/iconset/awesome/action32x32/pie32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/presentation32x32.gif b/icon/iconset/awesome/action32x32/presentation32x32.gif new file mode 100644 index 00000000..f9a5a87a Binary files /dev/null and b/icon/iconset/awesome/action32x32/presentation32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/prf32x32.gif b/icon/iconset/awesome/action32x32/prf32x32.gif new file mode 100644 index 00000000..d0208360 Binary files /dev/null and b/icon/iconset/awesome/action32x32/prf32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/qr32x32.gif b/icon/iconset/awesome/action32x32/qr32x32.gif new file mode 100644 index 00000000..58de8062 Binary files /dev/null and b/icon/iconset/awesome/action32x32/qr32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/recmsg32x32.gif b/icon/iconset/awesome/action32x32/recmsg32x32.gif new file mode 100644 index 00000000..cb041139 Binary files /dev/null and b/icon/iconset/awesome/action32x32/recmsg32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/recyclelist32x32.gif b/icon/iconset/awesome/action32x32/recyclelist32x32.gif new file mode 100644 index 00000000..aee23f79 Binary files /dev/null and b/icon/iconset/awesome/action32x32/recyclelist32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/removeuser32x32.gif b/icon/iconset/awesome/action32x32/removeuser32x32.gif new file mode 100644 index 00000000..306bb5e1 Binary files /dev/null and b/icon/iconset/awesome/action32x32/removeuser32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/removeusers32x32.gif b/icon/iconset/awesome/action32x32/removeusers32x32.gif new file mode 100644 index 00000000..306bb5e1 Binary files /dev/null and b/icon/iconset/awesome/action32x32/removeusers32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/role32x32.gif b/icon/iconset/awesome/action32x32/role32x32.gif new file mode 100644 index 00000000..d0208360 Binary files /dev/null and b/icon/iconset/awesome/action32x32/role32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/rollcall32x32.gif b/icon/iconset/awesome/action32x32/rollcall32x32.gif new file mode 100644 index 00000000..4b59b50d Binary files /dev/null and b/icon/iconset/awesome/action32x32/rollcall32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/search32x32.gif b/icon/iconset/awesome/action32x32/search32x32.gif new file mode 100644 index 00000000..2ae0d419 Binary files /dev/null and b/icon/iconset/awesome/action32x32/search32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/sntmsg32x32.gif b/icon/iconset/awesome/action32x32/sntmsg32x32.gif new file mode 100644 index 00000000..c965de98 Binary files /dev/null and b/icon/iconset/awesome/action32x32/sntmsg32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/sta32x32.gif b/icon/iconset/awesome/action32x32/sta32x32.gif new file mode 100644 index 00000000..6eb949ea Binary files /dev/null and b/icon/iconset/awesome/action32x32/sta32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/star32x32.gif b/icon/iconset/awesome/action32x32/star32x32.gif new file mode 100644 index 00000000..6e7ca3e7 Binary files /dev/null and b/icon/iconset/awesome/action32x32/star32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/stats32x32.gif b/icon/iconset/awesome/action32x32/stats32x32.gif new file mode 100644 index 00000000..6eb949ea Binary files /dev/null and b/icon/iconset/awesome/action32x32/stats32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/statsuser32x32.gif b/icon/iconset/awesome/action32x32/statsuser32x32.gif new file mode 100644 index 00000000..6eb949ea Binary files /dev/null and b/icon/iconset/awesome/action32x32/statsuser32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/stop32x32.gif b/icon/iconset/awesome/action32x32/stop32x32.gif new file mode 100644 index 00000000..9002da53 Binary files /dev/null and b/icon/iconset/awesome/action32x32/stop32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/survey32x32.gif b/icon/iconset/awesome/action32x32/survey32x32.gif new file mode 100644 index 00000000..4b59b50d Binary files /dev/null and b/icon/iconset/awesome/action32x32/survey32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/sys32x32.gif b/icon/iconset/awesome/action32x32/sys32x32.gif new file mode 100644 index 00000000..da58b5a9 Binary files /dev/null and b/icon/iconset/awesome/action32x32/sys32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/tablestats32x32.gif b/icon/iconset/awesome/action32x32/tablestats32x32.gif new file mode 100644 index 00000000..2e12afeb Binary files /dev/null and b/icon/iconset/awesome/action32x32/tablestats32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/test32x32.gif b/icon/iconset/awesome/action32x32/test32x32.gif new file mode 100644 index 00000000..4b59b50d Binary files /dev/null and b/icon/iconset/awesome/action32x32/test32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/testresult32x32.gif b/icon/iconset/awesome/action32x32/testresult32x32.gif new file mode 100644 index 00000000..4b59b50d Binary files /dev/null and b/icon/iconset/awesome/action32x32/testresult32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/tutor32x32.gif b/icon/iconset/awesome/action32x32/tutor32x32.gif new file mode 100644 index 00000000..33bd9a6f Binary files /dev/null and b/icon/iconset/awesome/action32x32/tutor32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/upload32x32.gif b/icon/iconset/awesome/action32x32/upload32x32.gif new file mode 100644 index 00000000..00ec81ce Binary files /dev/null and b/icon/iconset/awesome/action32x32/upload32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/userplugged32x32.gif b/icon/iconset/awesome/action32x32/userplugged32x32.gif new file mode 100644 index 00000000..1c27c711 Binary files /dev/null and b/icon/iconset/awesome/action32x32/userplugged32x32.gif differ diff --git a/icon/iconset/awesome/action32x32/usr32x32.gif b/icon/iconset/awesome/action32x32/usr32x32.gif new file mode 100644 index 00000000..1c27c711 Binary files /dev/null and b/icon/iconset/awesome/action32x32/usr32x32.gif differ diff --git a/icon/iconset/awesome/action64x64/addremoveusers64x64.gif b/icon/iconset/awesome/action64x64/addremoveusers64x64.gif new file mode 100644 index 00000000..3ac3edd0 Binary files /dev/null and b/icon/iconset/awesome/action64x64/addremoveusers64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/adduser64x64.gif b/icon/iconset/awesome/action64x64/adduser64x64.gif new file mode 100644 index 00000000..3ac3edd0 Binary files /dev/null and b/icon/iconset/awesome/action64x64/adduser64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/announce64x64.gif b/icon/iconset/awesome/action64x64/announce64x64.gif new file mode 100644 index 00000000..8719c510 Binary files /dev/null and b/icon/iconset/awesome/action64x64/announce64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/arroba64x64.gif b/icon/iconset/awesome/action64x64/arroba64x64.gif new file mode 100644 index 00000000..93c38638 Binary files /dev/null and b/icon/iconset/awesome/action64x64/arroba64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/ass64x64.gif b/icon/iconset/awesome/action64x64/ass64x64.gif new file mode 100644 index 00000000..edd90f25 Binary files /dev/null and b/icon/iconset/awesome/action64x64/ass64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/bell64x64.gif b/icon/iconset/awesome/action64x64/bell64x64.gif new file mode 100644 index 00000000..4aab8f4b Binary files /dev/null and b/icon/iconset/awesome/action64x64/bell64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/blocks64x64.gif b/icon/iconset/awesome/action64x64/blocks64x64.gif new file mode 100644 index 00000000..cfb09519 Binary files /dev/null and b/icon/iconset/awesome/action64x64/blocks64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/books64x64.gif b/icon/iconset/awesome/action64x64/books64x64.gif new file mode 100644 index 00000000..2df08713 Binary files /dev/null and b/icon/iconset/awesome/action64x64/books64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/card64x64.gif b/icon/iconset/awesome/action64x64/card64x64.gif new file mode 100644 index 00000000..2e8c36e6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/card64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/cardtch64x64.gif b/icon/iconset/awesome/action64x64/cardtch64x64.gif new file mode 100644 index 00000000..2e8c36e6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/cardtch64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/chat64x64.gif b/icon/iconset/awesome/action64x64/chat64x64.gif new file mode 100644 index 00000000..f78d876f Binary files /dev/null and b/icon/iconset/awesome/action64x64/chat64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/classphoto64x64.gif b/icon/iconset/awesome/action64x64/classphoto64x64.gif new file mode 100644 index 00000000..12f70dbe Binary files /dev/null and b/icon/iconset/awesome/action64x64/classphoto64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/classphototch64x64.gif b/icon/iconset/awesome/action64x64/classphototch64x64.gif new file mode 100644 index 00000000..cc7eafaa Binary files /dev/null and b/icon/iconset/awesome/action64x64/classphototch64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/clock64x64.gif b/icon/iconset/awesome/action64x64/clock64x64.gif new file mode 100644 index 00000000..896ad2ed Binary files /dev/null and b/icon/iconset/awesome/action64x64/clock64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/config64x64.gif b/icon/iconset/awesome/action64x64/config64x64.gif new file mode 100644 index 00000000..3478c5b7 Binary files /dev/null and b/icon/iconset/awesome/action64x64/config64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/configs64x64.gif b/icon/iconset/awesome/action64x64/configs64x64.gif new file mode 100644 index 00000000..c1d693a4 Binary files /dev/null and b/icon/iconset/awesome/action64x64/configs64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/coursesdegree64x64.gif b/icon/iconset/awesome/action64x64/coursesdegree64x64.gif new file mode 100644 index 00000000..a6e0e482 Binary files /dev/null and b/icon/iconset/awesome/action64x64/coursesdegree64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/crs64x64.gif b/icon/iconset/awesome/action64x64/crs64x64.gif new file mode 100644 index 00000000..b63a9c31 Binary files /dev/null and b/icon/iconset/awesome/action64x64/crs64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/ctr64x64.gif b/icon/iconset/awesome/action64x64/ctr64x64.gif new file mode 100644 index 00000000..b501bbe7 Binary files /dev/null and b/icon/iconset/awesome/action64x64/ctr64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/cty64x64.gif b/icon/iconset/awesome/action64x64/cty64x64.gif new file mode 100644 index 00000000..0ab85506 Binary files /dev/null and b/icon/iconset/awesome/action64x64/cty64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/date64x64.gif b/icon/iconset/awesome/action64x64/date64x64.gif new file mode 100644 index 00000000..cac7bdd0 Binary files /dev/null and b/icon/iconset/awesome/action64x64/date64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/deg64x64.gif b/icon/iconset/awesome/action64x64/deg64x64.gif new file mode 100644 index 00000000..9a09f085 Binary files /dev/null and b/icon/iconset/awesome/action64x64/deg64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/deg_alt64x64.gif b/icon/iconset/awesome/action64x64/deg_alt64x64.gif new file mode 100644 index 00000000..649fa5ac Binary files /dev/null and b/icon/iconset/awesome/action64x64/deg_alt64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/desk64x64.gif b/icon/iconset/awesome/action64x64/desk64x64.gif new file mode 100644 index 00000000..ad6ca207 Binary files /dev/null and b/icon/iconset/awesome/action64x64/desk64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/download64x64.gif b/icon/iconset/awesome/action64x64/download64x64.gif new file mode 100644 index 00000000..131d5fd0 Binary files /dev/null and b/icon/iconset/awesome/action64x64/download64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/earth64x64.gif b/icon/iconset/awesome/action64x64/earth64x64.gif new file mode 100644 index 00000000..0ab85506 Binary files /dev/null and b/icon/iconset/awesome/action64x64/earth64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/editcard64x64.gif b/icon/iconset/awesome/action64x64/editcard64x64.gif new file mode 100644 index 00000000..2e8c36e6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/editcard64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/editfolderuser64x64.gif b/icon/iconset/awesome/action64x64/editfolderuser64x64.gif new file mode 100644 index 00000000..b63a9c31 Binary files /dev/null and b/icon/iconset/awesome/action64x64/editfolderuser64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/editnewmsg64x64.gif b/icon/iconset/awesome/action64x64/editnewmsg64x64.gif new file mode 100644 index 00000000..b73af421 Binary files /dev/null and b/icon/iconset/awesome/action64x64/editnewmsg64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/edittutor64x64.gif b/icon/iconset/awesome/action64x64/edittutor64x64.gif new file mode 100644 index 00000000..896ad2ed Binary files /dev/null and b/icon/iconset/awesome/action64x64/edittutor64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/email64x64.gif b/icon/iconset/awesome/action64x64/email64x64.gif new file mode 100644 index 00000000..d96da85f Binary files /dev/null and b/icon/iconset/awesome/action64x64/email64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/enr64x64.gif b/icon/iconset/awesome/action64x64/enr64x64.gif new file mode 100644 index 00000000..3ac3edd0 Binary files /dev/null and b/icon/iconset/awesome/action64x64/enr64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/enrollmentrequest64x64.gif b/icon/iconset/awesome/action64x64/enrollmentrequest64x64.gif new file mode 100644 index 00000000..856fd459 Binary files /dev/null and b/icon/iconset/awesome/action64x64/enrollmentrequest64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/faq64x64.gif b/icon/iconset/awesome/action64x64/faq64x64.gif new file mode 100644 index 00000000..ce08d861 Binary files /dev/null and b/icon/iconset/awesome/action64x64/faq64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/folder64x64.gif b/icon/iconset/awesome/action64x64/folder64x64.gif new file mode 100644 index 00000000..b63a9c31 Binary files /dev/null and b/icon/iconset/awesome/action64x64/folder64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/folderusers64x64.gif b/icon/iconset/awesome/action64x64/folderusers64x64.gif new file mode 100644 index 00000000..b63a9c31 Binary files /dev/null and b/icon/iconset/awesome/action64x64/folderusers64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/forum64x64.gif b/icon/iconset/awesome/action64x64/forum64x64.gif new file mode 100644 index 00000000..bac475da Binary files /dev/null and b/icon/iconset/awesome/action64x64/forum64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/grades64x64.gif b/icon/iconset/awesome/action64x64/grades64x64.gif new file mode 100644 index 00000000..aca2ba50 Binary files /dev/null and b/icon/iconset/awesome/action64x64/grades64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/groups64x64.gif b/icon/iconset/awesome/action64x64/groups64x64.gif new file mode 100644 index 00000000..a6e0e482 Binary files /dev/null and b/icon/iconset/awesome/action64x64/groups64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/grouptypes64x64.gif b/icon/iconset/awesome/action64x64/grouptypes64x64.gif new file mode 100644 index 00000000..a6e0e482 Binary files /dev/null and b/icon/iconset/awesome/action64x64/grouptypes64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/guide64x64.gif b/icon/iconset/awesome/action64x64/guide64x64.gif new file mode 100644 index 00000000..615d372f Binary files /dev/null and b/icon/iconset/awesome/action64x64/guide64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/heart64x64.gif b/icon/iconset/awesome/action64x64/heart64x64.gif new file mode 100644 index 00000000..67afa5ff Binary files /dev/null and b/icon/iconset/awesome/action64x64/heart64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/house64x64.gif b/icon/iconset/awesome/action64x64/house64x64.gif new file mode 100644 index 00000000..b501bbe7 Binary files /dev/null and b/icon/iconset/awesome/action64x64/house64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/houseteachers64x64.gif b/icon/iconset/awesome/action64x64/houseteachers64x64.gif new file mode 100644 index 00000000..e6f96207 Binary files /dev/null and b/icon/iconset/awesome/action64x64/houseteachers64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/info64x64.gif b/icon/iconset/awesome/action64x64/info64x64.gif new file mode 100644 index 00000000..2472fd4b Binary files /dev/null and b/icon/iconset/awesome/action64x64/info64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/infogrades64x64.gif b/icon/iconset/awesome/action64x64/infogrades64x64.gif new file mode 100644 index 00000000..2472fd4b Binary files /dev/null and b/icon/iconset/awesome/action64x64/infogrades64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/ins64x64.gif b/icon/iconset/awesome/action64x64/ins64x64.gif new file mode 100644 index 00000000..84458e54 Binary files /dev/null and b/icon/iconset/awesome/action64x64/ins64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/institution64x64.gif b/icon/iconset/awesome/action64x64/institution64x64.gif new file mode 100644 index 00000000..84458e54 Binary files /dev/null and b/icon/iconset/awesome/action64x64/institution64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/key64x64.gif b/icon/iconset/awesome/action64x64/key64x64.gif new file mode 100644 index 00000000..e103e14c Binary files /dev/null and b/icon/iconset/awesome/action64x64/key64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/keyuser64x64.gif b/icon/iconset/awesome/action64x64/keyuser64x64.gif new file mode 100644 index 00000000..cfe2c6cc Binary files /dev/null and b/icon/iconset/awesome/action64x64/keyuser64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/lab64x64.gif b/icon/iconset/awesome/action64x64/lab64x64.gif new file mode 100644 index 00000000..32900dab Binary files /dev/null and b/icon/iconset/awesome/action64x64/lab64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/lightning64x64.gif b/icon/iconset/awesome/action64x64/lightning64x64.gif new file mode 100644 index 00000000..38fb3c64 Binary files /dev/null and b/icon/iconset/awesome/action64x64/lightning64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/link64x64.gif b/icon/iconset/awesome/action64x64/link64x64.gif new file mode 100644 index 00000000..e2f01180 Binary files /dev/null and b/icon/iconset/awesome/action64x64/link64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/listtch64x64.gif b/icon/iconset/awesome/action64x64/listtch64x64.gif new file mode 100644 index 00000000..cc7eafaa Binary files /dev/null and b/icon/iconset/awesome/action64x64/listtch64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/msg64x64.gif b/icon/iconset/awesome/action64x64/msg64x64.gif new file mode 100644 index 00000000..d96da85f Binary files /dev/null and b/icon/iconset/awesome/action64x64/msg64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/mygroups64x64.gif b/icon/iconset/awesome/action64x64/mygroups64x64.gif new file mode 100644 index 00000000..a6e0e482 Binary files /dev/null and b/icon/iconset/awesome/action64x64/mygroups64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/note64x64.gif b/icon/iconset/awesome/action64x64/note64x64.gif new file mode 100644 index 00000000..8719c510 Binary files /dev/null and b/icon/iconset/awesome/action64x64/note64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/pendrive64x64.gif b/icon/iconset/awesome/action64x64/pendrive64x64.gif new file mode 100644 index 00000000..e7d214a9 Binary files /dev/null and b/icon/iconset/awesome/action64x64/pendrive64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/photo64x64.gif b/icon/iconset/awesome/action64x64/photo64x64.gif new file mode 100644 index 00000000..31424f3e Binary files /dev/null and b/icon/iconset/awesome/action64x64/photo64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/picture64x64.gif b/icon/iconset/awesome/action64x64/picture64x64.gif new file mode 100644 index 00000000..047d2d13 Binary files /dev/null and b/icon/iconset/awesome/action64x64/picture64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/pie64x64.gif b/icon/iconset/awesome/action64x64/pie64x64.gif new file mode 100644 index 00000000..139fde26 Binary files /dev/null and b/icon/iconset/awesome/action64x64/pie64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/presentation64x64.gif b/icon/iconset/awesome/action64x64/presentation64x64.gif new file mode 100644 index 00000000..44ca4b9f Binary files /dev/null and b/icon/iconset/awesome/action64x64/presentation64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/prf64x64.gif b/icon/iconset/awesome/action64x64/prf64x64.gif new file mode 100644 index 00000000..85442a18 Binary files /dev/null and b/icon/iconset/awesome/action64x64/prf64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/qr64x64.gif b/icon/iconset/awesome/action64x64/qr64x64.gif new file mode 100644 index 00000000..d79b2606 Binary files /dev/null and b/icon/iconset/awesome/action64x64/qr64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/recmsg64x64.gif b/icon/iconset/awesome/action64x64/recmsg64x64.gif new file mode 100644 index 00000000..221d601e Binary files /dev/null and b/icon/iconset/awesome/action64x64/recmsg64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/recyclelist64x64.gif b/icon/iconset/awesome/action64x64/recyclelist64x64.gif new file mode 100644 index 00000000..ec947c3d Binary files /dev/null and b/icon/iconset/awesome/action64x64/recyclelist64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/removeuser64x64.gif b/icon/iconset/awesome/action64x64/removeuser64x64.gif new file mode 100644 index 00000000..6c9b69c1 Binary files /dev/null and b/icon/iconset/awesome/action64x64/removeuser64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/removeusers64x64.gif b/icon/iconset/awesome/action64x64/removeusers64x64.gif new file mode 100644 index 00000000..6c9b69c1 Binary files /dev/null and b/icon/iconset/awesome/action64x64/removeusers64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/role64x64.gif b/icon/iconset/awesome/action64x64/role64x64.gif new file mode 100644 index 00000000..85442a18 Binary files /dev/null and b/icon/iconset/awesome/action64x64/role64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/rollcall64x64.gif b/icon/iconset/awesome/action64x64/rollcall64x64.gif new file mode 100644 index 00000000..edd90f25 Binary files /dev/null and b/icon/iconset/awesome/action64x64/rollcall64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/search64x64.gif b/icon/iconset/awesome/action64x64/search64x64.gif new file mode 100644 index 00000000..544cce48 Binary files /dev/null and b/icon/iconset/awesome/action64x64/search64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/sntmsg64x64.gif b/icon/iconset/awesome/action64x64/sntmsg64x64.gif new file mode 100644 index 00000000..e8febb90 Binary files /dev/null and b/icon/iconset/awesome/action64x64/sntmsg64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/sta64x64.gif b/icon/iconset/awesome/action64x64/sta64x64.gif new file mode 100644 index 00000000..6ae2beb6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/sta64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/star64x64.gif b/icon/iconset/awesome/action64x64/star64x64.gif new file mode 100644 index 00000000..4e4012ae Binary files /dev/null and b/icon/iconset/awesome/action64x64/star64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/stats64x64.gif b/icon/iconset/awesome/action64x64/stats64x64.gif new file mode 100644 index 00000000..6ae2beb6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/stats64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/statsuser64x64.gif b/icon/iconset/awesome/action64x64/statsuser64x64.gif new file mode 100644 index 00000000..6ae2beb6 Binary files /dev/null and b/icon/iconset/awesome/action64x64/statsuser64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/stop64x64.gif b/icon/iconset/awesome/action64x64/stop64x64.gif new file mode 100644 index 00000000..778c6493 Binary files /dev/null and b/icon/iconset/awesome/action64x64/stop64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/survey64x64.gif b/icon/iconset/awesome/action64x64/survey64x64.gif new file mode 100644 index 00000000..edd90f25 Binary files /dev/null and b/icon/iconset/awesome/action64x64/survey64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/sys64x64.gif b/icon/iconset/awesome/action64x64/sys64x64.gif new file mode 100644 index 00000000..a6e0e482 Binary files /dev/null and b/icon/iconset/awesome/action64x64/sys64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/tablestats64x64.gif b/icon/iconset/awesome/action64x64/tablestats64x64.gif new file mode 100644 index 00000000..9ad5a6bb Binary files /dev/null and b/icon/iconset/awesome/action64x64/tablestats64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/test64x64.gif b/icon/iconset/awesome/action64x64/test64x64.gif new file mode 100644 index 00000000..edd90f25 Binary files /dev/null and b/icon/iconset/awesome/action64x64/test64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/testresult64x64.gif b/icon/iconset/awesome/action64x64/testresult64x64.gif new file mode 100644 index 00000000..edd90f25 Binary files /dev/null and b/icon/iconset/awesome/action64x64/testresult64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/tutor64x64.gif b/icon/iconset/awesome/action64x64/tutor64x64.gif new file mode 100644 index 00000000..896ad2ed Binary files /dev/null and b/icon/iconset/awesome/action64x64/tutor64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/userplugged64x64.gif b/icon/iconset/awesome/action64x64/userplugged64x64.gif new file mode 100644 index 00000000..e6f96207 Binary files /dev/null and b/icon/iconset/awesome/action64x64/userplugged64x64.gif differ diff --git a/icon/iconset/awesome/action64x64/usr64x64.gif b/icon/iconset/awesome/action64x64/usr64x64.gif new file mode 100644 index 00000000..e6f96207 Binary files /dev/null and b/icon/iconset/awesome/action64x64/usr64x64.gif differ diff --git a/icon/iconset/nuvola/128x128/cake128x128.gif b/icon/iconset/nuvola/128x128/cake128x128.gif new file mode 100644 index 00000000..11886219 Binary files /dev/null and b/icon/iconset/nuvola/128x128/cake128x128.gif differ diff --git a/icon/iconset/nuvola/action16x16/addremoveusers16x16.gif b/icon/iconset/nuvola/action16x16/addremoveusers16x16.gif new file mode 100644 index 00000000..345be486 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/addremoveusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/adduser16x16.gif b/icon/iconset/nuvola/action16x16/adduser16x16.gif new file mode 100644 index 00000000..c34dc24e Binary files /dev/null and b/icon/iconset/nuvola/action16x16/adduser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/announce16x16.gif b/icon/iconset/nuvola/action16x16/announce16x16.gif new file mode 100644 index 00000000..01ee2f7f Binary files /dev/null and b/icon/iconset/nuvola/action16x16/announce16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/arroba16x16.gif b/icon/iconset/nuvola/action16x16/arroba16x16.gif new file mode 100644 index 00000000..5ee071d7 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/arroba16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/bell16x16.gif b/icon/iconset/nuvola/action16x16/bell16x16.gif new file mode 100644 index 00000000..05ce795e Binary files /dev/null and b/icon/iconset/nuvola/action16x16/bell16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/blackboard16x16.gif b/icon/iconset/nuvola/action16x16/blackboard16x16.gif new file mode 100644 index 00000000..d8ec8760 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/blackboard16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/blocks16x16.gif b/icon/iconset/nuvola/action16x16/blocks16x16.gif new file mode 100644 index 00000000..f29cde29 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/blocks16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/books16x16.gif b/icon/iconset/nuvola/action16x16/books16x16.gif new file mode 100644 index 00000000..1b9641fe Binary files /dev/null and b/icon/iconset/nuvola/action16x16/books16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/card16x16.gif b/icon/iconset/nuvola/action16x16/card16x16.gif new file mode 100644 index 00000000..86fd3cbc Binary files /dev/null and b/icon/iconset/nuvola/action16x16/card16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/cardtch16x16.gif b/icon/iconset/nuvola/action16x16/cardtch16x16.gif new file mode 100644 index 00000000..ca798771 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/cardtch16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/cd16x16.gif b/icon/iconset/nuvola/action16x16/cd16x16.gif new file mode 100644 index 00000000..13de3a32 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/cd16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/cdusers16x16.gif b/icon/iconset/nuvola/action16x16/cdusers16x16.gif new file mode 100644 index 00000000..fa043908 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/cdusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/chat16x16.gif b/icon/iconset/nuvola/action16x16/chat16x16.gif new file mode 100644 index 00000000..0737f35c Binary files /dev/null and b/icon/iconset/nuvola/action16x16/chat16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/classphoto16x16.gif b/icon/iconset/nuvola/action16x16/classphoto16x16.gif new file mode 100644 index 00000000..3ab97d70 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/classphoto16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/classphototch16x16.gif b/icon/iconset/nuvola/action16x16/classphototch16x16.gif new file mode 100644 index 00000000..7738343c Binary files /dev/null and b/icon/iconset/nuvola/action16x16/classphototch16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/clock16x16.gif b/icon/iconset/nuvola/action16x16/clock16x16.gif new file mode 100644 index 00000000..1bb17ba5 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/clock16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/config16x16.gif b/icon/iconset/nuvola/action16x16/config16x16.gif new file mode 100644 index 00000000..95b57e23 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/config16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/configs16x16.gif b/icon/iconset/nuvola/action16x16/configs16x16.gif new file mode 100644 index 00000000..c05866d0 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/configs16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/configtest16x16.gif b/icon/iconset/nuvola/action16x16/configtest16x16.gif new file mode 100644 index 00000000..517b3155 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/configtest16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/coursesdegree16x16.gif b/icon/iconset/nuvola/action16x16/coursesdegree16x16.gif new file mode 100644 index 00000000..6cb4a128 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/coursesdegree16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/crs16x16.gif b/icon/iconset/nuvola/action16x16/crs16x16.gif new file mode 100644 index 00000000..5c641251 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/crs16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/ctr16x16.gif b/icon/iconset/nuvola/action16x16/ctr16x16.gif new file mode 100644 index 00000000..d14ce992 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/ctr16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/cty16x16.gif b/icon/iconset/nuvola/action16x16/cty16x16.gif new file mode 100644 index 00000000..2d4be45a Binary files /dev/null and b/icon/iconset/nuvola/action16x16/cty16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/date16x16.gif b/icon/iconset/nuvola/action16x16/date16x16.gif new file mode 100644 index 00000000..61ee4c6b Binary files /dev/null and b/icon/iconset/nuvola/action16x16/date16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/deg16x16.gif b/icon/iconset/nuvola/action16x16/deg16x16.gif new file mode 100644 index 00000000..6f760cb5 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/deg16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/desk16x16.gif b/icon/iconset/nuvola/action16x16/desk16x16.gif new file mode 100644 index 00000000..67d4cdbf Binary files /dev/null and b/icon/iconset/nuvola/action16x16/desk16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/earth16x16.gif b/icon/iconset/nuvola/action16x16/earth16x16.gif new file mode 100644 index 00000000..2d4be45a Binary files /dev/null and b/icon/iconset/nuvola/action16x16/earth16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editblackboard16x16.gif b/icon/iconset/nuvola/action16x16/editblackboard16x16.gif new file mode 100644 index 00000000..747e51d3 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editblackboard16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editcard16x16.gif b/icon/iconset/nuvola/action16x16/editcard16x16.gif new file mode 100644 index 00000000..facb4a85 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editcard16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editcd16x16.gif b/icon/iconset/nuvola/action16x16/editcd16x16.gif new file mode 100644 index 00000000..97076790 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editcd16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editcduser16x16.gif b/icon/iconset/nuvola/action16x16/editcduser16x16.gif new file mode 100644 index 00000000..6278a7c5 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editcduser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editcdusers16x16.gif b/icon/iconset/nuvola/action16x16/editcdusers16x16.gif new file mode 100644 index 00000000..243ed5eb Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editcdusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editfolder16x16.gif b/icon/iconset/nuvola/action16x16/editfolder16x16.gif new file mode 100644 index 00000000..5663b177 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editfolder16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editfolderold16x16.gif b/icon/iconset/nuvola/action16x16/editfolderold16x16.gif new file mode 100644 index 00000000..d9cbaf2d Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editfolderold16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editfolderuser16x16.gif b/icon/iconset/nuvola/action16x16/editfolderuser16x16.gif new file mode 100644 index 00000000..4af9fd87 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editfolderuser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editfolderusers16x16.gif b/icon/iconset/nuvola/action16x16/editfolderusers16x16.gif new file mode 100644 index 00000000..a6752fa6 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editfolderusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editgrades16x16.gif b/icon/iconset/nuvola/action16x16/editgrades16x16.gif new file mode 100644 index 00000000..289bd904 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editgrades16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editheart16x16.gif b/icon/iconset/nuvola/action16x16/editheart16x16.gif new file mode 100644 index 00000000..7b5ee7af Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editheart16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editnewmsg16x16.gif b/icon/iconset/nuvola/action16x16/editnewmsg16x16.gif new file mode 100644 index 00000000..0165b3d9 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editnewmsg16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editpack16x16.gif b/icon/iconset/nuvola/action16x16/editpack16x16.gif new file mode 100644 index 00000000..da7a6baa Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editpack16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/edittest16x16.gif b/icon/iconset/nuvola/action16x16/edittest16x16.gif new file mode 100644 index 00000000..5d82ddb6 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/edittest16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/edittutor16x16.gif b/icon/iconset/nuvola/action16x16/edittutor16x16.gif new file mode 100644 index 00000000..d7216294 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/edittutor16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/edituser16x16.gif b/icon/iconset/nuvola/action16x16/edituser16x16.gif new file mode 100644 index 00000000..a2e95065 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/edituser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/editusers16x16.gif b/icon/iconset/nuvola/action16x16/editusers16x16.gif new file mode 100644 index 00000000..f5716e9f Binary files /dev/null and b/icon/iconset/nuvola/action16x16/editusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/email16x16.gif b/icon/iconset/nuvola/action16x16/email16x16.gif new file mode 100644 index 00000000..f82af300 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/email16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/enrollmentrequest16x16.gif b/icon/iconset/nuvola/action16x16/enrollmentrequest16x16.gif new file mode 100644 index 00000000..614bb1b1 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/enrollmentrequest16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/faq16x16.gif b/icon/iconset/nuvola/action16x16/faq16x16.gif new file mode 100644 index 00000000..e54c62cd Binary files /dev/null and b/icon/iconset/nuvola/action16x16/faq16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/folder16x16.gif b/icon/iconset/nuvola/action16x16/folder16x16.gif new file mode 100644 index 00000000..5c641251 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/folder16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/folderusers16x16.gif b/icon/iconset/nuvola/action16x16/folderusers16x16.gif new file mode 100644 index 00000000..0a227771 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/folderusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/forum16x16.gif b/icon/iconset/nuvola/action16x16/forum16x16.gif new file mode 100644 index 00000000..d60e9a3c Binary files /dev/null and b/icon/iconset/nuvola/action16x16/forum16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/grades16x16.gif b/icon/iconset/nuvola/action16x16/grades16x16.gif new file mode 100644 index 00000000..3812594b Binary files /dev/null and b/icon/iconset/nuvola/action16x16/grades16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/groups16x16.gif b/icon/iconset/nuvola/action16x16/groups16x16.gif new file mode 100644 index 00000000..33f7897f Binary files /dev/null and b/icon/iconset/nuvola/action16x16/groups16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/grouptypes16x16.gif b/icon/iconset/nuvola/action16x16/grouptypes16x16.gif new file mode 100644 index 00000000..d8939560 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/grouptypes16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/guide16x16.gif b/icon/iconset/nuvola/action16x16/guide16x16.gif new file mode 100644 index 00000000..b4c694f0 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/guide16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/heart16x16.gif b/icon/iconset/nuvola/action16x16/heart16x16.gif new file mode 100644 index 00000000..48cdcaac Binary files /dev/null and b/icon/iconset/nuvola/action16x16/heart16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/house16x16.gif b/icon/iconset/nuvola/action16x16/house16x16.gif new file mode 100644 index 00000000..d14ce992 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/house16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/houseteachers16x16.gif b/icon/iconset/nuvola/action16x16/houseteachers16x16.gif new file mode 100644 index 00000000..9db8a4ed Binary files /dev/null and b/icon/iconset/nuvola/action16x16/houseteachers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/info16x16.gif b/icon/iconset/nuvola/action16x16/info16x16.gif new file mode 100644 index 00000000..64d5ca06 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/info16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/infogrades16x16.gif b/icon/iconset/nuvola/action16x16/infogrades16x16.gif new file mode 100644 index 00000000..115dd73b Binary files /dev/null and b/icon/iconset/nuvola/action16x16/infogrades16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/ins16x16.gif b/icon/iconset/nuvola/action16x16/ins16x16.gif new file mode 100644 index 00000000..a5126b17 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/ins16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/institution16x16.gif b/icon/iconset/nuvola/action16x16/institution16x16.gif new file mode 100644 index 00000000..a5126b17 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/institution16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/key16x16.gif b/icon/iconset/nuvola/action16x16/key16x16.gif new file mode 100644 index 00000000..7ae16b62 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/key16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/keyuser16x16.gif b/icon/iconset/nuvola/action16x16/keyuser16x16.gif new file mode 100644 index 00000000..cff7c72c Binary files /dev/null and b/icon/iconset/nuvola/action16x16/keyuser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/lab16x16.gif b/icon/iconset/nuvola/action16x16/lab16x16.gif new file mode 100644 index 00000000..b058bf90 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/lab16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/lightning16x16.gif b/icon/iconset/nuvola/action16x16/lightning16x16.gif new file mode 100644 index 00000000..2a0f3630 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/lightning16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/link16x16.gif b/icon/iconset/nuvola/action16x16/link16x16.gif new file mode 100644 index 00000000..a736f397 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/link16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/listtch16x16.gif b/icon/iconset/nuvola/action16x16/listtch16x16.gif new file mode 100644 index 00000000..976d8f9a Binary files /dev/null and b/icon/iconset/nuvola/action16x16/listtch16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/mygroups16x16.gif b/icon/iconset/nuvola/action16x16/mygroups16x16.gif new file mode 100644 index 00000000..843c35d0 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/mygroups16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/note16x16.gif b/icon/iconset/nuvola/action16x16/note16x16.gif new file mode 100644 index 00000000..28ab887a Binary files /dev/null and b/icon/iconset/nuvola/action16x16/note16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/notif16x16.gif b/icon/iconset/nuvola/action16x16/notif16x16.gif new file mode 100644 index 00000000..4e29ae64 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/notif16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/pendrive16x16.gif b/icon/iconset/nuvola/action16x16/pendrive16x16.gif new file mode 100644 index 00000000..603f976f Binary files /dev/null and b/icon/iconset/nuvola/action16x16/pendrive16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/photo16x16.gif b/icon/iconset/nuvola/action16x16/photo16x16.gif new file mode 100644 index 00000000..c57f4326 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/photo16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/picture16x16.gif b/icon/iconset/nuvola/action16x16/picture16x16.gif new file mode 100644 index 00000000..01d38248 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/picture16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/pie16x16.gif b/icon/iconset/nuvola/action16x16/pie16x16.gif new file mode 100644 index 00000000..ee6e1d4c Binary files /dev/null and b/icon/iconset/nuvola/action16x16/pie16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/presentation16x16.gif b/icon/iconset/nuvola/action16x16/presentation16x16.gif new file mode 100644 index 00000000..9e5151d2 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/presentation16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/qr16x16.gif b/icon/iconset/nuvola/action16x16/qr16x16.gif new file mode 100644 index 00000000..ac723188 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/qr16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/recmsg16x16.gif b/icon/iconset/nuvola/action16x16/recmsg16x16.gif new file mode 100644 index 00000000..b84e3276 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/recmsg16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/recyclelist16x16.gif b/icon/iconset/nuvola/action16x16/recyclelist16x16.gif new file mode 100644 index 00000000..48aa5297 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/recyclelist16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/removeuser16x16.gif b/icon/iconset/nuvola/action16x16/removeuser16x16.gif new file mode 100644 index 00000000..862474eb Binary files /dev/null and b/icon/iconset/nuvola/action16x16/removeuser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/removeusers16x16.gif b/icon/iconset/nuvola/action16x16/removeusers16x16.gif new file mode 100644 index 00000000..6acc8419 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/removeusers16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/rol16x16.gif b/icon/iconset/nuvola/action16x16/rol16x16.gif new file mode 100644 index 00000000..c3d10dd2 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/rol16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/role16x16.gif b/icon/iconset/nuvola/action16x16/role16x16.gif new file mode 100644 index 00000000..c3d10dd2 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/role16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/rollcall16x16.gif b/icon/iconset/nuvola/action16x16/rollcall16x16.gif new file mode 100644 index 00000000..10c800fd Binary files /dev/null and b/icon/iconset/nuvola/action16x16/rollcall16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/search16x16.gif b/icon/iconset/nuvola/action16x16/search16x16.gif new file mode 100644 index 00000000..b2a8b56b Binary files /dev/null and b/icon/iconset/nuvola/action16x16/search16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/sntmsg16x16.gif b/icon/iconset/nuvola/action16x16/sntmsg16x16.gif new file mode 100644 index 00000000..5720530a Binary files /dev/null and b/icon/iconset/nuvola/action16x16/sntmsg16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/star16x16.gif b/icon/iconset/nuvola/action16x16/star16x16.gif new file mode 100644 index 00000000..bb8f81f5 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/star16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/stats16x16.gif b/icon/iconset/nuvola/action16x16/stats16x16.gif new file mode 100644 index 00000000..e3b35fd2 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/stats16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/statsuser16x16.gif b/icon/iconset/nuvola/action16x16/statsuser16x16.gif new file mode 100644 index 00000000..6d6f4df0 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/statsuser16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/stop16x16.gif b/icon/iconset/nuvola/action16x16/stop16x16.gif new file mode 100644 index 00000000..077468e7 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/stop16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/survey16x16.gif b/icon/iconset/nuvola/action16x16/survey16x16.gif new file mode 100644 index 00000000..3a433e9d Binary files /dev/null and b/icon/iconset/nuvola/action16x16/survey16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/sys16x16.gif b/icon/iconset/nuvola/action16x16/sys16x16.gif new file mode 100644 index 00000000..d8939560 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/sys16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/tablestats16x16.gif b/icon/iconset/nuvola/action16x16/tablestats16x16.gif new file mode 100644 index 00000000..60008b3e Binary files /dev/null and b/icon/iconset/nuvola/action16x16/tablestats16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/test16x16.gif b/icon/iconset/nuvola/action16x16/test16x16.gif new file mode 100644 index 00000000..4d7eab3e Binary files /dev/null and b/icon/iconset/nuvola/action16x16/test16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/testresult16x16.gif b/icon/iconset/nuvola/action16x16/testresult16x16.gif new file mode 100644 index 00000000..3885fc32 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/testresult16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/tools16x16.gif b/icon/iconset/nuvola/action16x16/tools16x16.gif new file mode 100644 index 00000000..47b80f23 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/tools16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/tutor16x16.gif b/icon/iconset/nuvola/action16x16/tutor16x16.gif new file mode 100644 index 00000000..8380cf11 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/tutor16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/userlist16x16.gif b/icon/iconset/nuvola/action16x16/userlist16x16.gif new file mode 100644 index 00000000..0ecd4ea0 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/userlist16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/userplugged16x16.gif b/icon/iconset/nuvola/action16x16/userplugged16x16.gif new file mode 100644 index 00000000..9bb0b375 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/userplugged16x16.gif differ diff --git a/icon/iconset/nuvola/action16x16/users16x16.gif b/icon/iconset/nuvola/action16x16/users16x16.gif new file mode 100644 index 00000000..198c9045 Binary files /dev/null and b/icon/iconset/nuvola/action16x16/users16x16.gif differ diff --git a/icon/iconset/nuvola/action32x32/addremoveusers32x32.gif b/icon/iconset/nuvola/action32x32/addremoveusers32x32.gif new file mode 100644 index 00000000..995a3d11 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/addremoveusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/adduser32x32.gif b/icon/iconset/nuvola/action32x32/adduser32x32.gif new file mode 100644 index 00000000..04c31ca6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/adduser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/addusers32x32.gif b/icon/iconset/nuvola/action32x32/addusers32x32.gif new file mode 100644 index 00000000..4fe5f6f0 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/addusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/announce32x32.gif b/icon/iconset/nuvola/action32x32/announce32x32.gif new file mode 100644 index 00000000..2e5f1821 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/announce32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/arroba32x32.gif b/icon/iconset/nuvola/action32x32/arroba32x32.gif new file mode 100644 index 00000000..c8539a31 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/arroba32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/ass32x32.gif b/icon/iconset/nuvola/action32x32/ass32x32.gif new file mode 100644 index 00000000..61d73c1f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/ass32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/bell32x32.gif b/icon/iconset/nuvola/action32x32/bell32x32.gif new file mode 100644 index 00000000..e4042a31 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/bell32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/blackboard32x32.gif b/icon/iconset/nuvola/action32x32/blackboard32x32.gif new file mode 100644 index 00000000..f04d5dd8 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/blackboard32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/blocks32x32.gif b/icon/iconset/nuvola/action32x32/blocks32x32.gif new file mode 100644 index 00000000..40ac8eb2 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/blocks32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/books32x32.gif b/icon/iconset/nuvola/action32x32/books32x32.gif new file mode 100644 index 00000000..2733b255 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/books32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/card32x32.gif b/icon/iconset/nuvola/action32x32/card32x32.gif new file mode 100644 index 00000000..715fc7ae Binary files /dev/null and b/icon/iconset/nuvola/action32x32/card32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/cardtch32x32.gif b/icon/iconset/nuvola/action32x32/cardtch32x32.gif new file mode 100644 index 00000000..f4d5bf80 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/cardtch32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/cd32x32.gif b/icon/iconset/nuvola/action32x32/cd32x32.gif new file mode 100644 index 00000000..a34512cc Binary files /dev/null and b/icon/iconset/nuvola/action32x32/cd32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/cdusers32x32.gif b/icon/iconset/nuvola/action32x32/cdusers32x32.gif new file mode 100644 index 00000000..4332bace Binary files /dev/null and b/icon/iconset/nuvola/action32x32/cdusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/chat32x32.gif b/icon/iconset/nuvola/action32x32/chat32x32.gif new file mode 100644 index 00000000..091ddae7 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/chat32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/classphoto32x32.gif b/icon/iconset/nuvola/action32x32/classphoto32x32.gif new file mode 100644 index 00000000..c65a0c0d Binary files /dev/null and b/icon/iconset/nuvola/action32x32/classphoto32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/classphototch32x32.gif b/icon/iconset/nuvola/action32x32/classphototch32x32.gif new file mode 100644 index 00000000..4a6b1d82 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/classphototch32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/clock32x32.gif b/icon/iconset/nuvola/action32x32/clock32x32.gif new file mode 100644 index 00000000..508d1d96 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/clock32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/config32x32.gif b/icon/iconset/nuvola/action32x32/config32x32.gif new file mode 100644 index 00000000..e74826c3 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/config32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/configs32x32.gif b/icon/iconset/nuvola/action32x32/configs32x32.gif new file mode 100644 index 00000000..0cf577f8 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/configs32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/configtest32x32.gif b/icon/iconset/nuvola/action32x32/configtest32x32.gif new file mode 100644 index 00000000..8e35fee1 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/configtest32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/coursesdegree32x32.gif b/icon/iconset/nuvola/action32x32/coursesdegree32x32.gif new file mode 100644 index 00000000..2434f9af Binary files /dev/null and b/icon/iconset/nuvola/action32x32/coursesdegree32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/crs32x32.gif b/icon/iconset/nuvola/action32x32/crs32x32.gif new file mode 100644 index 00000000..eabf098f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/crs32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/crs_alt32x32.gif b/icon/iconset/nuvola/action32x32/crs_alt32x32.gif new file mode 100644 index 00000000..f04d5dd8 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/crs_alt32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/ctr32x32.gif b/icon/iconset/nuvola/action32x32/ctr32x32.gif new file mode 100644 index 00000000..13bdfe15 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/ctr32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/cty32x32.gif b/icon/iconset/nuvola/action32x32/cty32x32.gif new file mode 100644 index 00000000..639b9dcf Binary files /dev/null and b/icon/iconset/nuvola/action32x32/cty32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/date32x32.gif b/icon/iconset/nuvola/action32x32/date32x32.gif new file mode 100644 index 00000000..b5bf1654 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/date32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/deg32x32.gif b/icon/iconset/nuvola/action32x32/deg32x32.gif new file mode 100644 index 00000000..91d2ba43 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/deg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/desk32x32.gif b/icon/iconset/nuvola/action32x32/desk32x32.gif new file mode 100644 index 00000000..d1c6df42 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/desk32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/doc32x32.gif b/icon/iconset/nuvola/action32x32/doc32x32.gif new file mode 100644 index 00000000..29e8eb8b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/doc32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/docx32x32.gif b/icon/iconset/nuvola/action32x32/docx32x32.gif new file mode 100644 index 00000000..29e8eb8b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/docx32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/download32x32.gif b/icon/iconset/nuvola/action32x32/download32x32.gif new file mode 100644 index 00000000..516ece4b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/download32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/earth32x32.gif b/icon/iconset/nuvola/action32x32/earth32x32.gif new file mode 100644 index 00000000..639b9dcf Binary files /dev/null and b/icon/iconset/nuvola/action32x32/earth32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editblackboard32x32.gif b/icon/iconset/nuvola/action32x32/editblackboard32x32.gif new file mode 100644 index 00000000..f1a767f6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editblackboard32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editcard32x32.gif b/icon/iconset/nuvola/action32x32/editcard32x32.gif new file mode 100644 index 00000000..50f2ced4 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editcard32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editcd32x32.gif b/icon/iconset/nuvola/action32x32/editcd32x32.gif new file mode 100644 index 00000000..0cc50f16 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editcd32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editcduser32x32.gif b/icon/iconset/nuvola/action32x32/editcduser32x32.gif new file mode 100644 index 00000000..7be32936 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editcduser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editcdusers32x32.gif b/icon/iconset/nuvola/action32x32/editcdusers32x32.gif new file mode 100644 index 00000000..d7a4d48e Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editcdusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editfolder32x32.gif b/icon/iconset/nuvola/action32x32/editfolder32x32.gif new file mode 100644 index 00000000..1f66e79c Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editfolder32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editfolderold32x32.gif b/icon/iconset/nuvola/action32x32/editfolderold32x32.gif new file mode 100644 index 00000000..a733bb9d Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editfolderold32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editfolderuser32x32.gif b/icon/iconset/nuvola/action32x32/editfolderuser32x32.gif new file mode 100644 index 00000000..e9def8ac Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editfolderuser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editfolderusers32x32.gif b/icon/iconset/nuvola/action32x32/editfolderusers32x32.gif new file mode 100644 index 00000000..8b3ebc5f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editfolderusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editgrades32x32.gif b/icon/iconset/nuvola/action32x32/editgrades32x32.gif new file mode 100644 index 00000000..18db30c9 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editgrades32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editheart32x32.gif b/icon/iconset/nuvola/action32x32/editheart32x32.gif new file mode 100644 index 00000000..bcbe9fc7 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editheart32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editnewmsg32x32.gif b/icon/iconset/nuvola/action32x32/editnewmsg32x32.gif new file mode 100644 index 00000000..22bd29f6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editnewmsg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editnote32x32.gif b/icon/iconset/nuvola/action32x32/editnote32x32.gif new file mode 100644 index 00000000..a0a393ad Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editnote32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editpack32x32.gif b/icon/iconset/nuvola/action32x32/editpack32x32.gif new file mode 100644 index 00000000..a0f86ab7 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editpack32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/edittest32x32.gif b/icon/iconset/nuvola/action32x32/edittest32x32.gif new file mode 100644 index 00000000..206d65cc Binary files /dev/null and b/icon/iconset/nuvola/action32x32/edittest32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/edittutor32x32.gif b/icon/iconset/nuvola/action32x32/edittutor32x32.gif new file mode 100644 index 00000000..d1b99fbf Binary files /dev/null and b/icon/iconset/nuvola/action32x32/edittutor32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/edituser32x32.gif b/icon/iconset/nuvola/action32x32/edituser32x32.gif new file mode 100644 index 00000000..69e2d004 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/edituser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/editusers32x32.gif b/icon/iconset/nuvola/action32x32/editusers32x32.gif new file mode 100644 index 00000000..e4ddb740 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/editusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/email32x32.gif b/icon/iconset/nuvola/action32x32/email32x32.gif new file mode 100644 index 00000000..a4d94335 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/email32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/enr32x32.gif b/icon/iconset/nuvola/action32x32/enr32x32.gif new file mode 100644 index 00000000..a179caf6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/enr32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/enrollmentrequest32x32.gif b/icon/iconset/nuvola/action32x32/enrollmentrequest32x32.gif new file mode 100644 index 00000000..a179caf6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/enrollmentrequest32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/export32x32.gif b/icon/iconset/nuvola/action32x32/export32x32.gif new file mode 100644 index 00000000..c83a2a67 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/export32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/faq32x32.gif b/icon/iconset/nuvola/action32x32/faq32x32.gif new file mode 100644 index 00000000..f46e961b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/faq32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/folder32x32.gif b/icon/iconset/nuvola/action32x32/folder32x32.gif new file mode 100644 index 00000000..eabf098f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/folder32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/folderusers32x32.gif b/icon/iconset/nuvola/action32x32/folderusers32x32.gif new file mode 100644 index 00000000..7e8a196f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/folderusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/forum32x32.gif b/icon/iconset/nuvola/action32x32/forum32x32.gif new file mode 100644 index 00000000..ebcae799 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/forum32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/grades32x32.gif b/icon/iconset/nuvola/action32x32/grades32x32.gif new file mode 100644 index 00000000..61d73c1f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/grades32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/groups32x32.gif b/icon/iconset/nuvola/action32x32/groups32x32.gif new file mode 100644 index 00000000..a52b7fb3 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/groups32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/grouptypes32x32.gif b/icon/iconset/nuvola/action32x32/grouptypes32x32.gif new file mode 100644 index 00000000..9e263e06 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/grouptypes32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/guide32x32.gif b/icon/iconset/nuvola/action32x32/guide32x32.gif new file mode 100644 index 00000000..f36e4ba5 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/guide32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/heart32x32.gif b/icon/iconset/nuvola/action32x32/heart32x32.gif new file mode 100644 index 00000000..8a2aa8e4 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/heart32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/house32x32.gif b/icon/iconset/nuvola/action32x32/house32x32.gif new file mode 100644 index 00000000..13bdfe15 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/house32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/houseteachers32x32.gif b/icon/iconset/nuvola/action32x32/houseteachers32x32.gif new file mode 100644 index 00000000..3f8f963b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/houseteachers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/import32x32.gif b/icon/iconset/nuvola/action32x32/import32x32.gif new file mode 100644 index 00000000..21cbd1a1 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/import32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/info32x32.gif b/icon/iconset/nuvola/action32x32/info32x32.gif new file mode 100644 index 00000000..b415207b Binary files /dev/null and b/icon/iconset/nuvola/action32x32/info32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/infogrades32x32.gif b/icon/iconset/nuvola/action32x32/infogrades32x32.gif new file mode 100644 index 00000000..4b01e5bb Binary files /dev/null and b/icon/iconset/nuvola/action32x32/infogrades32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/ins32x32.gif b/icon/iconset/nuvola/action32x32/ins32x32.gif new file mode 100644 index 00000000..7ce76493 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/ins32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/institution32x32.gif b/icon/iconset/nuvola/action32x32/institution32x32.gif new file mode 100644 index 00000000..7ce76493 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/institution32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/key32x32.gif b/icon/iconset/nuvola/action32x32/key32x32.gif new file mode 100644 index 00000000..9e75b407 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/key32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/keyuser32x32.gif b/icon/iconset/nuvola/action32x32/keyuser32x32.gif new file mode 100644 index 00000000..3fb93bba Binary files /dev/null and b/icon/iconset/nuvola/action32x32/keyuser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/lab32x32.gif b/icon/iconset/nuvola/action32x32/lab32x32.gif new file mode 100644 index 00000000..b4466aac Binary files /dev/null and b/icon/iconset/nuvola/action32x32/lab32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/lightning32x32.gif b/icon/iconset/nuvola/action32x32/lightning32x32.gif new file mode 100644 index 00000000..100b9ac5 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/lightning32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/link32x32.gif b/icon/iconset/nuvola/action32x32/link32x32.gif new file mode 100644 index 00000000..0f71c592 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/link32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/liststd32x32.gif b/icon/iconset/nuvola/action32x32/liststd32x32.gif new file mode 100644 index 00000000..58ecccea Binary files /dev/null and b/icon/iconset/nuvola/action32x32/liststd32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/listtch32x32.gif b/icon/iconset/nuvola/action32x32/listtch32x32.gif new file mode 100644 index 00000000..953584f8 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/listtch32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/msg32x32.gif b/icon/iconset/nuvola/action32x32/msg32x32.gif new file mode 100644 index 00000000..677c2fb0 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/msg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/mygroups32x32.gif b/icon/iconset/nuvola/action32x32/mygroups32x32.gif new file mode 100644 index 00000000..ac3b4eb6 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/mygroups32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/note32x32.gif b/icon/iconset/nuvola/action32x32/note32x32.gif new file mode 100644 index 00000000..ed6da845 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/note32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/notif32x32.gif b/icon/iconset/nuvola/action32x32/notif32x32.gif new file mode 100644 index 00000000..e0a6667a Binary files /dev/null and b/icon/iconset/nuvola/action32x32/notif32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/pdf32x32.gif b/icon/iconset/nuvola/action32x32/pdf32x32.gif new file mode 100644 index 00000000..51d867de Binary files /dev/null and b/icon/iconset/nuvola/action32x32/pdf32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/pendrive32x32.gif b/icon/iconset/nuvola/action32x32/pendrive32x32.gif new file mode 100644 index 00000000..90306cdb Binary files /dev/null and b/icon/iconset/nuvola/action32x32/pendrive32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/per32x32.gif b/icon/iconset/nuvola/action32x32/per32x32.gif new file mode 100644 index 00000000..2f2b9109 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/per32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/photo32x32.gif b/icon/iconset/nuvola/action32x32/photo32x32.gif new file mode 100644 index 00000000..70109829 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/photo32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/picture32x32.gif b/icon/iconset/nuvola/action32x32/picture32x32.gif new file mode 100644 index 00000000..69f16974 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/picture32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/pie32x32.gif b/icon/iconset/nuvola/action32x32/pie32x32.gif new file mode 100644 index 00000000..585dbda4 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/pie32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/plg32x32.gif b/icon/iconset/nuvola/action32x32/plg32x32.gif new file mode 100644 index 00000000..40ac8eb2 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/plg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/presentation32x32.gif b/icon/iconset/nuvola/action32x32/presentation32x32.gif new file mode 100644 index 00000000..0696b44c Binary files /dev/null and b/icon/iconset/nuvola/action32x32/presentation32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/prf32x32.gif b/icon/iconset/nuvola/action32x32/prf32x32.gif new file mode 100644 index 00000000..2f2b9109 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/prf32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/qr32x32.gif b/icon/iconset/nuvola/action32x32/qr32x32.gif new file mode 100644 index 00000000..d8e60d02 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/qr32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/ray32x32.gif b/icon/iconset/nuvola/action32x32/ray32x32.gif new file mode 100644 index 00000000..100b9ac5 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/ray32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/recmsg32x32.gif b/icon/iconset/nuvola/action32x32/recmsg32x32.gif new file mode 100644 index 00000000..0b5c4e58 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/recmsg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/recyclelist32x32.gif b/icon/iconset/nuvola/action32x32/recyclelist32x32.gif new file mode 100644 index 00000000..67dca160 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/recyclelist32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/removenote32x32.gif b/icon/iconset/nuvola/action32x32/removenote32x32.gif new file mode 100644 index 00000000..7bd141a5 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/removenote32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/removeuser32x32.gif b/icon/iconset/nuvola/action32x32/removeuser32x32.gif new file mode 100644 index 00000000..d2c64e2e Binary files /dev/null and b/icon/iconset/nuvola/action32x32/removeuser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/removeusers32x32.gif b/icon/iconset/nuvola/action32x32/removeusers32x32.gif new file mode 100644 index 00000000..dc6880fd Binary files /dev/null and b/icon/iconset/nuvola/action32x32/removeusers32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/rol32x32.gif b/icon/iconset/nuvola/action32x32/rol32x32.gif new file mode 100644 index 00000000..68c16bc4 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/rol32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/role32x32.gif b/icon/iconset/nuvola/action32x32/role32x32.gif new file mode 100644 index 00000000..68c16bc4 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/role32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/rollcall32x32.gif b/icon/iconset/nuvola/action32x32/rollcall32x32.gif new file mode 100644 index 00000000..ff8b90b0 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/rollcall32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/search32x32.gif b/icon/iconset/nuvola/action32x32/search32x32.gif new file mode 100644 index 00000000..f6ce8a23 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/search32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/searchcourse32x32.gif b/icon/iconset/nuvola/action32x32/searchcourse32x32.gif new file mode 100644 index 00000000..536d388e Binary files /dev/null and b/icon/iconset/nuvola/action32x32/searchcourse32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/sntmsg32x32.gif b/icon/iconset/nuvola/action32x32/sntmsg32x32.gif new file mode 100644 index 00000000..1d8da21a Binary files /dev/null and b/icon/iconset/nuvola/action32x32/sntmsg32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/sta32x32.gif b/icon/iconset/nuvola/action32x32/sta32x32.gif new file mode 100644 index 00000000..985b029c Binary files /dev/null and b/icon/iconset/nuvola/action32x32/sta32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/star32x32.gif b/icon/iconset/nuvola/action32x32/star32x32.gif new file mode 100644 index 00000000..578e65af Binary files /dev/null and b/icon/iconset/nuvola/action32x32/star32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/stats32x32.gif b/icon/iconset/nuvola/action32x32/stats32x32.gif new file mode 100644 index 00000000..985b029c Binary files /dev/null and b/icon/iconset/nuvola/action32x32/stats32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/statsuser32x32.gif b/icon/iconset/nuvola/action32x32/statsuser32x32.gif new file mode 100644 index 00000000..20e9b3b5 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/statsuser32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/stop32x32.gif b/icon/iconset/nuvola/action32x32/stop32x32.gif new file mode 100644 index 00000000..bd9403af Binary files /dev/null and b/icon/iconset/nuvola/action32x32/stop32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/survey32x32.gif b/icon/iconset/nuvola/action32x32/survey32x32.gif new file mode 100644 index 00000000..729efe20 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/survey32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/sys32x32.gif b/icon/iconset/nuvola/action32x32/sys32x32.gif new file mode 100644 index 00000000..9e263e06 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/sys32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/tablestats32x32.gif b/icon/iconset/nuvola/action32x32/tablestats32x32.gif new file mode 100644 index 00000000..39de1aea Binary files /dev/null and b/icon/iconset/nuvola/action32x32/tablestats32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/test32x32.gif b/icon/iconset/nuvola/action32x32/test32x32.gif new file mode 100644 index 00000000..a49e6d7d Binary files /dev/null and b/icon/iconset/nuvola/action32x32/test32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/testresult32x32.gif b/icon/iconset/nuvola/action32x32/testresult32x32.gif new file mode 100644 index 00000000..ec18787f Binary files /dev/null and b/icon/iconset/nuvola/action32x32/testresult32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/tools32x32.gif b/icon/iconset/nuvola/action32x32/tools32x32.gif new file mode 100644 index 00000000..15d682dc Binary files /dev/null and b/icon/iconset/nuvola/action32x32/tools32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/tutor32x32.gif b/icon/iconset/nuvola/action32x32/tutor32x32.gif new file mode 100644 index 00000000..06582f18 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/tutor32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/upload32x32.gif b/icon/iconset/nuvola/action32x32/upload32x32.gif new file mode 100644 index 00000000..9c968a99 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/upload32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/userlist32x32.gif b/icon/iconset/nuvola/action32x32/userlist32x32.gif new file mode 100644 index 00000000..5f7e84e0 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/userlist32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/userplugged32x32.gif b/icon/iconset/nuvola/action32x32/userplugged32x32.gif new file mode 100644 index 00000000..c7e82a10 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/userplugged32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/users32x32.gif b/icon/iconset/nuvola/action32x32/users32x32.gif new file mode 100644 index 00000000..8417f8f2 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/users32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/usr32x32.gif b/icon/iconset/nuvola/action32x32/usr32x32.gif new file mode 100644 index 00000000..8417f8f2 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/usr32x32.gif differ diff --git a/icon/iconset/nuvola/action32x32/xls32x32.gif b/icon/iconset/nuvola/action32x32/xls32x32.gif new file mode 100644 index 00000000..69a47518 Binary files /dev/null and b/icon/iconset/nuvola/action32x32/xls32x32.gif differ diff --git a/icon/iconset/nuvola/action64x64/addremoveusers64x64.gif b/icon/iconset/nuvola/action64x64/addremoveusers64x64.gif new file mode 100644 index 00000000..f72b9c4a Binary files /dev/null and b/icon/iconset/nuvola/action64x64/addremoveusers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/adduser64x64.gif b/icon/iconset/nuvola/action64x64/adduser64x64.gif new file mode 100644 index 00000000..ebe7856c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/adduser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/announce64x64.gif b/icon/iconset/nuvola/action64x64/announce64x64.gif new file mode 100644 index 00000000..2a1d11bb Binary files /dev/null and b/icon/iconset/nuvola/action64x64/announce64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/arroba64x64.gif b/icon/iconset/nuvola/action64x64/arroba64x64.gif new file mode 100644 index 00000000..982859c1 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/arroba64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/ass64x64.gif b/icon/iconset/nuvola/action64x64/ass64x64.gif new file mode 100644 index 00000000..c1ef71c8 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/ass64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/bell64x64.gif b/icon/iconset/nuvola/action64x64/bell64x64.gif new file mode 100644 index 00000000..fe356f01 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/bell64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/blackboard64x64.gif b/icon/iconset/nuvola/action64x64/blackboard64x64.gif new file mode 100644 index 00000000..5213ba34 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/blackboard64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/blocks64x64.gif b/icon/iconset/nuvola/action64x64/blocks64x64.gif new file mode 100644 index 00000000..b273811d Binary files /dev/null and b/icon/iconset/nuvola/action64x64/blocks64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/books64x64.gif b/icon/iconset/nuvola/action64x64/books64x64.gif new file mode 100644 index 00000000..8fe20d96 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/books64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/card64x64.gif b/icon/iconset/nuvola/action64x64/card64x64.gif new file mode 100644 index 00000000..fdb505b2 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/card64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/cardtch64x64.gif b/icon/iconset/nuvola/action64x64/cardtch64x64.gif new file mode 100644 index 00000000..dab77a6b Binary files /dev/null and b/icon/iconset/nuvola/action64x64/cardtch64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/chat64x64.gif b/icon/iconset/nuvola/action64x64/chat64x64.gif new file mode 100644 index 00000000..0b6e23b3 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/chat64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/classphoto64x64.gif b/icon/iconset/nuvola/action64x64/classphoto64x64.gif new file mode 100644 index 00000000..ecf887e1 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/classphoto64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/classphototch64x64.gif b/icon/iconset/nuvola/action64x64/classphototch64x64.gif new file mode 100644 index 00000000..5b95c329 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/classphototch64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/clock64x64.gif b/icon/iconset/nuvola/action64x64/clock64x64.gif new file mode 100644 index 00000000..68509ec6 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/clock64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/config64x64.gif b/icon/iconset/nuvola/action64x64/config64x64.gif new file mode 100644 index 00000000..ea014571 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/config64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/configs64x64.gif b/icon/iconset/nuvola/action64x64/configs64x64.gif new file mode 100644 index 00000000..4adc877f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/configs64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/configtest64x64.gif b/icon/iconset/nuvola/action64x64/configtest64x64.gif new file mode 100644 index 00000000..ad11f261 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/configtest64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/coursesdegree64x64.gif b/icon/iconset/nuvola/action64x64/coursesdegree64x64.gif new file mode 100644 index 00000000..9e9ed20e Binary files /dev/null and b/icon/iconset/nuvola/action64x64/coursesdegree64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/crs64x64.gif b/icon/iconset/nuvola/action64x64/crs64x64.gif new file mode 100644 index 00000000..8293dec8 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/crs64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/crs_alt64x64.gif b/icon/iconset/nuvola/action64x64/crs_alt64x64.gif new file mode 100644 index 00000000..5213ba34 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/crs_alt64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/ctr64x64.gif b/icon/iconset/nuvola/action64x64/ctr64x64.gif new file mode 100644 index 00000000..1b664344 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/ctr64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/cty64x64.gif b/icon/iconset/nuvola/action64x64/cty64x64.gif new file mode 100644 index 00000000..83d48c47 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/cty64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/date64x64.gif b/icon/iconset/nuvola/action64x64/date64x64.gif new file mode 100644 index 00000000..01e32f7f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/date64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/deg64x64.gif b/icon/iconset/nuvola/action64x64/deg64x64.gif new file mode 100644 index 00000000..4f475058 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/deg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/desk64x64.gif b/icon/iconset/nuvola/action64x64/desk64x64.gif new file mode 100644 index 00000000..cf915962 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/desk64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/earth64x64.gif b/icon/iconset/nuvola/action64x64/earth64x64.gif new file mode 100644 index 00000000..83d48c47 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/earth64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editblackboard64x64.gif b/icon/iconset/nuvola/action64x64/editblackboard64x64.gif new file mode 100644 index 00000000..88836dec Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editblackboard64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editcard64x64.gif b/icon/iconset/nuvola/action64x64/editcard64x64.gif new file mode 100644 index 00000000..28555d93 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editcard64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editfolder64x64.gif b/icon/iconset/nuvola/action64x64/editfolder64x64.gif new file mode 100644 index 00000000..5ee06fca Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editfolder64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editfolderold64x64.gif b/icon/iconset/nuvola/action64x64/editfolderold64x64.gif new file mode 100644 index 00000000..9b3fe2c4 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editfolderold64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editfolderuser64x64.gif b/icon/iconset/nuvola/action64x64/editfolderuser64x64.gif new file mode 100644 index 00000000..af8db902 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editfolderuser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editfolderusers64x64.gif b/icon/iconset/nuvola/action64x64/editfolderusers64x64.gif new file mode 100644 index 00000000..e286002a Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editfolderusers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editgrades64x64.gif b/icon/iconset/nuvola/action64x64/editgrades64x64.gif new file mode 100644 index 00000000..c6a3a98f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editgrades64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editnewmsg64x64.gif b/icon/iconset/nuvola/action64x64/editnewmsg64x64.gif new file mode 100644 index 00000000..1fc894be Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editnewmsg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editpack64x64.gif b/icon/iconset/nuvola/action64x64/editpack64x64.gif new file mode 100644 index 00000000..c9e5c334 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editpack64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/edittest64x64.gif b/icon/iconset/nuvola/action64x64/edittest64x64.gif new file mode 100644 index 00000000..883dbe4c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/edittest64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/edittutor64x64.gif b/icon/iconset/nuvola/action64x64/edittutor64x64.gif new file mode 100644 index 00000000..f666d8d3 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/edittutor64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/edituser64x64.gif b/icon/iconset/nuvola/action64x64/edituser64x64.gif new file mode 100644 index 00000000..67a8148f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/edituser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/editusers64x64.gif b/icon/iconset/nuvola/action64x64/editusers64x64.gif new file mode 100644 index 00000000..813db327 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/editusers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/email64x64.gif b/icon/iconset/nuvola/action64x64/email64x64.gif new file mode 100644 index 00000000..1020bcc7 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/email64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/enr64x64.gif b/icon/iconset/nuvola/action64x64/enr64x64.gif new file mode 100644 index 00000000..813db327 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/enr64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/enrollmentrequest64x64.gif b/icon/iconset/nuvola/action64x64/enrollmentrequest64x64.gif new file mode 100644 index 00000000..dd234486 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/enrollmentrequest64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/faq64x64.gif b/icon/iconset/nuvola/action64x64/faq64x64.gif new file mode 100644 index 00000000..d55864e7 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/faq64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/folder64x64.gif b/icon/iconset/nuvola/action64x64/folder64x64.gif new file mode 100644 index 00000000..8293dec8 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/folder64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/folderusers64x64.gif b/icon/iconset/nuvola/action64x64/folderusers64x64.gif new file mode 100644 index 00000000..5df653cf Binary files /dev/null and b/icon/iconset/nuvola/action64x64/folderusers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/forum64x64.gif b/icon/iconset/nuvola/action64x64/forum64x64.gif new file mode 100644 index 00000000..92f8d338 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/forum64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/grades64x64.gif b/icon/iconset/nuvola/action64x64/grades64x64.gif new file mode 100644 index 00000000..4b15269c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/grades64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/groups64x64.gif b/icon/iconset/nuvola/action64x64/groups64x64.gif new file mode 100644 index 00000000..a257ce87 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/groups64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/grouptypes64x64.gif b/icon/iconset/nuvola/action64x64/grouptypes64x64.gif new file mode 100644 index 00000000..e716cb6f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/grouptypes64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/guide64x64.gif b/icon/iconset/nuvola/action64x64/guide64x64.gif new file mode 100644 index 00000000..4dbce3d7 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/guide64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/heart64x64.gif b/icon/iconset/nuvola/action64x64/heart64x64.gif new file mode 100644 index 00000000..6253a29c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/heart64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/house64x64.gif b/icon/iconset/nuvola/action64x64/house64x64.gif new file mode 100644 index 00000000..1b664344 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/house64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/houseteachers64x64.gif b/icon/iconset/nuvola/action64x64/houseteachers64x64.gif new file mode 100644 index 00000000..911f52e0 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/houseteachers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/info64x64.gif b/icon/iconset/nuvola/action64x64/info64x64.gif new file mode 100644 index 00000000..09f6589d Binary files /dev/null and b/icon/iconset/nuvola/action64x64/info64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/infogrades64x64.gif b/icon/iconset/nuvola/action64x64/infogrades64x64.gif new file mode 100644 index 00000000..4465b612 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/infogrades64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/ins64x64.gif b/icon/iconset/nuvola/action64x64/ins64x64.gif new file mode 100644 index 00000000..ed3c1668 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/ins64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/institution64x64.gif b/icon/iconset/nuvola/action64x64/institution64x64.gif new file mode 100644 index 00000000..ed3c1668 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/institution64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/key64x64.gif b/icon/iconset/nuvola/action64x64/key64x64.gif new file mode 100644 index 00000000..1704b627 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/key64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/keyuser64x64.gif b/icon/iconset/nuvola/action64x64/keyuser64x64.gif new file mode 100644 index 00000000..ee4a5148 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/keyuser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/lab64x64.gif b/icon/iconset/nuvola/action64x64/lab64x64.gif new file mode 100644 index 00000000..3133e170 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/lab64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/lightning64x64.gif b/icon/iconset/nuvola/action64x64/lightning64x64.gif new file mode 100644 index 00000000..85b0ef6c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/lightning64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/link64x64.gif b/icon/iconset/nuvola/action64x64/link64x64.gif new file mode 100644 index 00000000..cc3a5907 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/link64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/listtch64x64.gif b/icon/iconset/nuvola/action64x64/listtch64x64.gif new file mode 100644 index 00000000..89f43234 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/listtch64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/msg64x64.gif b/icon/iconset/nuvola/action64x64/msg64x64.gif new file mode 100644 index 00000000..26897a76 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/msg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/mygroups64x64.gif b/icon/iconset/nuvola/action64x64/mygroups64x64.gif new file mode 100644 index 00000000..fd58177b Binary files /dev/null and b/icon/iconset/nuvola/action64x64/mygroups64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/note64x64.gif b/icon/iconset/nuvola/action64x64/note64x64.gif new file mode 100644 index 00000000..fc0969c4 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/note64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/notif64x64.gif b/icon/iconset/nuvola/action64x64/notif64x64.gif new file mode 100644 index 00000000..38789d03 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/notif64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/pendrive64x64.gif b/icon/iconset/nuvola/action64x64/pendrive64x64.gif new file mode 100644 index 00000000..7dd1cf17 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/pendrive64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/per64x64.gif b/icon/iconset/nuvola/action64x64/per64x64.gif new file mode 100644 index 00000000..b0468fec Binary files /dev/null and b/icon/iconset/nuvola/action64x64/per64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/photo64x64.gif b/icon/iconset/nuvola/action64x64/photo64x64.gif new file mode 100644 index 00000000..145c51a1 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/photo64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/picture64x64.gif b/icon/iconset/nuvola/action64x64/picture64x64.gif new file mode 100644 index 00000000..4e660d7f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/picture64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/pie64x64.gif b/icon/iconset/nuvola/action64x64/pie64x64.gif new file mode 100644 index 00000000..be4fb04f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/pie64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/plg64x64.gif b/icon/iconset/nuvola/action64x64/plg64x64.gif new file mode 100644 index 00000000..b273811d Binary files /dev/null and b/icon/iconset/nuvola/action64x64/plg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/presentation64x64.gif b/icon/iconset/nuvola/action64x64/presentation64x64.gif new file mode 100644 index 00000000..03148fe8 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/presentation64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/prf64x64.gif b/icon/iconset/nuvola/action64x64/prf64x64.gif new file mode 100644 index 00000000..b0468fec Binary files /dev/null and b/icon/iconset/nuvola/action64x64/prf64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/qr64x64.gif b/icon/iconset/nuvola/action64x64/qr64x64.gif new file mode 100644 index 00000000..37b36e2a Binary files /dev/null and b/icon/iconset/nuvola/action64x64/qr64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/recmsg64x64.gif b/icon/iconset/nuvola/action64x64/recmsg64x64.gif new file mode 100644 index 00000000..2db10a7c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/recmsg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/recyclelist64x64.gif b/icon/iconset/nuvola/action64x64/recyclelist64x64.gif new file mode 100644 index 00000000..1398eece Binary files /dev/null and b/icon/iconset/nuvola/action64x64/recyclelist64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/removeuser64x64.gif b/icon/iconset/nuvola/action64x64/removeuser64x64.gif new file mode 100644 index 00000000..0dcefd33 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/removeuser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/removeusers64x64.gif b/icon/iconset/nuvola/action64x64/removeusers64x64.gif new file mode 100644 index 00000000..f1a6f396 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/removeusers64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/rol64x64.gif b/icon/iconset/nuvola/action64x64/rol64x64.gif new file mode 100644 index 00000000..0bfd7bcf Binary files /dev/null and b/icon/iconset/nuvola/action64x64/rol64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/role64x64.gif b/icon/iconset/nuvola/action64x64/role64x64.gif new file mode 100644 index 00000000..0bfd7bcf Binary files /dev/null and b/icon/iconset/nuvola/action64x64/role64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/rollcall64x64.gif b/icon/iconset/nuvola/action64x64/rollcall64x64.gif new file mode 100644 index 00000000..36afefbb Binary files /dev/null and b/icon/iconset/nuvola/action64x64/rollcall64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/search64x64.gif b/icon/iconset/nuvola/action64x64/search64x64.gif new file mode 100644 index 00000000..1d0aa882 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/search64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/sntmsg64x64.gif b/icon/iconset/nuvola/action64x64/sntmsg64x64.gif new file mode 100644 index 00000000..ff20ffc4 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/sntmsg64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/sta64x64.gif b/icon/iconset/nuvola/action64x64/sta64x64.gif new file mode 100644 index 00000000..ecf57045 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/sta64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/star64x64.gif b/icon/iconset/nuvola/action64x64/star64x64.gif new file mode 100644 index 00000000..2d869d0b Binary files /dev/null and b/icon/iconset/nuvola/action64x64/star64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/stats64x64.gif b/icon/iconset/nuvola/action64x64/stats64x64.gif new file mode 100644 index 00000000..ecf57045 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/stats64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/statsuser64x64.gif b/icon/iconset/nuvola/action64x64/statsuser64x64.gif new file mode 100644 index 00000000..8219bb82 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/statsuser64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/stop64x64.gif b/icon/iconset/nuvola/action64x64/stop64x64.gif new file mode 100644 index 00000000..b199bf4c Binary files /dev/null and b/icon/iconset/nuvola/action64x64/stop64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/survey64x64.gif b/icon/iconset/nuvola/action64x64/survey64x64.gif new file mode 100644 index 00000000..536c0ac1 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/survey64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/sys64x64.gif b/icon/iconset/nuvola/action64x64/sys64x64.gif new file mode 100644 index 00000000..e716cb6f Binary files /dev/null and b/icon/iconset/nuvola/action64x64/sys64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/tablestats64x64.gif b/icon/iconset/nuvola/action64x64/tablestats64x64.gif new file mode 100644 index 00000000..8230a731 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/tablestats64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/test64x64.gif b/icon/iconset/nuvola/action64x64/test64x64.gif new file mode 100644 index 00000000..b48cdb64 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/test64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/testresult64x64.gif b/icon/iconset/nuvola/action64x64/testresult64x64.gif new file mode 100644 index 00000000..0f69d5df Binary files /dev/null and b/icon/iconset/nuvola/action64x64/testresult64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/tools64x64.gif b/icon/iconset/nuvola/action64x64/tools64x64.gif new file mode 100644 index 00000000..7d1ec406 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/tools64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/tutor64x64.gif b/icon/iconset/nuvola/action64x64/tutor64x64.gif new file mode 100644 index 00000000..ce333c28 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/tutor64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/userlist64x64.gif b/icon/iconset/nuvola/action64x64/userlist64x64.gif new file mode 100644 index 00000000..24c90a52 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/userlist64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/userplugged64x64.gif b/icon/iconset/nuvola/action64x64/userplugged64x64.gif new file mode 100644 index 00000000..3e2b01bc Binary files /dev/null and b/icon/iconset/nuvola/action64x64/userplugged64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/users64x64.gif b/icon/iconset/nuvola/action64x64/users64x64.gif new file mode 100644 index 00000000..ff44f796 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/users64x64.gif differ diff --git a/icon/iconset/nuvola/action64x64/usr64x64.gif b/icon/iconset/nuvola/action64x64/usr64x64.gif new file mode 100644 index 00000000..ff44f796 Binary files /dev/null and b/icon/iconset/nuvola/action64x64/usr64x64.gif differ diff --git a/icon/import16x16.gif b/icon/import16x16.gif new file mode 100644 index 00000000..e19d02ae Binary files /dev/null and b/icon/import16x16.gif differ diff --git a/icon/info16x16.gif b/icon/info16x16.gif new file mode 100644 index 00000000..8087712c Binary files /dev/null and b/icon/info16x16.gif differ diff --git a/icon/ins16x16.gif b/icon/ins16x16.gif new file mode 100644 index 00000000..fbdb163c Binary files /dev/null and b/icon/ins16x16.gif differ diff --git a/icon/ins32x32.gif b/icon/ins32x32.gif new file mode 100644 index 00000000..723fa879 Binary files /dev/null and b/icon/ins32x32.gif differ diff --git a/icon/ins64x64.gif b/icon/ins64x64.gif new file mode 100644 index 00000000..84458e54 Binary files /dev/null and b/icon/ins64x64.gif differ diff --git a/icon/instagram16x16.gif b/icon/instagram16x16.gif new file mode 100644 index 00000000..374ef38b Binary files /dev/null and b/icon/instagram16x16.gif differ diff --git a/icon/instagram32x32.gif b/icon/instagram32x32.gif new file mode 100644 index 00000000..bb554488 Binary files /dev/null and b/icon/instagram32x32.gif differ diff --git a/icon/instagram64x64.gif b/icon/instagram64x64.gif new file mode 100644 index 00000000..ae9fae0d Binary files /dev/null and b/icon/instagram64x64.gif differ diff --git a/icon/institution/aneca16x16.gif b/icon/institution/aneca16x16.gif new file mode 100644 index 00000000..4a39fe66 Binary files /dev/null and b/icon/institution/aneca16x16.gif differ diff --git a/icon/institution/aneca32x32.gif b/icon/institution/aneca32x32.gif new file mode 100644 index 00000000..b89e620e Binary files /dev/null and b/icon/institution/aneca32x32.gif differ diff --git a/icon/institution/aneca64x64.gif b/icon/institution/aneca64x64.gif new file mode 100644 index 00000000..080d4d52 Binary files /dev/null and b/icon/institution/aneca64x64.gif differ diff --git a/icon/institution/artecitta16x16.gif b/icon/institution/artecitta16x16.gif new file mode 100644 index 00000000..905a709d Binary files /dev/null and b/icon/institution/artecitta16x16.gif differ diff --git a/icon/institution/artecitta32x32.gif b/icon/institution/artecitta32x32.gif new file mode 100644 index 00000000..416d1ae8 Binary files /dev/null and b/icon/institution/artecitta32x32.gif differ diff --git a/icon/institution/artecitta64x64.gif b/icon/institution/artecitta64x64.gif new file mode 100644 index 00000000..346a1136 Binary files /dev/null and b/icon/institution/artecitta64x64.gif differ diff --git a/icon/institution/auth.gr16x16.gif b/icon/institution/auth.gr16x16.gif new file mode 100644 index 00000000..faf8bd24 Binary files /dev/null and b/icon/institution/auth.gr16x16.gif differ diff --git a/icon/institution/auth.gr32x32.gif b/icon/institution/auth.gr32x32.gif new file mode 100644 index 00000000..86e7617d Binary files /dev/null and b/icon/institution/auth.gr32x32.gif differ diff --git a/icon/institution/auth.gr64x64.gif b/icon/institution/auth.gr64x64.gif new file mode 100644 index 00000000..8c5d7b2d Binary files /dev/null and b/icon/institution/auth.gr64x64.gif differ diff --git a/icon/institution/cevuna.una.py16x16.gif b/icon/institution/cevuna.una.py16x16.gif new file mode 100644 index 00000000..775a2af6 Binary files /dev/null and b/icon/institution/cevuna.una.py16x16.gif differ diff --git a/icon/institution/cevuna.una.py32x32.gif b/icon/institution/cevuna.una.py32x32.gif new file mode 100644 index 00000000..087b9b04 Binary files /dev/null and b/icon/institution/cevuna.una.py32x32.gif differ diff --git a/icon/institution/cevuna.una.py64x64.gif b/icon/institution/cevuna.una.py64x64.gif new file mode 100644 index 00000000..0c7abc4e Binary files /dev/null and b/icon/institution/cevuna.una.py64x64.gif differ diff --git a/icon/institution/deusto16x16.gif b/icon/institution/deusto16x16.gif new file mode 100644 index 00000000..ec093788 Binary files /dev/null and b/icon/institution/deusto16x16.gif differ diff --git a/icon/institution/deusto32x32.gif b/icon/institution/deusto32x32.gif new file mode 100644 index 00000000..9d4da06c Binary files /dev/null and b/icon/institution/deusto32x32.gif differ diff --git a/icon/institution/deusto64x64.gif b/icon/institution/deusto64x64.gif new file mode 100644 index 00000000..f26504bf Binary files /dev/null and b/icon/institution/deusto64x64.gif differ diff --git a/icon/institution/ehu16x16.gif b/icon/institution/ehu16x16.gif new file mode 100644 index 00000000..a88935bc Binary files /dev/null and b/icon/institution/ehu16x16.gif differ diff --git a/icon/institution/ehu32x32.gif b/icon/institution/ehu32x32.gif new file mode 100644 index 00000000..1c350080 Binary files /dev/null and b/icon/institution/ehu32x32.gif differ diff --git a/icon/institution/ehu64x64.gif b/icon/institution/ehu64x64.gif new file mode 100644 index 00000000..0b913053 Binary files /dev/null and b/icon/institution/ehu64x64.gif differ diff --git a/icon/institution/esco.com16x16.gif b/icon/institution/esco.com16x16.gif new file mode 100644 index 00000000..d443737b Binary files /dev/null and b/icon/institution/esco.com16x16.gif differ diff --git a/icon/institution/esco.com32x32.gif b/icon/institution/esco.com32x32.gif new file mode 100644 index 00000000..bb4541aa Binary files /dev/null and b/icon/institution/esco.com32x32.gif differ diff --git a/icon/institution/esco.com64x64.gif b/icon/institution/esco.com64x64.gif new file mode 100644 index 00000000..b20d7880 Binary files /dev/null and b/icon/institution/esco.com64x64.gif differ diff --git a/icon/institution/funugremp16x16.gif b/icon/institution/funugremp16x16.gif new file mode 100644 index 00000000..c3bf6bc5 Binary files /dev/null and b/icon/institution/funugremp16x16.gif differ diff --git a/icon/institution/funugremp32x32.gif b/icon/institution/funugremp32x32.gif new file mode 100644 index 00000000..01b6f1a6 Binary files /dev/null and b/icon/institution/funugremp32x32.gif differ diff --git a/icon/institution/funugremp64x64.gif b/icon/institution/funugremp64x64.gif new file mode 100644 index 00000000..81df49d4 Binary files /dev/null and b/icon/institution/funugremp64x64.gif differ diff --git a/icon/institution/iac16x16.gif b/icon/institution/iac16x16.gif new file mode 100644 index 00000000..573f3c4c Binary files /dev/null and b/icon/institution/iac16x16.gif differ diff --git a/icon/institution/iac32x32.gif b/icon/institution/iac32x32.gif new file mode 100644 index 00000000..af98f8b6 Binary files /dev/null and b/icon/institution/iac32x32.gif differ diff --git a/icon/institution/iac64x64.gif b/icon/institution/iac64x64.gif new file mode 100644 index 00000000..101eef70 Binary files /dev/null and b/icon/institution/iac64x64.gif differ diff --git a/icon/institution/ie16x16.gif b/icon/institution/ie16x16.gif new file mode 100644 index 00000000..e288669b Binary files /dev/null and b/icon/institution/ie16x16.gif differ diff --git a/icon/institution/ie32x32.gif b/icon/institution/ie32x32.gif new file mode 100644 index 00000000..03f869ea Binary files /dev/null and b/icon/institution/ie32x32.gif differ diff --git a/icon/institution/ie64x64.gif b/icon/institution/ie64x64.gif new file mode 100644 index 00000000..00893c38 Binary files /dev/null and b/icon/institution/ie64x64.gif differ diff --git a/icon/institution/isit16x16.gif b/icon/institution/isit16x16.gif new file mode 100644 index 00000000..0bd97376 Binary files /dev/null and b/icon/institution/isit16x16.gif differ diff --git a/icon/institution/isit32x32.gif b/icon/institution/isit32x32.gif new file mode 100644 index 00000000..83dd613c Binary files /dev/null and b/icon/institution/isit32x32.gif differ diff --git a/icon/institution/isit64x64.gif b/icon/institution/isit64x64.gif new file mode 100644 index 00000000..8dd16692 Binary files /dev/null and b/icon/institution/isit64x64.gif differ diff --git a/icon/institution/junta16x16.gif b/icon/institution/junta16x16.gif new file mode 100644 index 00000000..72c8d145 Binary files /dev/null and b/icon/institution/junta16x16.gif differ diff --git a/icon/institution/junta32x32.gif b/icon/institution/junta32x32.gif new file mode 100644 index 00000000..42086f57 Binary files /dev/null and b/icon/institution/junta32x32.gif differ diff --git a/icon/institution/junta64x64.gif b/icon/institution/junta64x64.gif new file mode 100644 index 00000000..3627d930 Binary files /dev/null and b/icon/institution/junta64x64.gif differ diff --git a/icon/institution/liv.ac.uk16x16.gif b/icon/institution/liv.ac.uk16x16.gif new file mode 100644 index 00000000..c97d7714 Binary files /dev/null and b/icon/institution/liv.ac.uk16x16.gif differ diff --git a/icon/institution/liv.ac.uk32x32.gif b/icon/institution/liv.ac.uk32x32.gif new file mode 100644 index 00000000..c8e98792 Binary files /dev/null and b/icon/institution/liv.ac.uk32x32.gif differ diff --git a/icon/institution/liv.ac.uk64x64.gif b/icon/institution/liv.ac.uk64x64.gif new file mode 100644 index 00000000..6457701c Binary files /dev/null and b/icon/institution/liv.ac.uk64x64.gif differ diff --git a/icon/institution/madoc16x16.gif b/icon/institution/madoc16x16.gif new file mode 100644 index 00000000..e09aee4e Binary files /dev/null and b/icon/institution/madoc16x16.gif differ diff --git a/icon/institution/madoc32x32.gif b/icon/institution/madoc32x32.gif new file mode 100644 index 00000000..9517fd0b Binary files /dev/null and b/icon/institution/madoc32x32.gif differ diff --git a/icon/institution/madoc64x64.gif b/icon/institution/madoc64x64.gif new file mode 100644 index 00000000..aa1d0f81 Binary files /dev/null and b/icon/institution/madoc64x64.gif differ diff --git a/icon/institution/muni16x16.gif b/icon/institution/muni16x16.gif new file mode 100644 index 00000000..8015feda Binary files /dev/null and b/icon/institution/muni16x16.gif differ diff --git a/icon/institution/muni32x32.gif b/icon/institution/muni32x32.gif new file mode 100644 index 00000000..b456a394 Binary files /dev/null and b/icon/institution/muni32x32.gif differ diff --git a/icon/institution/muni64x64.gif b/icon/institution/muni64x64.gif new file mode 100644 index 00000000..4aa3ee90 Binary files /dev/null and b/icon/institution/muni64x64.gif differ diff --git a/icon/institution/nebrija16x16.gif b/icon/institution/nebrija16x16.gif new file mode 100644 index 00000000..65134cbd Binary files /dev/null and b/icon/institution/nebrija16x16.gif differ diff --git a/icon/institution/nebrija32x32.gif b/icon/institution/nebrija32x32.gif new file mode 100644 index 00000000..930c9c53 Binary files /dev/null and b/icon/institution/nebrija32x32.gif differ diff --git a/icon/institution/nebrija64x64.gif b/icon/institution/nebrija64x64.gif new file mode 100644 index 00000000..9c534174 Binary files /dev/null and b/icon/institution/nebrija64x64.gif differ diff --git a/icon/institution/polimi.it16x16.gif b/icon/institution/polimi.it16x16.gif new file mode 100644 index 00000000..0a22b781 Binary files /dev/null and b/icon/institution/polimi.it16x16.gif differ diff --git a/icon/institution/polimi.it32x32.gif b/icon/institution/polimi.it32x32.gif new file mode 100644 index 00000000..b512178b Binary files /dev/null and b/icon/institution/polimi.it32x32.gif differ diff --git a/icon/institution/polimi.it64x64.gif b/icon/institution/polimi.it64x64.gif new file mode 100644 index 00000000..9e9da90c Binary files /dev/null and b/icon/institution/polimi.it64x64.gif differ diff --git a/icon/institution/teithe.gr16x16.gif b/icon/institution/teithe.gr16x16.gif new file mode 100644 index 00000000..a4e1b0e9 Binary files /dev/null and b/icon/institution/teithe.gr16x16.gif differ diff --git a/icon/institution/teithe.gr32x32.gif b/icon/institution/teithe.gr32x32.gif new file mode 100644 index 00000000..45f88844 Binary files /dev/null and b/icon/institution/teithe.gr32x32.gif differ diff --git a/icon/institution/teithe.gr64x64.gif b/icon/institution/teithe.gr64x64.gif new file mode 100644 index 00000000..5ef2da0b Binary files /dev/null and b/icon/institution/teithe.gr64x64.gif differ diff --git a/icon/institution/teol-gr16x16.gif b/icon/institution/teol-gr16x16.gif new file mode 100644 index 00000000..424671a0 Binary files /dev/null and b/icon/institution/teol-gr16x16.gif differ diff --git a/icon/institution/teol-gr32x32.gif b/icon/institution/teol-gr32x32.gif new file mode 100644 index 00000000..aceef710 Binary files /dev/null and b/icon/institution/teol-gr32x32.gif differ diff --git a/icon/institution/teol-gr64x64.gif b/icon/institution/teol-gr64x64.gif new file mode 100644 index 00000000..fc51f1dd Binary files /dev/null and b/icon/institution/teol-gr64x64.gif differ diff --git a/icon/institution/ua16x16.gif b/icon/institution/ua16x16.gif new file mode 100644 index 00000000..2e0a558d Binary files /dev/null and b/icon/institution/ua16x16.gif differ diff --git a/icon/institution/ua32x32.gif b/icon/institution/ua32x32.gif new file mode 100644 index 00000000..862bf94a Binary files /dev/null and b/icon/institution/ua32x32.gif differ diff --git a/icon/institution/ua64x64.gif b/icon/institution/ua64x64.gif new file mode 100644 index 00000000..694b1ae8 Binary files /dev/null and b/icon/institution/ua64x64.gif differ diff --git a/icon/institution/uab16x16.gif b/icon/institution/uab16x16.gif new file mode 100644 index 00000000..8e481d9b Binary files /dev/null and b/icon/institution/uab16x16.gif differ diff --git a/icon/institution/uab32x32.gif b/icon/institution/uab32x32.gif new file mode 100644 index 00000000..35b46bcf Binary files /dev/null and b/icon/institution/uab32x32.gif differ diff --git a/icon/institution/uab64x64.gif b/icon/institution/uab64x64.gif new file mode 100644 index 00000000..53380450 Binary files /dev/null and b/icon/institution/uab64x64.gif differ diff --git a/icon/institution/uagrm.edu.bo16x16.gif b/icon/institution/uagrm.edu.bo16x16.gif new file mode 100644 index 00000000..47126af7 Binary files /dev/null and b/icon/institution/uagrm.edu.bo16x16.gif differ diff --git a/icon/institution/uagrm.edu.bo32x32.gif b/icon/institution/uagrm.edu.bo32x32.gif new file mode 100644 index 00000000..70d57ded Binary files /dev/null and b/icon/institution/uagrm.edu.bo32x32.gif differ diff --git a/icon/institution/uagrm.edu.bo64x64.gif b/icon/institution/uagrm.edu.bo64x64.gif new file mode 100644 index 00000000..1bd56fa4 Binary files /dev/null and b/icon/institution/uagrm.edu.bo64x64.gif differ diff --git a/icon/institution/uah16x16.gif b/icon/institution/uah16x16.gif new file mode 100644 index 00000000..c52c539e Binary files /dev/null and b/icon/institution/uah16x16.gif differ diff --git a/icon/institution/uah32x32.gif b/icon/institution/uah32x32.gif new file mode 100644 index 00000000..66fcb793 Binary files /dev/null and b/icon/institution/uah32x32.gif differ diff --git a/icon/institution/uah64x64.gif b/icon/institution/uah64x64.gif new file mode 100644 index 00000000..8cad3b80 Binary files /dev/null and b/icon/institution/uah64x64.gif differ diff --git a/icon/institution/ual16x16.gif b/icon/institution/ual16x16.gif new file mode 100644 index 00000000..52496632 Binary files /dev/null and b/icon/institution/ual16x16.gif differ diff --git a/icon/institution/ual32x32.gif b/icon/institution/ual32x32.gif new file mode 100644 index 00000000..c97eb3db Binary files /dev/null and b/icon/institution/ual32x32.gif differ diff --git a/icon/institution/ual64x64.gif b/icon/institution/ual64x64.gif new file mode 100644 index 00000000..3b24145e Binary files /dev/null and b/icon/institution/ual64x64.gif differ diff --git a/icon/institution/uam16x16.gif b/icon/institution/uam16x16.gif new file mode 100644 index 00000000..a8d3e59b Binary files /dev/null and b/icon/institution/uam16x16.gif differ diff --git a/icon/institution/uam32x32.gif b/icon/institution/uam32x32.gif new file mode 100644 index 00000000..7926120a Binary files /dev/null and b/icon/institution/uam32x32.gif differ diff --git a/icon/institution/uam64x64.gif b/icon/institution/uam64x64.gif new file mode 100644 index 00000000..7af026b8 Binary files /dev/null and b/icon/institution/uam64x64.gif differ diff --git a/icon/institution/uao16x16.gif b/icon/institution/uao16x16.gif new file mode 100644 index 00000000..c804870e Binary files /dev/null and b/icon/institution/uao16x16.gif differ diff --git a/icon/institution/uao32x32.gif b/icon/institution/uao32x32.gif new file mode 100644 index 00000000..578f15fc Binary files /dev/null and b/icon/institution/uao32x32.gif differ diff --git a/icon/institution/uao64x64.gif b/icon/institution/uao64x64.gif new file mode 100644 index 00000000..0c9267a4 Binary files /dev/null and b/icon/institution/uao64x64.gif differ diff --git a/icon/institution/uass.py16x16.gif b/icon/institution/uass.py16x16.gif new file mode 100644 index 00000000..d72d7cfe Binary files /dev/null and b/icon/institution/uass.py16x16.gif differ diff --git a/icon/institution/uass.py32x32.gif b/icon/institution/uass.py32x32.gif new file mode 100644 index 00000000..b0ef9e5f Binary files /dev/null and b/icon/institution/uass.py32x32.gif differ diff --git a/icon/institution/uass.py64x64.gif b/icon/institution/uass.py64x64.gif new file mode 100644 index 00000000..4a89ce97 Binary files /dev/null and b/icon/institution/uass.py64x64.gif differ diff --git a/icon/institution/uax16x16.gif b/icon/institution/uax16x16.gif new file mode 100644 index 00000000..667f938a Binary files /dev/null and b/icon/institution/uax16x16.gif differ diff --git a/icon/institution/uax32x32.gif b/icon/institution/uax32x32.gif new file mode 100644 index 00000000..849189ac Binary files /dev/null and b/icon/institution/uax32x32.gif differ diff --git a/icon/institution/uax64x64.gif b/icon/institution/uax64x64.gif new file mode 100644 index 00000000..96288228 Binary files /dev/null and b/icon/institution/uax64x64.gif differ diff --git a/icon/institution/ub16x16.gif b/icon/institution/ub16x16.gif new file mode 100644 index 00000000..feff5229 Binary files /dev/null and b/icon/institution/ub16x16.gif differ diff --git a/icon/institution/ub32x32.gif b/icon/institution/ub32x32.gif new file mode 100644 index 00000000..1cd7c11e Binary files /dev/null and b/icon/institution/ub32x32.gif differ diff --git a/icon/institution/ub64x64.gif b/icon/institution/ub64x64.gif new file mode 100644 index 00000000..51645b8d Binary files /dev/null and b/icon/institution/ub64x64.gif differ diff --git a/icon/institution/ubu16x16.gif b/icon/institution/ubu16x16.gif new file mode 100644 index 00000000..4751b74e Binary files /dev/null and b/icon/institution/ubu16x16.gif differ diff --git a/icon/institution/ubu32x32.gif b/icon/institution/ubu32x32.gif new file mode 100644 index 00000000..c6878758 Binary files /dev/null and b/icon/institution/ubu32x32.gif differ diff --git a/icon/institution/ubu64x64.gif b/icon/institution/ubu64x64.gif new file mode 100644 index 00000000..3e1fe932 Binary files /dev/null and b/icon/institution/ubu64x64.gif differ diff --git a/icon/institution/uc3m16x16.gif b/icon/institution/uc3m16x16.gif new file mode 100644 index 00000000..82e9f002 Binary files /dev/null and b/icon/institution/uc3m16x16.gif differ diff --git a/icon/institution/uc3m32x32.gif b/icon/institution/uc3m32x32.gif new file mode 100644 index 00000000..85cefc06 Binary files /dev/null and b/icon/institution/uc3m32x32.gif differ diff --git a/icon/institution/uc3m64x64.gif b/icon/institution/uc3m64x64.gif new file mode 100644 index 00000000..800cd28c Binary files /dev/null and b/icon/institution/uc3m64x64.gif differ diff --git a/icon/institution/uca16x16.gif b/icon/institution/uca16x16.gif new file mode 100644 index 00000000..14173c1d Binary files /dev/null and b/icon/institution/uca16x16.gif differ diff --git a/icon/institution/uca32x32.gif b/icon/institution/uca32x32.gif new file mode 100644 index 00000000..ff454ae4 Binary files /dev/null and b/icon/institution/uca32x32.gif differ diff --git a/icon/institution/uca64x64.gif b/icon/institution/uca64x64.gif new file mode 100644 index 00000000..eecea51c Binary files /dev/null and b/icon/institution/uca64x64.gif differ diff --git a/icon/institution/ucam16x16.gif b/icon/institution/ucam16x16.gif new file mode 100644 index 00000000..934bdfdb Binary files /dev/null and b/icon/institution/ucam16x16.gif differ diff --git a/icon/institution/ucam32x32.gif b/icon/institution/ucam32x32.gif new file mode 100644 index 00000000..d06dfcf2 Binary files /dev/null and b/icon/institution/ucam32x32.gif differ diff --git a/icon/institution/ucam64x64.gif b/icon/institution/ucam64x64.gif new file mode 100644 index 00000000..78391296 Binary files /dev/null and b/icon/institution/ucam64x64.gif differ diff --git a/icon/institution/ucan16x16.gif b/icon/institution/ucan16x16.gif new file mode 100644 index 00000000..a71e47b7 Binary files /dev/null and b/icon/institution/ucan16x16.gif differ diff --git a/icon/institution/ucan32x32.gif b/icon/institution/ucan32x32.gif new file mode 100644 index 00000000..f3f78ce4 Binary files /dev/null and b/icon/institution/ucan32x32.gif differ diff --git a/icon/institution/ucan64x64.gif b/icon/institution/ucan64x64.gif new file mode 100644 index 00000000..2e359b29 Binary files /dev/null and b/icon/institution/ucan64x64.gif differ diff --git a/icon/institution/ucav16x16.gif b/icon/institution/ucav16x16.gif new file mode 100644 index 00000000..98687573 Binary files /dev/null and b/icon/institution/ucav16x16.gif differ diff --git a/icon/institution/ucav32x32.gif b/icon/institution/ucav32x32.gif new file mode 100644 index 00000000..472ca650 Binary files /dev/null and b/icon/institution/ucav32x32.gif differ diff --git a/icon/institution/ucav64x64.gif b/icon/institution/ucav64x64.gif new file mode 100644 index 00000000..c86988f3 Binary files /dev/null and b/icon/institution/ucav64x64.gif differ diff --git a/icon/institution/uch16x16.gif b/icon/institution/uch16x16.gif new file mode 100644 index 00000000..c804870e Binary files /dev/null and b/icon/institution/uch16x16.gif differ diff --git a/icon/institution/uch32x32.gif b/icon/institution/uch32x32.gif new file mode 100644 index 00000000..578f15fc Binary files /dev/null and b/icon/institution/uch32x32.gif differ diff --git a/icon/institution/uch64x64.gif b/icon/institution/uch64x64.gif new file mode 100644 index 00000000..0c9267a4 Binary files /dev/null and b/icon/institution/uch64x64.gif differ diff --git a/icon/institution/ucjc16x16.gif b/icon/institution/ucjc16x16.gif new file mode 100644 index 00000000..edf60784 Binary files /dev/null and b/icon/institution/ucjc16x16.gif differ diff --git a/icon/institution/ucjc32x32.gif b/icon/institution/ucjc32x32.gif new file mode 100644 index 00000000..d79ba9c5 Binary files /dev/null and b/icon/institution/ucjc32x32.gif differ diff --git a/icon/institution/ucjc64x64.gif b/icon/institution/ucjc64x64.gif new file mode 100644 index 00000000..f1aff9e8 Binary files /dev/null and b/icon/institution/ucjc64x64.gif differ diff --git a/icon/institution/uclm16x16.gif b/icon/institution/uclm16x16.gif new file mode 100644 index 00000000..3709266f Binary files /dev/null and b/icon/institution/uclm16x16.gif differ diff --git a/icon/institution/uclm32x32.gif b/icon/institution/uclm32x32.gif new file mode 100644 index 00000000..08a1cb2d Binary files /dev/null and b/icon/institution/uclm32x32.gif differ diff --git a/icon/institution/uclm64x64.gif b/icon/institution/uclm64x64.gif new file mode 100644 index 00000000..f33300cf Binary files /dev/null and b/icon/institution/uclm64x64.gif differ diff --git a/icon/institution/ucm16x16.gif b/icon/institution/ucm16x16.gif new file mode 100644 index 00000000..94f123c1 Binary files /dev/null and b/icon/institution/ucm16x16.gif differ diff --git a/icon/institution/ucm32x32.gif b/icon/institution/ucm32x32.gif new file mode 100644 index 00000000..8104338e Binary files /dev/null and b/icon/institution/ucm32x32.gif differ diff --git a/icon/institution/ucm64x64.gif b/icon/institution/ucm64x64.gif new file mode 100644 index 00000000..e9309705 Binary files /dev/null and b/icon/institution/ucm64x64.gif differ diff --git a/icon/institution/uco16x16.gif b/icon/institution/uco16x16.gif new file mode 100644 index 00000000..f0129a82 Binary files /dev/null and b/icon/institution/uco16x16.gif differ diff --git a/icon/institution/uco32x32.gif b/icon/institution/uco32x32.gif new file mode 100644 index 00000000..86ea3716 Binary files /dev/null and b/icon/institution/uco32x32.gif differ diff --git a/icon/institution/uco64x64.gif b/icon/institution/uco64x64.gif new file mode 100644 index 00000000..0b2a5d42 Binary files /dev/null and b/icon/institution/uco64x64.gif differ diff --git a/icon/institution/ucv16x16.gif b/icon/institution/ucv16x16.gif new file mode 100644 index 00000000..e4a2c1d8 Binary files /dev/null and b/icon/institution/ucv16x16.gif differ diff --git a/icon/institution/ucv32x32.gif b/icon/institution/ucv32x32.gif new file mode 100644 index 00000000..ece28bf8 Binary files /dev/null and b/icon/institution/ucv32x32.gif differ diff --git a/icon/institution/ucv64x64.gif b/icon/institution/ucv64x64.gif new file mode 100644 index 00000000..7d882e24 Binary files /dev/null and b/icon/institution/ucv64x64.gif differ diff --git a/icon/institution/udc16x16.gif b/icon/institution/udc16x16.gif new file mode 100644 index 00000000..dbe792b1 Binary files /dev/null and b/icon/institution/udc16x16.gif differ diff --git a/icon/institution/udc32x32.gif b/icon/institution/udc32x32.gif new file mode 100644 index 00000000..7497856c Binary files /dev/null and b/icon/institution/udc32x32.gif differ diff --git a/icon/institution/udc64x64.gif b/icon/institution/udc64x64.gif new file mode 100644 index 00000000..6204bb29 Binary files /dev/null and b/icon/institution/udc64x64.gif differ diff --git a/icon/institution/udg16x16.gif b/icon/institution/udg16x16.gif new file mode 100644 index 00000000..47fdfc25 Binary files /dev/null and b/icon/institution/udg16x16.gif differ diff --git a/icon/institution/udg32x32.gif b/icon/institution/udg32x32.gif new file mode 100644 index 00000000..c8aa3c41 Binary files /dev/null and b/icon/institution/udg32x32.gif differ diff --git a/icon/institution/udg64x64.gif b/icon/institution/udg64x64.gif new file mode 100644 index 00000000..e8f7d5ea Binary files /dev/null and b/icon/institution/udg64x64.gif differ diff --git a/icon/institution/udima16x16.gif b/icon/institution/udima16x16.gif new file mode 100644 index 00000000..355047fd Binary files /dev/null and b/icon/institution/udima16x16.gif differ diff --git a/icon/institution/udima32x32.gif b/icon/institution/udima32x32.gif new file mode 100644 index 00000000..a6643f37 Binary files /dev/null and b/icon/institution/udima32x32.gif differ diff --git a/icon/institution/udima64x64.gif b/icon/institution/udima64x64.gif new file mode 100644 index 00000000..d4346c02 Binary files /dev/null and b/icon/institution/udima64x64.gif differ diff --git a/icon/institution/udl16x16.gif b/icon/institution/udl16x16.gif new file mode 100644 index 00000000..c3278998 Binary files /dev/null and b/icon/institution/udl16x16.gif differ diff --git a/icon/institution/udl32x32.gif b/icon/institution/udl32x32.gif new file mode 100644 index 00000000..6e74ccfe Binary files /dev/null and b/icon/institution/udl32x32.gif differ diff --git a/icon/institution/udl64x64.gif b/icon/institution/udl64x64.gif new file mode 100644 index 00000000..73d356f0 Binary files /dev/null and b/icon/institution/udl64x64.gif differ diff --git a/icon/institution/uem16x16.gif b/icon/institution/uem16x16.gif new file mode 100644 index 00000000..68a5e820 Binary files /dev/null and b/icon/institution/uem16x16.gif differ diff --git a/icon/institution/uem32x32.gif b/icon/institution/uem32x32.gif new file mode 100644 index 00000000..1d1a2646 Binary files /dev/null and b/icon/institution/uem32x32.gif differ diff --git a/icon/institution/uem64x64.gif b/icon/institution/uem64x64.gif new file mode 100644 index 00000000..f5355398 Binary files /dev/null and b/icon/institution/uem64x64.gif differ diff --git a/icon/institution/uemc16x16.gif b/icon/institution/uemc16x16.gif new file mode 100644 index 00000000..e8465f5d Binary files /dev/null and b/icon/institution/uemc16x16.gif differ diff --git a/icon/institution/uemc32x32.gif b/icon/institution/uemc32x32.gif new file mode 100644 index 00000000..b8421f3f Binary files /dev/null and b/icon/institution/uemc32x32.gif differ diff --git a/icon/institution/uemc64x64.gif b/icon/institution/uemc64x64.gif new file mode 100644 index 00000000..67cbe6d4 Binary files /dev/null and b/icon/institution/uemc64x64.gif differ diff --git a/icon/institution/ufv16x16.gif b/icon/institution/ufv16x16.gif new file mode 100644 index 00000000..cf791435 Binary files /dev/null and b/icon/institution/ufv16x16.gif differ diff --git a/icon/institution/ufv32x32.gif b/icon/institution/ufv32x32.gif new file mode 100644 index 00000000..005857cb Binary files /dev/null and b/icon/institution/ufv32x32.gif differ diff --git a/icon/institution/ufv64x64.gif b/icon/institution/ufv64x64.gif new file mode 100644 index 00000000..1b0b7a6f Binary files /dev/null and b/icon/institution/ufv64x64.gif differ diff --git a/icon/institution/ugr16x16.gif b/icon/institution/ugr16x16.gif new file mode 100644 index 00000000..09c4c350 Binary files /dev/null and b/icon/institution/ugr16x16.gif differ diff --git a/icon/institution/ugr32x32.gif b/icon/institution/ugr32x32.gif new file mode 100644 index 00000000..35e0b1c6 Binary files /dev/null and b/icon/institution/ugr32x32.gif differ diff --git a/icon/institution/ugr64x64.gif b/icon/institution/ugr64x64.gif new file mode 100644 index 00000000..10f2e286 Binary files /dev/null and b/icon/institution/ugr64x64.gif differ diff --git a/icon/institution/uhu16x16.gif b/icon/institution/uhu16x16.gif new file mode 100644 index 00000000..ab996f20 Binary files /dev/null and b/icon/institution/uhu16x16.gif differ diff --git a/icon/institution/uhu32x32.gif b/icon/institution/uhu32x32.gif new file mode 100644 index 00000000..2c31086e Binary files /dev/null and b/icon/institution/uhu32x32.gif differ diff --git a/icon/institution/uhu64x64.gif b/icon/institution/uhu64x64.gif new file mode 100644 index 00000000..d006bf9b Binary files /dev/null and b/icon/institution/uhu64x64.gif differ diff --git a/icon/institution/uib16x16.gif b/icon/institution/uib16x16.gif new file mode 100644 index 00000000..70d0b98a Binary files /dev/null and b/icon/institution/uib16x16.gif differ diff --git a/icon/institution/uib32x32.gif b/icon/institution/uib32x32.gif new file mode 100644 index 00000000..b2786de3 Binary files /dev/null and b/icon/institution/uib32x32.gif differ diff --git a/icon/institution/uib64x64.gif b/icon/institution/uib64x64.gif new file mode 100644 index 00000000..32057b53 Binary files /dev/null and b/icon/institution/uib64x64.gif differ diff --git a/icon/institution/uic16x16.gif b/icon/institution/uic16x16.gif new file mode 100644 index 00000000..3e314c9a Binary files /dev/null and b/icon/institution/uic16x16.gif differ diff --git a/icon/institution/uic32x32.gif b/icon/institution/uic32x32.gif new file mode 100644 index 00000000..a9ed5bfe Binary files /dev/null and b/icon/institution/uic32x32.gif differ diff --git a/icon/institution/uic64x64.gif b/icon/institution/uic64x64.gif new file mode 100644 index 00000000..fe08cdae Binary files /dev/null and b/icon/institution/uic64x64.gif differ diff --git a/icon/institution/uimp16x16.gif b/icon/institution/uimp16x16.gif new file mode 100644 index 00000000..3678631b Binary files /dev/null and b/icon/institution/uimp16x16.gif differ diff --git a/icon/institution/uimp32x32.gif b/icon/institution/uimp32x32.gif new file mode 100644 index 00000000..5ffdc4e9 Binary files /dev/null and b/icon/institution/uimp32x32.gif differ diff --git a/icon/institution/uimp64x64.gif b/icon/institution/uimp64x64.gif new file mode 100644 index 00000000..d75e515c Binary files /dev/null and b/icon/institution/uimp64x64.gif differ diff --git a/icon/institution/uja16x16.gif b/icon/institution/uja16x16.gif new file mode 100644 index 00000000..90600f66 Binary files /dev/null and b/icon/institution/uja16x16.gif differ diff --git a/icon/institution/uja32x32.gif b/icon/institution/uja32x32.gif new file mode 100644 index 00000000..80f3ced1 Binary files /dev/null and b/icon/institution/uja32x32.gif differ diff --git a/icon/institution/uja64x64.gif b/icon/institution/uja64x64.gif new file mode 100644 index 00000000..c6d2fe49 Binary files /dev/null and b/icon/institution/uja64x64.gif differ diff --git a/icon/institution/uji16x16.gif b/icon/institution/uji16x16.gif new file mode 100644 index 00000000..5b2fd103 Binary files /dev/null and b/icon/institution/uji16x16.gif differ diff --git a/icon/institution/uji32x32.gif b/icon/institution/uji32x32.gif new file mode 100644 index 00000000..4055467b Binary files /dev/null and b/icon/institution/uji32x32.gif differ diff --git a/icon/institution/uji64x64.gif b/icon/institution/uji64x64.gif new file mode 100644 index 00000000..480ecbf4 Binary files /dev/null and b/icon/institution/uji64x64.gif differ diff --git a/icon/institution/ulpgc16x16.gif b/icon/institution/ulpgc16x16.gif new file mode 100644 index 00000000..20764240 Binary files /dev/null and b/icon/institution/ulpgc16x16.gif differ diff --git a/icon/institution/ulpgc32x32.gif b/icon/institution/ulpgc32x32.gif new file mode 100644 index 00000000..e05d4943 Binary files /dev/null and b/icon/institution/ulpgc32x32.gif differ diff --git a/icon/institution/ulpgc64x64.gif b/icon/institution/ulpgc64x64.gif new file mode 100644 index 00000000..39985880 Binary files /dev/null and b/icon/institution/ulpgc64x64.gif differ diff --git a/icon/institution/um16x16.gif b/icon/institution/um16x16.gif new file mode 100644 index 00000000..0de609a0 Binary files /dev/null and b/icon/institution/um16x16.gif differ diff --git a/icon/institution/um32x32.gif b/icon/institution/um32x32.gif new file mode 100644 index 00000000..b60cbf48 Binary files /dev/null and b/icon/institution/um32x32.gif differ diff --git a/icon/institution/um64x64.gif b/icon/institution/um64x64.gif new file mode 100644 index 00000000..c057af46 Binary files /dev/null and b/icon/institution/um64x64.gif differ diff --git a/icon/institution/uma16x16.gif b/icon/institution/uma16x16.gif new file mode 100644 index 00000000..f75551b6 Binary files /dev/null and b/icon/institution/uma16x16.gif differ diff --git a/icon/institution/uma32x32.gif b/icon/institution/uma32x32.gif new file mode 100644 index 00000000..95057b97 Binary files /dev/null and b/icon/institution/uma32x32.gif differ diff --git a/icon/institution/uma64x64.gif b/icon/institution/uma64x64.gif new file mode 100644 index 00000000..a7eb75ce Binary files /dev/null and b/icon/institution/uma64x64.gif differ diff --git a/icon/institution/umh16x16.gif b/icon/institution/umh16x16.gif new file mode 100644 index 00000000..c0f92ed0 Binary files /dev/null and b/icon/institution/umh16x16.gif differ diff --git a/icon/institution/umh32x32.gif b/icon/institution/umh32x32.gif new file mode 100644 index 00000000..3d453521 Binary files /dev/null and b/icon/institution/umh32x32.gif differ diff --git a/icon/institution/umh64x64.gif b/icon/institution/umh64x64.gif new file mode 100644 index 00000000..47736ad7 Binary files /dev/null and b/icon/institution/umh64x64.gif differ diff --git a/icon/institution/una.py16x16.gif b/icon/institution/una.py16x16.gif new file mode 100644 index 00000000..840a42f5 Binary files /dev/null and b/icon/institution/una.py16x16.gif differ diff --git a/icon/institution/una.py32x32.gif b/icon/institution/una.py32x32.gif new file mode 100644 index 00000000..9744cfe0 Binary files /dev/null and b/icon/institution/una.py32x32.gif differ diff --git a/icon/institution/una.py64x64.gif b/icon/institution/una.py64x64.gif new file mode 100644 index 00000000..82faf771 Binary files /dev/null and b/icon/institution/una.py64x64.gif differ diff --git a/icon/institution/unav16x16.gif b/icon/institution/unav16x16.gif new file mode 100644 index 00000000..7164c42a Binary files /dev/null and b/icon/institution/unav16x16.gif differ diff --git a/icon/institution/unav32x32.gif b/icon/institution/unav32x32.gif new file mode 100644 index 00000000..8e932ff1 Binary files /dev/null and b/icon/institution/unav32x32.gif differ diff --git a/icon/institution/unav64x64.gif b/icon/institution/unav64x64.gif new file mode 100644 index 00000000..68819009 Binary files /dev/null and b/icon/institution/unav64x64.gif differ diff --git a/icon/institution/uned16x16.gif b/icon/institution/uned16x16.gif new file mode 100644 index 00000000..b51ea207 Binary files /dev/null and b/icon/institution/uned16x16.gif differ diff --git a/icon/institution/uned32x32.gif b/icon/institution/uned32x32.gif new file mode 100644 index 00000000..022f37b5 Binary files /dev/null and b/icon/institution/uned32x32.gif differ diff --git a/icon/institution/uned64x64.gif b/icon/institution/uned64x64.gif new file mode 100644 index 00000000..af27bd4b Binary files /dev/null and b/icon/institution/uned64x64.gif differ diff --git a/icon/institution/unex16x16.gif b/icon/institution/unex16x16.gif new file mode 100644 index 00000000..48561ce2 Binary files /dev/null and b/icon/institution/unex16x16.gif differ diff --git a/icon/institution/unex32x32.gif b/icon/institution/unex32x32.gif new file mode 100644 index 00000000..53c92e4f Binary files /dev/null and b/icon/institution/unex32x32.gif differ diff --git a/icon/institution/unex64x64.gif b/icon/institution/unex64x64.gif new file mode 100644 index 00000000..43616edf Binary files /dev/null and b/icon/institution/unex64x64.gif differ diff --git a/icon/institution/unia16x16.gif b/icon/institution/unia16x16.gif new file mode 100644 index 00000000..f0f08d6e Binary files /dev/null and b/icon/institution/unia16x16.gif differ diff --git a/icon/institution/unia32x32.gif b/icon/institution/unia32x32.gif new file mode 100644 index 00000000..250a4996 Binary files /dev/null and b/icon/institution/unia32x32.gif differ diff --git a/icon/institution/unia64x64.gif b/icon/institution/unia64x64.gif new file mode 100644 index 00000000..87d67048 Binary files /dev/null and b/icon/institution/unia64x64.gif differ diff --git a/icon/institution/unileon16x16.gif b/icon/institution/unileon16x16.gif new file mode 100644 index 00000000..f4f4ff2c Binary files /dev/null and b/icon/institution/unileon16x16.gif differ diff --git a/icon/institution/unileon32x32.gif b/icon/institution/unileon32x32.gif new file mode 100644 index 00000000..12ef32ac Binary files /dev/null and b/icon/institution/unileon32x32.gif differ diff --git a/icon/institution/unileon64x64.gif b/icon/institution/unileon64x64.gif new file mode 100644 index 00000000..6f692a97 Binary files /dev/null and b/icon/institution/unileon64x64.gif differ diff --git a/icon/institution/uniovi16x16.gif b/icon/institution/uniovi16x16.gif new file mode 100644 index 00000000..594757e3 Binary files /dev/null and b/icon/institution/uniovi16x16.gif differ diff --git a/icon/institution/uniovi32x32.gif b/icon/institution/uniovi32x32.gif new file mode 100644 index 00000000..e7c0bd6a Binary files /dev/null and b/icon/institution/uniovi32x32.gif differ diff --git a/icon/institution/uniovi64x64.gif b/icon/institution/uniovi64x64.gif new file mode 100644 index 00000000..0029a9d3 Binary files /dev/null and b/icon/institution/uniovi64x64.gif differ diff --git a/icon/institution/univpm.it16x16.gif b/icon/institution/univpm.it16x16.gif new file mode 100644 index 00000000..08fbb6f6 Binary files /dev/null and b/icon/institution/univpm.it16x16.gif differ diff --git a/icon/institution/univpm.it32x32.gif b/icon/institution/univpm.it32x32.gif new file mode 100644 index 00000000..cb48e23e Binary files /dev/null and b/icon/institution/univpm.it32x32.gif differ diff --git a/icon/institution/univpm.it64x64.gif b/icon/institution/univpm.it64x64.gif new file mode 100644 index 00000000..58cb5bc0 Binary files /dev/null and b/icon/institution/univpm.it64x64.gif differ diff --git a/icon/institution/unizar16x16.gif b/icon/institution/unizar16x16.gif new file mode 100644 index 00000000..88548f4a Binary files /dev/null and b/icon/institution/unizar16x16.gif differ diff --git a/icon/institution/unizar32x32.gif b/icon/institution/unizar32x32.gif new file mode 100644 index 00000000..7aafebf3 Binary files /dev/null and b/icon/institution/unizar32x32.gif differ diff --git a/icon/institution/unizar64x64.gif b/icon/institution/unizar64x64.gif new file mode 100644 index 00000000..51a7ea36 Binary files /dev/null and b/icon/institution/unizar64x64.gif differ diff --git a/icon/institution/uoc16x16.gif b/icon/institution/uoc16x16.gif new file mode 100644 index 00000000..35aee030 Binary files /dev/null and b/icon/institution/uoc16x16.gif differ diff --git a/icon/institution/uoc32x32.gif b/icon/institution/uoc32x32.gif new file mode 100644 index 00000000..d3e05902 Binary files /dev/null and b/icon/institution/uoc32x32.gif differ diff --git a/icon/institution/uoc64x64.gif b/icon/institution/uoc64x64.gif new file mode 100644 index 00000000..df758bfb Binary files /dev/null and b/icon/institution/uoc64x64.gif differ diff --git a/icon/institution/upc16x16.gif b/icon/institution/upc16x16.gif new file mode 100644 index 00000000..f30f9c72 Binary files /dev/null and b/icon/institution/upc16x16.gif differ diff --git a/icon/institution/upc32x32.gif b/icon/institution/upc32x32.gif new file mode 100644 index 00000000..df181d3a Binary files /dev/null and b/icon/institution/upc32x32.gif differ diff --git a/icon/institution/upc64x64.gif b/icon/institution/upc64x64.gif new file mode 100644 index 00000000..6d2b68ab Binary files /dev/null and b/icon/institution/upc64x64.gif differ diff --git a/icon/institution/upco16x16.gif b/icon/institution/upco16x16.gif new file mode 100644 index 00000000..c1908763 Binary files /dev/null and b/icon/institution/upco16x16.gif differ diff --git a/icon/institution/upco32x32.gif b/icon/institution/upco32x32.gif new file mode 100644 index 00000000..4375cf4a Binary files /dev/null and b/icon/institution/upco32x32.gif differ diff --git a/icon/institution/upco64x64.gif b/icon/institution/upco64x64.gif new file mode 100644 index 00000000..f9b4b7f5 Binary files /dev/null and b/icon/institution/upco64x64.gif differ diff --git a/icon/institution/upct16x16.gif b/icon/institution/upct16x16.gif new file mode 100644 index 00000000..06d1d9c3 Binary files /dev/null and b/icon/institution/upct16x16.gif differ diff --git a/icon/institution/upct32x32.gif b/icon/institution/upct32x32.gif new file mode 100644 index 00000000..ad8ce10c Binary files /dev/null and b/icon/institution/upct32x32.gif differ diff --git a/icon/institution/upct64x64.gif b/icon/institution/upct64x64.gif new file mode 100644 index 00000000..c4a6b288 Binary files /dev/null and b/icon/institution/upct64x64.gif differ diff --git a/icon/institution/upf16x16.gif b/icon/institution/upf16x16.gif new file mode 100644 index 00000000..57d0d17b Binary files /dev/null and b/icon/institution/upf16x16.gif differ diff --git a/icon/institution/upf32x32.gif b/icon/institution/upf32x32.gif new file mode 100644 index 00000000..96100a0f Binary files /dev/null and b/icon/institution/upf32x32.gif differ diff --git a/icon/institution/upf64x64.gif b/icon/institution/upf64x64.gif new file mode 100644 index 00000000..2c1a64fb Binary files /dev/null and b/icon/institution/upf64x64.gif differ diff --git a/icon/institution/upm16x16.gif b/icon/institution/upm16x16.gif new file mode 100644 index 00000000..1a2d636a Binary files /dev/null and b/icon/institution/upm16x16.gif differ diff --git a/icon/institution/upm32x32.gif b/icon/institution/upm32x32.gif new file mode 100644 index 00000000..3c4bba0f Binary files /dev/null and b/icon/institution/upm32x32.gif differ diff --git a/icon/institution/upm64x64.gif b/icon/institution/upm64x64.gif new file mode 100644 index 00000000..6c2deb66 Binary files /dev/null and b/icon/institution/upm64x64.gif differ diff --git a/icon/institution/upna16x16.gif b/icon/institution/upna16x16.gif new file mode 100644 index 00000000..d275ee28 Binary files /dev/null and b/icon/institution/upna16x16.gif differ diff --git a/icon/institution/upna32x32.gif b/icon/institution/upna32x32.gif new file mode 100644 index 00000000..ae84e8d3 Binary files /dev/null and b/icon/institution/upna32x32.gif differ diff --git a/icon/institution/upna64x64.gif b/icon/institution/upna64x64.gif new file mode 100644 index 00000000..381b89fb Binary files /dev/null and b/icon/institution/upna64x64.gif differ diff --git a/icon/institution/upo16x16.gif b/icon/institution/upo16x16.gif new file mode 100644 index 00000000..e8f3b56d Binary files /dev/null and b/icon/institution/upo16x16.gif differ diff --git a/icon/institution/upo32x32.gif b/icon/institution/upo32x32.gif new file mode 100644 index 00000000..8b29000e Binary files /dev/null and b/icon/institution/upo32x32.gif differ diff --git a/icon/institution/upo64x64.gif b/icon/institution/upo64x64.gif new file mode 100644 index 00000000..be2221b9 Binary files /dev/null and b/icon/institution/upo64x64.gif differ diff --git a/icon/institution/upsa16x16.gif b/icon/institution/upsa16x16.gif new file mode 100644 index 00000000..c8920f2d Binary files /dev/null and b/icon/institution/upsa16x16.gif differ diff --git a/icon/institution/upsa32x32.gif b/icon/institution/upsa32x32.gif new file mode 100644 index 00000000..d7fe8e48 Binary files /dev/null and b/icon/institution/upsa32x32.gif differ diff --git a/icon/institution/upsa64x64.gif b/icon/institution/upsa64x64.gif new file mode 100644 index 00000000..bfc0f003 Binary files /dev/null and b/icon/institution/upsa64x64.gif differ diff --git a/icon/institution/upv16x16.gif b/icon/institution/upv16x16.gif new file mode 100644 index 00000000..2893b560 Binary files /dev/null and b/icon/institution/upv16x16.gif differ diff --git a/icon/institution/upv32x32.gif b/icon/institution/upv32x32.gif new file mode 100644 index 00000000..9af84873 Binary files /dev/null and b/icon/institution/upv32x32.gif differ diff --git a/icon/institution/upv64x64.gif b/icon/institution/upv64x64.gif new file mode 100644 index 00000000..211e71ec Binary files /dev/null and b/icon/institution/upv64x64.gif differ diff --git a/icon/institution/ur16x16.gif b/icon/institution/ur16x16.gif new file mode 100644 index 00000000..02f136d7 Binary files /dev/null and b/icon/institution/ur16x16.gif differ diff --git a/icon/institution/ur32x32.gif b/icon/institution/ur32x32.gif new file mode 100644 index 00000000..d163da9a Binary files /dev/null and b/icon/institution/ur32x32.gif differ diff --git a/icon/institution/ur64x64.gif b/icon/institution/ur64x64.gif new file mode 100644 index 00000000..4f55914a Binary files /dev/null and b/icon/institution/ur64x64.gif differ diff --git a/icon/institution/urjc16x16.gif b/icon/institution/urjc16x16.gif new file mode 100644 index 00000000..601b29df Binary files /dev/null and b/icon/institution/urjc16x16.gif differ diff --git a/icon/institution/urjc32x32.gif b/icon/institution/urjc32x32.gif new file mode 100644 index 00000000..152b3974 Binary files /dev/null and b/icon/institution/urjc32x32.gif differ diff --git a/icon/institution/urjc64x64.gif b/icon/institution/urjc64x64.gif new file mode 100644 index 00000000..f8af438c Binary files /dev/null and b/icon/institution/urjc64x64.gif differ diff --git a/icon/institution/url16x16.gif b/icon/institution/url16x16.gif new file mode 100644 index 00000000..874ea78a Binary files /dev/null and b/icon/institution/url16x16.gif differ diff --git a/icon/institution/url32x32.gif b/icon/institution/url32x32.gif new file mode 100644 index 00000000..bdd3604a Binary files /dev/null and b/icon/institution/url32x32.gif differ diff --git a/icon/institution/url64x64.gif b/icon/institution/url64x64.gif new file mode 100644 index 00000000..ff7448cb Binary files /dev/null and b/icon/institution/url64x64.gif differ diff --git a/icon/institution/urv16x16.gif b/icon/institution/urv16x16.gif new file mode 100644 index 00000000..d2a98996 Binary files /dev/null and b/icon/institution/urv16x16.gif differ diff --git a/icon/institution/urv32x32.gif b/icon/institution/urv32x32.gif new file mode 100644 index 00000000..cf1df09f Binary files /dev/null and b/icon/institution/urv32x32.gif differ diff --git a/icon/institution/urv64x64.gif b/icon/institution/urv64x64.gif new file mode 100644 index 00000000..05a607c3 Binary files /dev/null and b/icon/institution/urv64x64.gif differ diff --git a/icon/institution/us16x16.gif b/icon/institution/us16x16.gif new file mode 100644 index 00000000..29efda1b Binary files /dev/null and b/icon/institution/us16x16.gif differ diff --git a/icon/institution/us32x32.gif b/icon/institution/us32x32.gif new file mode 100644 index 00000000..a799b419 Binary files /dev/null and b/icon/institution/us32x32.gif differ diff --git a/icon/institution/us64x64.gif b/icon/institution/us64x64.gif new file mode 100644 index 00000000..1a5805e5 Binary files /dev/null and b/icon/institution/us64x64.gif differ diff --git a/icon/institution/usal16x16.gif b/icon/institution/usal16x16.gif new file mode 100644 index 00000000..abaf6bcf Binary files /dev/null and b/icon/institution/usal16x16.gif differ diff --git a/icon/institution/usal32x32.gif b/icon/institution/usal32x32.gif new file mode 100644 index 00000000..569c76f2 Binary files /dev/null and b/icon/institution/usal32x32.gif differ diff --git a/icon/institution/usal64x64.gif b/icon/institution/usal64x64.gif new file mode 100644 index 00000000..a1c82fe9 Binary files /dev/null and b/icon/institution/usal64x64.gif differ diff --git a/icon/institution/usc16x16.gif b/icon/institution/usc16x16.gif new file mode 100644 index 00000000..c5f4aa88 Binary files /dev/null and b/icon/institution/usc16x16.gif differ diff --git a/icon/institution/usc32x32.gif b/icon/institution/usc32x32.gif new file mode 100644 index 00000000..c3a39507 Binary files /dev/null and b/icon/institution/usc32x32.gif differ diff --git a/icon/institution/usc64x64.gif b/icon/institution/usc64x64.gif new file mode 100644 index 00000000..e398e1bc Binary files /dev/null and b/icon/institution/usc64x64.gif differ diff --git a/icon/institution/usj16x16.gif b/icon/institution/usj16x16.gif new file mode 100644 index 00000000..0f21f662 Binary files /dev/null and b/icon/institution/usj16x16.gif differ diff --git a/icon/institution/usj32x32.gif b/icon/institution/usj32x32.gif new file mode 100644 index 00000000..7343a2df Binary files /dev/null and b/icon/institution/usj32x32.gif differ diff --git a/icon/institution/usj64x64.gif b/icon/institution/usj64x64.gif new file mode 100644 index 00000000..c9b898b7 Binary files /dev/null and b/icon/institution/usj64x64.gif differ diff --git a/icon/institution/uspceu16x16.gif b/icon/institution/uspceu16x16.gif new file mode 100644 index 00000000..c804870e Binary files /dev/null and b/icon/institution/uspceu16x16.gif differ diff --git a/icon/institution/uspceu32x32.gif b/icon/institution/uspceu32x32.gif new file mode 100644 index 00000000..578f15fc Binary files /dev/null and b/icon/institution/uspceu32x32.gif differ diff --git a/icon/institution/uspceu64x64.gif b/icon/institution/uspceu64x64.gif new file mode 100644 index 00000000..0c9267a4 Binary files /dev/null and b/icon/institution/uspceu64x64.gif differ diff --git a/icon/institution/utpl.edu.ec16x16.gif b/icon/institution/utpl.edu.ec16x16.gif new file mode 100644 index 00000000..744d5c90 Binary files /dev/null and b/icon/institution/utpl.edu.ec16x16.gif differ diff --git a/icon/institution/utpl.edu.ec32x32.gif b/icon/institution/utpl.edu.ec32x32.gif new file mode 100644 index 00000000..b5c6ada7 Binary files /dev/null and b/icon/institution/utpl.edu.ec32x32.gif differ diff --git a/icon/institution/utpl.edu.ec64x64.gif b/icon/institution/utpl.edu.ec64x64.gif new file mode 100644 index 00000000..7797811d Binary files /dev/null and b/icon/institution/utpl.edu.ec64x64.gif differ diff --git a/icon/institution/uv16x16.gif b/icon/institution/uv16x16.gif new file mode 100644 index 00000000..5dcb260d Binary files /dev/null and b/icon/institution/uv16x16.gif differ diff --git a/icon/institution/uv32x32.gif b/icon/institution/uv32x32.gif new file mode 100644 index 00000000..ccafd529 Binary files /dev/null and b/icon/institution/uv32x32.gif differ diff --git a/icon/institution/uv64x64.gif b/icon/institution/uv64x64.gif new file mode 100644 index 00000000..ddbc8c23 Binary files /dev/null and b/icon/institution/uv64x64.gif differ diff --git a/icon/institution/uva16x16.gif b/icon/institution/uva16x16.gif new file mode 100644 index 00000000..0a1aeaa3 Binary files /dev/null and b/icon/institution/uva16x16.gif differ diff --git a/icon/institution/uva32x32.gif b/icon/institution/uva32x32.gif new file mode 100644 index 00000000..8160db27 Binary files /dev/null and b/icon/institution/uva32x32.gif differ diff --git a/icon/institution/uva64x64.gif b/icon/institution/uva64x64.gif new file mode 100644 index 00000000..377baf73 Binary files /dev/null and b/icon/institution/uva64x64.gif differ diff --git a/icon/institution/uvic16x16.gif b/icon/institution/uvic16x16.gif new file mode 100644 index 00000000..c1fa9cb1 Binary files /dev/null and b/icon/institution/uvic16x16.gif differ diff --git a/icon/institution/uvic32x32.gif b/icon/institution/uvic32x32.gif new file mode 100644 index 00000000..86f74bf6 Binary files /dev/null and b/icon/institution/uvic32x32.gif differ diff --git a/icon/institution/uvic64x64.gif b/icon/institution/uvic64x64.gif new file mode 100644 index 00000000..ded94247 Binary files /dev/null and b/icon/institution/uvic64x64.gif differ diff --git a/icon/institution/uvigo16x16.gif b/icon/institution/uvigo16x16.gif new file mode 100644 index 00000000..d3b36fd8 Binary files /dev/null and b/icon/institution/uvigo16x16.gif differ diff --git a/icon/institution/uvigo32x32.gif b/icon/institution/uvigo32x32.gif new file mode 100644 index 00000000..2b59f125 Binary files /dev/null and b/icon/institution/uvigo32x32.gif differ diff --git a/icon/institution/uvigo64x64.gif b/icon/institution/uvigo64x64.gif new file mode 100644 index 00000000..016d5949 Binary files /dev/null and b/icon/institution/uvigo64x64.gif differ diff --git a/icon/institution/zst16x16.gif b/icon/institution/zst16x16.gif new file mode 100644 index 00000000..46e42bd4 Binary files /dev/null and b/icon/institution/zst16x16.gif differ diff --git a/icon/institution/zst32x32.gif b/icon/institution/zst32x32.gif new file mode 100644 index 00000000..5ee01149 Binary files /dev/null and b/icon/institution/zst32x32.gif differ diff --git a/icon/institution/zst64x64.gif b/icon/institution/zst64x64.gif new file mode 100644 index 00000000..088b750f Binary files /dev/null and b/icon/institution/zst64x64.gif differ diff --git a/icon/institution16x16.gif b/icon/institution16x16.gif new file mode 100644 index 00000000..fbdb163c Binary files /dev/null and b/icon/institution16x16.gif differ diff --git a/icon/key16x16.gif b/icon/key16x16.gif new file mode 100644 index 00000000..5ec1fdf0 Binary files /dev/null and b/icon/key16x16.gif differ diff --git a/icon/key320x320.tif b/icon/key320x320.tif new file mode 100644 index 00000000..2dfbf6dd Binary files /dev/null and b/icon/key320x320.tif differ diff --git a/icon/layout00_32x20.gif b/icon/layout00_32x20.gif new file mode 100644 index 00000000..84fd2af1 Binary files /dev/null and b/icon/layout00_32x20.gif differ diff --git a/icon/layout01_32x20.gif b/icon/layout01_32x20.gif new file mode 100644 index 00000000..58f9ebb1 Binary files /dev/null and b/icon/layout01_32x20.gif differ diff --git a/icon/layout10_32x20.gif b/icon/layout10_32x20.gif new file mode 100644 index 00000000..0ce1db1e Binary files /dev/null and b/icon/layout10_32x20.gif differ diff --git a/icon/layout11_32x20.gif b/icon/layout11_32x20.gif new file mode 100644 index 00000000..77d202e0 Binary files /dev/null and b/icon/layout11_32x20.gif differ diff --git a/icon/left_off16x16.gif b/icon/left_off16x16.gif new file mode 100644 index 00000000..2dd06289 Binary files /dev/null and b/icon/left_off16x16.gif differ diff --git a/icon/left_on16x16.gif b/icon/left_on16x16.gif new file mode 100644 index 00000000..17840296 Binary files /dev/null and b/icon/left_on16x16.gif differ diff --git a/icon/lightblue1x36.gif b/icon/lightblue1x36.gif new file mode 100644 index 00000000..912b42bb Binary files /dev/null and b/icon/lightblue1x36.gif differ diff --git a/icon/list16x16.gif b/icon/list16x16.gif new file mode 100644 index 00000000..686e637f Binary files /dev/null and b/icon/list16x16.gif differ diff --git a/icon/list32x32.gif b/icon/list32x32.gif new file mode 100644 index 00000000..58ecccea Binary files /dev/null and b/icon/list32x32.gif differ diff --git a/icon/login-green320x320.tif b/icon/login-green320x320.tif new file mode 100644 index 00000000..f722d958 Binary files /dev/null and b/icon/login-green320x320.tif differ diff --git a/icon/login16x16.gif b/icon/login16x16.gif new file mode 100644 index 00000000..9bcd3e73 Binary files /dev/null and b/icon/login16x16.gif differ diff --git a/icon/login320x320.tif b/icon/login320x320.tif new file mode 100644 index 00000000..2c25add2 Binary files /dev/null and b/icon/login320x320.tif differ diff --git a/icon/logout-red320x320.tif b/icon/logout-red320x320.tif new file mode 100644 index 00000000..411918da Binary files /dev/null and b/icon/logout-red320x320.tif differ diff --git a/icon/logout16x16.gif b/icon/logout16x16.gif new file mode 100644 index 00000000..cfc9609b Binary files /dev/null and b/icon/logout16x16.gif differ diff --git a/icon/logout320x320.tif b/icon/logout320x320.tif new file mode 100644 index 00000000..8f368d56 Binary files /dev/null and b/icon/logout320x320.tif differ diff --git a/icon/mail13x10.gif b/icon/mail13x10.gif new file mode 100644 index 00000000..63da00d5 Binary files /dev/null and b/icon/mail13x10.gif differ diff --git a/icon/mail_16x16.gif b/icon/mail_16x16.gif new file mode 100644 index 00000000..e2bd5bfd Binary files /dev/null and b/icon/mail_16x16.gif differ diff --git a/icon/male12x12.gif b/icon/male12x12.gif new file mode 100644 index 00000000..773dffc9 Binary files /dev/null and b/icon/male12x12.gif differ diff --git a/icon/male16x16.gif b/icon/male16x16.gif new file mode 100644 index 00000000..aa677a2a Binary files /dev/null and b/icon/male16x16.gif differ diff --git a/icon/male320x320.tif b/icon/male320x320.tif new file mode 100644 index 00000000..63756b21 Binary files /dev/null and b/icon/male320x320.tif differ diff --git a/icon/mallah48x1.gif b/icon/mallah48x1.gif new file mode 100644 index 00000000..d9c5020f Binary files /dev/null and b/icon/mallah48x1.gif differ diff --git a/icon/mallav48x1.gif b/icon/mallav48x1.gif new file mode 100644 index 00000000..d48fa100 Binary files /dev/null and b/icon/mallav48x1.gif differ diff --git a/icon/mbb1_1x32.gif b/icon/mbb1_1x32.gif new file mode 100644 index 00000000..ac199de6 Binary files /dev/null and b/icon/mbb1_1x32.gif differ diff --git a/icon/mbw1_1x4.gif b/icon/mbw1_1x4.gif new file mode 100644 index 00000000..9c3b21ca Binary files /dev/null and b/icon/mbw1_1x4.gif differ diff --git a/icon/mbw2_4x1.gif b/icon/mbw2_4x1.gif new file mode 100644 index 00000000..f8b2024f Binary files /dev/null and b/icon/mbw2_4x1.gif differ diff --git a/icon/mbw3_4x1.gif b/icon/mbw3_4x1.gif new file mode 100644 index 00000000..810a5783 Binary files /dev/null and b/icon/mbw3_4x1.gif differ diff --git a/icon/mbw4_1x4.gif b/icon/mbw4_1x4.gif new file mode 100644 index 00000000..8c04beda Binary files /dev/null and b/icon/mbw4_1x4.gif differ diff --git a/icon/mgw1_1x4.gif b/icon/mgw1_1x4.gif new file mode 100644 index 00000000..e9f5342f Binary files /dev/null and b/icon/mgw1_1x4.gif differ diff --git a/icon/mgw2_4x1.gif b/icon/mgw2_4x1.gif new file mode 100644 index 00000000..820d6985 Binary files /dev/null and b/icon/mgw2_4x1.gif differ diff --git a/icon/mgw3_4x1.gif b/icon/mgw3_4x1.gif new file mode 100644 index 00000000..4f5a0ba8 Binary files /dev/null and b/icon/mgw3_4x1.gif differ diff --git a/icon/mgw4_1x4.gif b/icon/mgw4_1x4.gif new file mode 100644 index 00000000..dc58c120 Binary files /dev/null and b/icon/mgw4_1x4.gif differ diff --git a/icon/mobile320x320.tif b/icon/mobile320x320.tif new file mode 100644 index 00000000..77f4ca0b Binary files /dev/null and b/icon/mobile320x320.tif differ diff --git a/icon/mobile32x32.gif b/icon/mobile32x32.gif new file mode 100644 index 00000000..3e2b39ef Binary files /dev/null and b/icon/mobile32x32.gif differ diff --git a/icon/moodle48x48.png b/icon/moodle48x48.png new file mode 100644 index 00000000..ee6add95 Binary files /dev/null and b/icon/moodle48x48.png differ diff --git a/icon/msg-closed16x16.gif b/icon/msg-closed16x16.gif new file mode 100644 index 00000000..f7d03e8e Binary files /dev/null and b/icon/msg-closed16x16.gif differ diff --git a/icon/msg-fwd-del16x16.gif b/icon/msg-fwd-del16x16.gif new file mode 100644 index 00000000..2cc3b8a5 Binary files /dev/null and b/icon/msg-fwd-del16x16.gif differ diff --git a/icon/msg-fwd16x16.gif b/icon/msg-fwd16x16.gif new file mode 100644 index 00000000..c3860cdc Binary files /dev/null and b/icon/msg-fwd16x16.gif differ diff --git a/icon/msg-open-del16x16.gif b/icon/msg-open-del16x16.gif new file mode 100644 index 00000000..b006243f Binary files /dev/null and b/icon/msg-open-del16x16.gif differ diff --git a/icon/msg-open16x16.gif b/icon/msg-open16x16.gif new file mode 100644 index 00000000..c4115f2f Binary files /dev/null and b/icon/msg-open16x16.gif differ diff --git a/icon/msg-replied16x16.gif b/icon/msg-replied16x16.gif new file mode 100644 index 00000000..08be0d6d Binary files /dev/null and b/icon/msg-replied16x16.gif differ diff --git a/icon/msg-unread-del16x16.gif b/icon/msg-unread-del16x16.gif new file mode 100644 index 00000000..741b59d7 Binary files /dev/null and b/icon/msg-unread-del16x16.gif differ diff --git a/icon/msg-unread16x16.gif b/icon/msg-unread16x16.gif new file mode 100644 index 00000000..73a373c0 Binary files /dev/null and b/icon/msg-unread16x16.gif differ diff --git a/icon/msg16x16.gif b/icon/msg16x16.gif new file mode 100644 index 00000000..09840aab Binary files /dev/null and b/icon/msg16x16.gif differ diff --git a/icon/msg_closed12x12.gif b/icon/msg_closed12x12.gif new file mode 100644 index 00000000..835a8732 Binary files /dev/null and b/icon/msg_closed12x12.gif differ diff --git a/icon/msg_closed16x16.gif b/icon/msg_closed16x16.gif new file mode 100644 index 00000000..e2bd5bfd Binary files /dev/null and b/icon/msg_closed16x16.gif differ diff --git a/icon/msg_fwd12x12.gif b/icon/msg_fwd12x12.gif new file mode 100644 index 00000000..381e486a Binary files /dev/null and b/icon/msg_fwd12x12.gif differ diff --git a/icon/msg_fwd16x16.gif b/icon/msg_fwd16x16.gif new file mode 100644 index 00000000..9260ce52 Binary files /dev/null and b/icon/msg_fwd16x16.gif differ diff --git a/icon/msg_fwd_del12x12.gif b/icon/msg_fwd_del12x12.gif new file mode 100644 index 00000000..8abac56f Binary files /dev/null and b/icon/msg_fwd_del12x12.gif differ diff --git a/icon/msg_new16x16.gif b/icon/msg_new16x16.gif new file mode 100644 index 00000000..98bd15e7 Binary files /dev/null and b/icon/msg_new16x16.gif differ diff --git a/icon/msg_open12x12.gif b/icon/msg_open12x12.gif new file mode 100644 index 00000000..0e409125 Binary files /dev/null and b/icon/msg_open12x12.gif differ diff --git a/icon/msg_open16x16.gif b/icon/msg_open16x16.gif new file mode 100644 index 00000000..ddf371fd Binary files /dev/null and b/icon/msg_open16x16.gif differ diff --git a/icon/msg_open_blink16x16.gif b/icon/msg_open_blink16x16.gif new file mode 100644 index 00000000..27b62cf1 Binary files /dev/null and b/icon/msg_open_blink16x16.gif differ diff --git a/icon/msg_open_del12x12.gif b/icon/msg_open_del12x12.gif new file mode 100644 index 00000000..b024b332 Binary files /dev/null and b/icon/msg_open_del12x12.gif differ diff --git a/icon/msg_replied16x16.gif b/icon/msg_replied16x16.gif new file mode 100644 index 00000000..206d8007 Binary files /dev/null and b/icon/msg_replied16x16.gif differ diff --git a/icon/msg_unread12x12.gif b/icon/msg_unread12x12.gif new file mode 100644 index 00000000..9cc597b2 Binary files /dev/null and b/icon/msg_unread12x12.gif differ diff --git a/icon/msg_unread16x16.gif b/icon/msg_unread16x16.gif new file mode 100644 index 00000000..f9ccff1e Binary files /dev/null and b/icon/msg_unread16x16.gif differ diff --git a/icon/msg_unread_del12x12.gif b/icon/msg_unread_del12x12.gif new file mode 100644 index 00000000..4fcf891f Binary files /dev/null and b/icon/msg_unread_del12x12.gif differ diff --git a/icon/new12x12.gif b/icon/new12x12.gif new file mode 100644 index 00000000..f68b9a84 Binary files /dev/null and b/icon/new12x12.gif differ diff --git a/icon/new16x16.gif b/icon/new16x16.gif new file mode 100644 index 00000000..114c6d64 Binary files /dev/null and b/icon/new16x16.gif differ diff --git a/icon/notice/post-it_abajo_120x15.png b/icon/notice/post-it_abajo_120x15.png new file mode 100644 index 00000000..5a1069da Binary files /dev/null and b/icon/notice/post-it_abajo_120x15.png differ diff --git a/icon/notice/post-it_arriba_12x100.png b/icon/notice/post-it_arriba_12x100.png new file mode 100644 index 00000000..beb9018b Binary files /dev/null and b/icon/notice/post-it_arriba_12x100.png differ diff --git a/icon/notice/post-it_arriba_88x100.png b/icon/notice/post-it_arriba_88x100.png new file mode 100644 index 00000000..73e7ee61 Binary files /dev/null and b/icon/notice/post-it_arriba_88x100.png differ diff --git a/icon/notice/post-it_arriba_derecha_10x100.png b/icon/notice/post-it_arriba_derecha_10x100.png new file mode 100644 index 00000000..70fc9739 Binary files /dev/null and b/icon/notice/post-it_arriba_derecha_10x100.png differ diff --git a/icon/notice/post-it_arriba_izquierda_10x100.png b/icon/notice/post-it_arriba_izquierda_10x100.png new file mode 100644 index 00000000..7fb43925 Binary files /dev/null and b/icon/notice/post-it_arriba_izquierda_10x100.png differ diff --git a/icon/notice/post-it_centro_100x1.png b/icon/notice/post-it_centro_100x1.png new file mode 100644 index 00000000..77838b9e Binary files /dev/null and b/icon/notice/post-it_centro_100x1.png differ diff --git a/icon/notice/post-it_derecha_10x1.png b/icon/notice/post-it_derecha_10x1.png new file mode 100644 index 00000000..701a1f79 Binary files /dev/null and b/icon/notice/post-it_derecha_10x1.png differ diff --git a/icon/notice/post-it_izquierda_10x1.png b/icon/notice/post-it_izquierda_10x1.png new file mode 100644 index 00000000..969f550f Binary files /dev/null and b/icon/notice/post-it_izquierda_10x1.png differ diff --git a/icon/nue12x12.gif b/icon/nue12x12.gif new file mode 100644 index 00000000..f44841fa Binary files /dev/null and b/icon/nue12x12.gif differ diff --git a/icon/ok12x12.gif b/icon/ok12x12.gif new file mode 100644 index 00000000..82a8047d Binary files /dev/null and b/icon/ok12x12.gif differ diff --git a/icon/ok16x16.gif b/icon/ok16x16.gif new file mode 100644 index 00000000..7ebe208b Binary files /dev/null and b/icon/ok16x16.gif differ diff --git a/icon/ok_green16x16.gif b/icon/ok_green16x16.gif new file mode 100644 index 00000000..7ebe208b Binary files /dev/null and b/icon/ok_green16x16.gif differ diff --git a/icon/ok_off16x16.gif b/icon/ok_off16x16.gif new file mode 100644 index 00000000..f8cd1e7f Binary files /dev/null and b/icon/ok_off16x16.gif differ diff --git a/icon/ok_on16x16.gif b/icon/ok_on16x16.gif new file mode 100644 index 00000000..368adce5 Binary files /dev/null and b/icon/ok_on16x16.gif differ diff --git a/icon/ok_red16x16.gif b/icon/ok_red16x16.gif new file mode 100644 index 00000000..2d5caca9 Binary files /dev/null and b/icon/ok_red16x16.gif differ diff --git a/icon/open12x12.gif b/icon/open12x12.gif new file mode 100644 index 00000000..05967182 Binary files /dev/null and b/icon/open12x12.gif differ diff --git a/icon/open_off12x12.gif b/icon/open_off12x12.gif new file mode 100644 index 00000000..ecf61aae Binary files /dev/null and b/icon/open_off12x12.gif differ diff --git a/icon/open_off16x16.gif b/icon/open_off16x16.gif new file mode 100644 index 00000000..1dae2a1d Binary files /dev/null and b/icon/open_off16x16.gif differ diff --git a/icon/open_on12x12.gif b/icon/open_on12x12.gif new file mode 100644 index 00000000..dd6fc3ef Binary files /dev/null and b/icon/open_on12x12.gif differ diff --git a/icon/open_on16x16.gif b/icon/open_on16x16.gif new file mode 100644 index 00000000..448728a3 Binary files /dev/null and b/icon/open_on16x16.gif differ diff --git a/icon/pack16x16.gif b/icon/pack16x16.gif new file mode 100644 index 00000000..0806aefa Binary files /dev/null and b/icon/pack16x16.gif differ diff --git a/icon/paperli16x16.gif b/icon/paperli16x16.gif new file mode 100644 index 00000000..27854db0 Binary files /dev/null and b/icon/paperli16x16.gif differ diff --git a/icon/paperli32x32.gif b/icon/paperli32x32.gif new file mode 100644 index 00000000..33ad2ed3 Binary files /dev/null and b/icon/paperli32x32.gif differ diff --git a/icon/paperli64x64.gif b/icon/paperli64x64.gif new file mode 100644 index 00000000..faaed825 Binary files /dev/null and b/icon/paperli64x64.gif differ diff --git a/icon/paste12x12.gif b/icon/paste12x12.gif new file mode 100644 index 00000000..3bd183e1 Binary files /dev/null and b/icon/paste12x12.gif differ diff --git a/icon/paste_off12x12.gif b/icon/paste_off12x12.gif new file mode 100644 index 00000000..283db8f1 Binary files /dev/null and b/icon/paste_off12x12.gif differ diff --git a/icon/paste_off16x16.gif b/icon/paste_off16x16.gif new file mode 100644 index 00000000..0a34909d Binary files /dev/null and b/icon/paste_off16x16.gif differ diff --git a/icon/paste_on16x16.gif b/icon/paste_on16x16.gif new file mode 100644 index 00000000..f3737697 Binary files /dev/null and b/icon/paste_on16x16.gif differ diff --git a/icon/pen12x12.gif b/icon/pen12x12.gif new file mode 100644 index 00000000..a5226766 Binary files /dev/null and b/icon/pen12x12.gif differ diff --git a/icon/photo12x12.gif b/icon/photo12x12.gif new file mode 100644 index 00000000..1b2287d6 Binary files /dev/null and b/icon/photo12x12.gif differ diff --git a/icon/photo16x16.gif b/icon/photo16x16.gif new file mode 100644 index 00000000..ed26d3bf Binary files /dev/null and b/icon/photo16x16.gif differ diff --git a/icon/pinoff12x12.gif b/icon/pinoff12x12.gif new file mode 100644 index 00000000..7abe2ce5 Binary files /dev/null and b/icon/pinoff12x12.gif differ diff --git a/icon/pinon12x12.gif b/icon/pinon12x12.gif new file mode 100644 index 00000000..b4d5266e Binary files /dev/null and b/icon/pinon12x12.gif differ diff --git a/icon/pinterest16x16.gif b/icon/pinterest16x16.gif new file mode 100644 index 00000000..51c98e2f Binary files /dev/null and b/icon/pinterest16x16.gif differ diff --git a/icon/pinterest32x32.gif b/icon/pinterest32x32.gif new file mode 100644 index 00000000..21325ffe Binary files /dev/null and b/icon/pinterest32x32.gif differ diff --git a/icon/pinterest64x64.gif b/icon/pinterest64x64.gif new file mode 100644 index 00000000..dfd639ba Binary files /dev/null and b/icon/pinterest64x64.gif differ diff --git a/icon/plugin/chat24x24.gif b/icon/plugin/chat24x24.gif new file mode 100644 index 00000000..190516b8 Binary files /dev/null and b/icon/plugin/chat24x24.gif differ diff --git a/icon/plugin/ctrl24x24.gif b/icon/plugin/ctrl24x24.gif new file mode 100644 index 00000000..3f7a2e1b Binary files /dev/null and b/icon/plugin/ctrl24x24.gif differ diff --git a/icon/plugin/jigsaw24x24.gif b/icon/plugin/jigsaw24x24.gif new file mode 100644 index 00000000..1214f1b9 Binary files /dev/null and b/icon/plugin/jigsaw24x24.gif differ diff --git a/icon/plugin/swad24x24.gif b/icon/plugin/swad24x24.gif new file mode 100644 index 00000000..5f93e20e Binary files /dev/null and b/icon/plugin/swad24x24.gif differ diff --git a/icon/print16x16.gif b/icon/print16x16.gif new file mode 100644 index 00000000..a1f0c8dd Binary files /dev/null and b/icon/print16x16.gif differ diff --git a/icon/print320x320.tif b/icon/print320x320.tif new file mode 100644 index 00000000..8d80c1fa Binary files /dev/null and b/icon/print320x320.tif differ diff --git a/icon/printer16x16.gif b/icon/printer16x16.gif new file mode 100644 index 00000000..2d124112 Binary files /dev/null and b/icon/printer16x16.gif differ diff --git a/icon/qr16x16.gif b/icon/qr16x16.gif new file mode 100644 index 00000000..adc80e47 Binary files /dev/null and b/icon/qr16x16.gif differ diff --git a/icon/r1x14.gif b/icon/r1x14.gif new file mode 100644 index 00000000..a1f08010 Binary files /dev/null and b/icon/r1x14.gif differ diff --git a/icon/recordfields16x16.gif b/icon/recordfields16x16.gif new file mode 100644 index 00000000..a5694f81 Binary files /dev/null and b/icon/recordfields16x16.gif differ diff --git a/icon/recycle16x16.gif b/icon/recycle16x16.gif new file mode 100644 index 00000000..eff5b531 Binary files /dev/null and b/icon/recycle16x16.gif differ diff --git a/icon/reply16x16.gif b/icon/reply16x16.gif new file mode 100644 index 00000000..11da98e1 Binary files /dev/null and b/icon/reply16x16.gif differ diff --git a/icon/researchgate16x16.gif b/icon/researchgate16x16.gif new file mode 100644 index 00000000..2e7c8617 Binary files /dev/null and b/icon/researchgate16x16.gif differ diff --git a/icon/researchgate32x32.gif b/icon/researchgate32x32.gif new file mode 100644 index 00000000..45dea723 Binary files /dev/null and b/icon/researchgate32x32.gif differ diff --git a/icon/researchgate64x64.gif b/icon/researchgate64x64.gif new file mode 100644 index 00000000..3a7a5c9d Binary files /dev/null and b/icon/researchgate64x64.gif differ diff --git a/icon/reset12x12.gif b/icon/reset12x12.gif new file mode 100644 index 00000000..aa633227 Binary files /dev/null and b/icon/reset12x12.gif differ diff --git a/icon/reset16x16.gif b/icon/reset16x16.gif new file mode 100644 index 00000000..eff5b531 Binary files /dev/null and b/icon/reset16x16.gif differ diff --git a/icon/right_off16x16.gif b/icon/right_off16x16.gif new file mode 100644 index 00000000..7e753905 Binary files /dev/null and b/icon/right_off16x16.gif differ diff --git a/icon/right_on16x16.gif b/icon/right_on16x16.gif new file mode 100644 index 00000000..7fc7efb8 Binary files /dev/null and b/icon/right_on16x16.gif differ diff --git a/icon/rss12x12.gif b/icon/rss12x12.gif new file mode 100644 index 00000000..2da87c50 Binary files /dev/null and b/icon/rss12x12.gif differ diff --git a/icon/rss16x16.gif b/icon/rss16x16.gif new file mode 100644 index 00000000..4831d6ce Binary files /dev/null and b/icon/rss16x16.gif differ diff --git a/icon/scoopit16x16.gif b/icon/scoopit16x16.gif new file mode 100644 index 00000000..bfee93bb Binary files /dev/null and b/icon/scoopit16x16.gif differ diff --git a/icon/scoopit32x32.gif b/icon/scoopit32x32.gif new file mode 100644 index 00000000..ff36496b Binary files /dev/null and b/icon/scoopit32x32.gif differ diff --git a/icon/scoopit64x64.gif b/icon/scoopit64x64.gif new file mode 100644 index 00000000..266be9ad Binary files /dev/null and b/icon/scoopit64x64.gif differ diff --git a/icon/search16x16.gif b/icon/search16x16.gif new file mode 100644 index 00000000..5e616b8d Binary files /dev/null and b/icon/search16x16.gif differ diff --git a/icon/skype320x320.tif b/icon/skype320x320.tif new file mode 100644 index 00000000..57bd4814 Binary files /dev/null and b/icon/skype320x320.tif differ diff --git a/icon/skype32x32.gif b/icon/skype32x32.gif new file mode 100644 index 00000000..01dda836 Binary files /dev/null and b/icon/skype32x32.gif differ diff --git a/icon/skype64x64.gif b/icon/skype64x64.gif new file mode 100644 index 00000000..6fc46f0d Binary files /dev/null and b/icon/skype64x64.gif differ diff --git a/icon/slideshare16x16.gif b/icon/slideshare16x16.gif new file mode 100644 index 00000000..90e23b30 Binary files /dev/null and b/icon/slideshare16x16.gif differ diff --git a/icon/slideshare32x32.gif b/icon/slideshare32x32.gif new file mode 100644 index 00000000..596a46bb Binary files /dev/null and b/icon/slideshare32x32.gif differ diff --git a/icon/slideshare64x64.gif b/icon/slideshare64x64.gif new file mode 100644 index 00000000..24c7555c Binary files /dev/null and b/icon/slideshare64x64.gif differ diff --git a/icon/star16x16.gif b/icon/star16x16.gif new file mode 100644 index 00000000..2d19ee12 Binary files /dev/null and b/icon/star16x16.gif differ diff --git a/icon/subend12x16.gif b/icon/subend12x16.gif new file mode 100644 index 00000000..48c6bce1 Binary files /dev/null and b/icon/subend12x16.gif differ diff --git a/icon/subend16x16.gif b/icon/subend16x16.gif new file mode 100644 index 00000000..d0824461 Binary files /dev/null and b/icon/subend16x16.gif differ diff --git a/icon/subend20x20.gif b/icon/subend20x20.gif new file mode 100644 index 00000000..a47f165e Binary files /dev/null and b/icon/subend20x20.gif differ diff --git a/icon/subendminus12x16.gif b/icon/subendminus12x16.gif new file mode 100644 index 00000000..00c8b11d Binary files /dev/null and b/icon/subendminus12x16.gif differ diff --git a/icon/subendplus12x16.gif b/icon/subendplus12x16.gif new file mode 100644 index 00000000..09205e40 Binary files /dev/null and b/icon/subendplus12x16.gif differ diff --git a/icon/subleft12x16.gif b/icon/subleft12x16.gif new file mode 100644 index 00000000..4b91dcae Binary files /dev/null and b/icon/subleft12x16.gif differ diff --git a/icon/subleft20x20.gif b/icon/subleft20x20.gif new file mode 100644 index 00000000..c0e9e870 Binary files /dev/null and b/icon/subleft20x20.gif differ diff --git a/icon/submid12x16.gif b/icon/submid12x16.gif new file mode 100644 index 00000000..f6e4b825 Binary files /dev/null and b/icon/submid12x16.gif differ diff --git a/icon/submid16x16.gif b/icon/submid16x16.gif new file mode 100644 index 00000000..03c4adc3 Binary files /dev/null and b/icon/submid16x16.gif differ diff --git a/icon/submid20x20.gif b/icon/submid20x20.gif new file mode 100644 index 00000000..f512bc79 Binary files /dev/null and b/icon/submid20x20.gif differ diff --git a/icon/submidminus12x16.gif b/icon/submidminus12x16.gif new file mode 100644 index 00000000..d3378a0f Binary files /dev/null and b/icon/submidminus12x16.gif differ diff --git a/icon/submidplus12x16.gif b/icon/submidplus12x16.gif new file mode 100644 index 00000000..a6d43919 Binary files /dev/null and b/icon/submidplus12x16.gif differ diff --git a/icon/success16x16.gif b/icon/success16x16.gif new file mode 100644 index 00000000..aca56163 Binary files /dev/null and b/icon/success16x16.gif differ diff --git a/icon/swad120x44.gif b/icon/swad120x44.gif new file mode 100644 index 00000000..d1e43579 Binary files /dev/null and b/icon/swad120x44.gif differ diff --git a/icon/swad16x16.gif b/icon/swad16x16.gif new file mode 100644 index 00000000..e2881041 Binary files /dev/null and b/icon/swad16x16.gif differ diff --git a/icon/swad224x64.png b/icon/swad224x64.png new file mode 100644 index 00000000..bf4aed72 Binary files /dev/null and b/icon/swad224x64.png differ diff --git a/icon/swad32x32.gif b/icon/swad32x32.gif new file mode 100644 index 00000000..81cd9972 Binary files /dev/null and b/icon/swad32x32.gif differ diff --git a/icon/swad48x48.gif b/icon/swad48x48.gif new file mode 100644 index 00000000..11acb400 Binary files /dev/null and b/icon/swad48x48.gif differ diff --git a/icon/table16x16.gif b/icon/table16x16.gif new file mode 100644 index 00000000..adb13a9f Binary files /dev/null and b/icon/table16x16.gif differ diff --git a/icon/theme/blue/central_bottom_1x10.gif b/icon/theme/blue/central_bottom_1x10.gif new file mode 100644 index 00000000..7c854824 Binary files /dev/null and b/icon/theme/blue/central_bottom_1x10.gif differ diff --git a/icon/theme/blue/central_corner_1_10x34.gif b/icon/theme/blue/central_corner_1_10x34.gif new file mode 100644 index 00000000..f80df3b3 Binary files /dev/null and b/icon/theme/blue/central_corner_1_10x34.gif differ diff --git a/icon/theme/blue/central_corner_1_10x38.gif b/icon/theme/blue/central_corner_1_10x38.gif new file mode 100644 index 00000000..bb0dcdd9 Binary files /dev/null and b/icon/theme/blue/central_corner_1_10x38.gif differ diff --git a/icon/theme/blue/central_corner_1_10x64.gif b/icon/theme/blue/central_corner_1_10x64.gif new file mode 100644 index 00000000..b5e5cf67 Binary files /dev/null and b/icon/theme/blue/central_corner_1_10x64.gif differ diff --git a/icon/theme/blue/central_corner_2_10x34.gif b/icon/theme/blue/central_corner_2_10x34.gif new file mode 100644 index 00000000..7c59dbe7 Binary files /dev/null and b/icon/theme/blue/central_corner_2_10x34.gif differ diff --git a/icon/theme/blue/central_corner_2_10x38.gif b/icon/theme/blue/central_corner_2_10x38.gif new file mode 100644 index 00000000..65b75d16 Binary files /dev/null and b/icon/theme/blue/central_corner_2_10x38.gif differ diff --git a/icon/theme/blue/central_corner_2_10x64.gif b/icon/theme/blue/central_corner_2_10x64.gif new file mode 100644 index 00000000..ea812683 Binary files /dev/null and b/icon/theme/blue/central_corner_2_10x64.gif differ diff --git a/icon/theme/blue/central_corner_3_10x10.gif b/icon/theme/blue/central_corner_3_10x10.gif new file mode 100644 index 00000000..b9b6bd34 Binary files /dev/null and b/icon/theme/blue/central_corner_3_10x10.gif differ diff --git a/icon/theme/blue/central_corner_4_10x10.gif b/icon/theme/blue/central_corner_4_10x10.gif new file mode 100644 index 00000000..d16892da Binary files /dev/null and b/icon/theme/blue/central_corner_4_10x10.gif differ diff --git a/icon/theme/blue/central_left_10x1.gif b/icon/theme/blue/central_left_10x1.gif new file mode 100644 index 00000000..0138fa3a Binary files /dev/null and b/icon/theme/blue/central_left_10x1.gif differ diff --git a/icon/theme/blue/central_left_8x400.gif b/icon/theme/blue/central_left_8x400.gif new file mode 100644 index 00000000..e83fe04d Binary files /dev/null and b/icon/theme/blue/central_left_8x400.gif differ diff --git a/icon/theme/blue/central_right_10x1.gif b/icon/theme/blue/central_right_10x1.gif new file mode 100644 index 00000000..1a9871c5 Binary files /dev/null and b/icon/theme/blue/central_right_10x1.gif differ diff --git a/icon/theme/blue/central_right_8x400.gif b/icon/theme/blue/central_right_8x400.gif new file mode 100644 index 00000000..2e0420a5 Binary files /dev/null and b/icon/theme/blue/central_right_8x400.gif differ diff --git a/icon/theme/blue/central_top_1x34.gif b/icon/theme/blue/central_top_1x34.gif new file mode 100644 index 00000000..9c7ebaf3 Binary files /dev/null and b/icon/theme/blue/central_top_1x34.gif differ diff --git a/icon/theme/blue/central_top_1x38.gif b/icon/theme/blue/central_top_1x38.gif new file mode 100644 index 00000000..904d6ab7 Binary files /dev/null and b/icon/theme/blue/central_top_1x38.gif differ diff --git a/icon/theme/blue/central_top_1x64.gif b/icon/theme/blue/central_top_1x64.gif new file mode 100644 index 00000000..e149d17a Binary files /dev/null and b/icon/theme/blue/central_top_1x64.gif differ diff --git a/icon/theme/blue/frame_central_bottom_1x10.gif b/icon/theme/blue/frame_central_bottom_1x10.gif new file mode 100644 index 00000000..49e80e32 Binary files /dev/null and b/icon/theme/blue/frame_central_bottom_1x10.gif differ diff --git a/icon/theme/blue/frame_central_corner_1_10x10.gif b/icon/theme/blue/frame_central_corner_1_10x10.gif new file mode 100644 index 00000000..4b080f9f Binary files /dev/null and b/icon/theme/blue/frame_central_corner_1_10x10.gif differ diff --git a/icon/theme/blue/frame_central_corner_2_10x10.gif b/icon/theme/blue/frame_central_corner_2_10x10.gif new file mode 100644 index 00000000..83f379ad Binary files /dev/null and b/icon/theme/blue/frame_central_corner_2_10x10.gif differ diff --git a/icon/theme/blue/frame_central_corner_3_10x10.gif b/icon/theme/blue/frame_central_corner_3_10x10.gif new file mode 100644 index 00000000..8ee3f5e0 Binary files /dev/null and b/icon/theme/blue/frame_central_corner_3_10x10.gif differ diff --git a/icon/theme/blue/frame_central_corner_4_10x10.gif b/icon/theme/blue/frame_central_corner_4_10x10.gif new file mode 100644 index 00000000..13c26f1a Binary files /dev/null and b/icon/theme/blue/frame_central_corner_4_10x10.gif differ diff --git a/icon/theme/blue/frame_central_left_10x1.gif b/icon/theme/blue/frame_central_left_10x1.gif new file mode 100644 index 00000000..454266cb Binary files /dev/null and b/icon/theme/blue/frame_central_left_10x1.gif differ diff --git a/icon/theme/blue/frame_central_right_10x1.gif b/icon/theme/blue/frame_central_right_10x1.gif new file mode 100644 index 00000000..17a4b237 Binary files /dev/null and b/icon/theme/blue/frame_central_right_10x1.gif differ diff --git a/icon/theme/blue/frame_central_top_1x10.gif b/icon/theme/blue/frame_central_top_1x10.gif new file mode 100644 index 00000000..25b6a086 Binary files /dev/null and b/icon/theme/blue/frame_central_top_1x10.gif differ diff --git a/icon/theme/blue/frame_help_bottom_1x10.gif b/icon/theme/blue/frame_help_bottom_1x10.gif new file mode 100644 index 00000000..5abbdf68 Binary files /dev/null and b/icon/theme/blue/frame_help_bottom_1x10.gif differ diff --git a/icon/theme/blue/frame_help_corner_1_10x10.gif b/icon/theme/blue/frame_help_corner_1_10x10.gif new file mode 100644 index 00000000..9a8a557a Binary files /dev/null and b/icon/theme/blue/frame_help_corner_1_10x10.gif differ diff --git a/icon/theme/blue/frame_help_corner_2_10x10.gif b/icon/theme/blue/frame_help_corner_2_10x10.gif new file mode 100644 index 00000000..d226a2b9 Binary files /dev/null and b/icon/theme/blue/frame_help_corner_2_10x10.gif differ diff --git a/icon/theme/blue/frame_help_corner_3_10x10.gif b/icon/theme/blue/frame_help_corner_3_10x10.gif new file mode 100644 index 00000000..efebc3a1 Binary files /dev/null and b/icon/theme/blue/frame_help_corner_3_10x10.gif differ diff --git a/icon/theme/blue/frame_help_corner_4_10x10.gif b/icon/theme/blue/frame_help_corner_4_10x10.gif new file mode 100644 index 00000000..d1c8aae0 Binary files /dev/null and b/icon/theme/blue/frame_help_corner_4_10x10.gif differ diff --git a/icon/theme/blue/frame_help_left_10x1.gif b/icon/theme/blue/frame_help_left_10x1.gif new file mode 100644 index 00000000..d883cf1a Binary files /dev/null and b/icon/theme/blue/frame_help_left_10x1.gif differ diff --git a/icon/theme/blue/frame_help_right_10x1.gif b/icon/theme/blue/frame_help_right_10x1.gif new file mode 100644 index 00000000..5330f39c Binary files /dev/null and b/icon/theme/blue/frame_help_right_10x1.gif differ diff --git a/icon/theme/blue/frame_help_top_1x10.gif b/icon/theme/blue/frame_help_top_1x10.gif new file mode 100644 index 00000000..f135b55b Binary files /dev/null and b/icon/theme/blue/frame_help_top_1x10.gif differ diff --git a/icon/theme/blue/frame_white_bottom_1x10.gif b/icon/theme/blue/frame_white_bottom_1x10.gif new file mode 100644 index 00000000..48f9afe2 Binary files /dev/null and b/icon/theme/blue/frame_white_bottom_1x10.gif differ diff --git a/icon/theme/blue/frame_white_corner_1_10x10.gif b/icon/theme/blue/frame_white_corner_1_10x10.gif new file mode 100644 index 00000000..916b84f3 Binary files /dev/null and b/icon/theme/blue/frame_white_corner_1_10x10.gif differ diff --git a/icon/theme/blue/frame_white_corner_2_10x10.gif b/icon/theme/blue/frame_white_corner_2_10x10.gif new file mode 100644 index 00000000..a6bec2ee Binary files /dev/null and b/icon/theme/blue/frame_white_corner_2_10x10.gif differ diff --git a/icon/theme/blue/frame_white_corner_3_10x10.gif b/icon/theme/blue/frame_white_corner_3_10x10.gif new file mode 100644 index 00000000..b1bd47cb Binary files /dev/null and b/icon/theme/blue/frame_white_corner_3_10x10.gif differ diff --git a/icon/theme/blue/frame_white_corner_4_10x10.gif b/icon/theme/blue/frame_white_corner_4_10x10.gif new file mode 100644 index 00000000..31602691 Binary files /dev/null and b/icon/theme/blue/frame_white_corner_4_10x10.gif differ diff --git a/icon/theme/blue/frame_white_left_10x1.gif b/icon/theme/blue/frame_white_left_10x1.gif new file mode 100644 index 00000000..1b8ba89b Binary files /dev/null and b/icon/theme/blue/frame_white_left_10x1.gif differ diff --git a/icon/theme/blue/frame_white_right_10x1.gif b/icon/theme/blue/frame_white_right_10x1.gif new file mode 100644 index 00000000..2c532090 Binary files /dev/null and b/icon/theme/blue/frame_white_right_10x1.gif differ diff --git a/icon/theme/blue/frame_white_top_1x10.gif b/icon/theme/blue/frame_white_top_1x10.gif new file mode 100644 index 00000000..0c53c404 Binary files /dev/null and b/icon/theme/blue/frame_white_top_1x10.gif differ diff --git a/icon/theme/blue/head_base_background_1x26.gif b/icon/theme/blue/head_base_background_1x26.gif new file mode 100644 index 00000000..4e6f4827 Binary files /dev/null and b/icon/theme/blue/head_base_background_1x26.gif differ diff --git a/icon/theme/blue/head_base_background_1x30.gif b/icon/theme/blue/head_base_background_1x30.gif new file mode 100644 index 00000000..e25bbc61 Binary files /dev/null and b/icon/theme/blue/head_base_background_1x30.gif differ diff --git a/icon/theme/blue/head_base_background_1x56.gif b/icon/theme/blue/head_base_background_1x56.gif new file mode 100644 index 00000000..b74a3c6a Binary files /dev/null and b/icon/theme/blue/head_base_background_1x56.gif differ diff --git a/icon/theme/blue/head_row1_1x48.gif b/icon/theme/blue/head_row1_1x48.gif new file mode 100644 index 00000000..917edccb Binary files /dev/null and b/icon/theme/blue/head_row1_1x48.gif differ diff --git a/icon/theme/blue/head_row2_1x64.gif b/icon/theme/blue/head_row2_1x64.gif new file mode 100644 index 00000000..39a0006b Binary files /dev/null and b/icon/theme/blue/head_row2_1x64.gif differ diff --git a/icon/theme/blue/login16x16.gif b/icon/theme/blue/login16x16.gif new file mode 100644 index 00000000..53eca6ab Binary files /dev/null and b/icon/theme/blue/login16x16.gif differ diff --git a/icon/theme/blue/logout16x16.gif b/icon/theme/blue/logout16x16.gif new file mode 100644 index 00000000..42dfb2de Binary files /dev/null and b/icon/theme/blue/logout16x16.gif differ diff --git a/icon/theme/blue/search16x16.gif b/icon/theme/blue/search16x16.gif new file mode 100644 index 00000000..58c84dc7 Binary files /dev/null and b/icon/theme/blue/search16x16.gif differ diff --git a/icon/theme/blue/search20x20.gif b/icon/theme/blue/search20x20.gif new file mode 100644 index 00000000..1eba126d Binary files /dev/null and b/icon/theme/blue/search20x20.gif differ diff --git a/icon/theme/blue/swad112x32.gif b/icon/theme/blue/swad112x32.gif new file mode 100644 index 00000000..f7ccaad5 Binary files /dev/null and b/icon/theme/blue/swad112x32.gif differ diff --git a/icon/theme/blue/swad168x48.gif b/icon/theme/blue/swad168x48.gif new file mode 100644 index 00000000..2b4e2f0a Binary files /dev/null and b/icon/theme/blue/swad168x48.gif differ diff --git a/icon/theme/blue/tab_no_off_10x34.gif b/icon/theme/blue/tab_no_off_10x34.gif new file mode 100644 index 00000000..d49f1c9a Binary files /dev/null and b/icon/theme/blue/tab_no_off_10x34.gif differ diff --git a/icon/theme/blue/tab_no_off_10x64.gif b/icon/theme/blue/tab_no_off_10x64.gif new file mode 100644 index 00000000..e51bcb13 Binary files /dev/null and b/icon/theme/blue/tab_no_off_10x64.gif differ diff --git a/icon/theme/blue/tab_no_on_10x34.gif b/icon/theme/blue/tab_no_on_10x34.gif new file mode 100644 index 00000000..d837c5b2 Binary files /dev/null and b/icon/theme/blue/tab_no_on_10x34.gif differ diff --git a/icon/theme/blue/tab_no_on_10x38.gif b/icon/theme/blue/tab_no_on_10x38.gif new file mode 100644 index 00000000..5c2d7792 Binary files /dev/null and b/icon/theme/blue/tab_no_on_10x38.gif differ diff --git a/icon/theme/blue/tab_no_on_10x64.gif b/icon/theme/blue/tab_no_on_10x64.gif new file mode 100644 index 00000000..ad8ff04e Binary files /dev/null and b/icon/theme/blue/tab_no_on_10x64.gif differ diff --git a/icon/theme/blue/tab_off_1x34.gif b/icon/theme/blue/tab_off_1x34.gif new file mode 100644 index 00000000..825d75ff Binary files /dev/null and b/icon/theme/blue/tab_off_1x34.gif differ diff --git a/icon/theme/blue/tab_off_1x64.gif b/icon/theme/blue/tab_off_1x64.gif new file mode 100644 index 00000000..b801a124 Binary files /dev/null and b/icon/theme/blue/tab_off_1x64.gif differ diff --git a/icon/theme/blue/tab_off_no_10x34.gif b/icon/theme/blue/tab_off_no_10x34.gif new file mode 100644 index 00000000..972caf94 Binary files /dev/null and b/icon/theme/blue/tab_off_no_10x34.gif differ diff --git a/icon/theme/blue/tab_off_no_10x64.gif b/icon/theme/blue/tab_off_no_10x64.gif new file mode 100644 index 00000000..3b72fcd8 Binary files /dev/null and b/icon/theme/blue/tab_off_no_10x64.gif differ diff --git a/icon/theme/blue/tab_off_off_20x34.gif b/icon/theme/blue/tab_off_off_20x34.gif new file mode 100644 index 00000000..dd5446fb Binary files /dev/null and b/icon/theme/blue/tab_off_off_20x34.gif differ diff --git a/icon/theme/blue/tab_off_off_20x64.gif b/icon/theme/blue/tab_off_off_20x64.gif new file mode 100644 index 00000000..1e4e12d0 Binary files /dev/null and b/icon/theme/blue/tab_off_off_20x64.gif differ diff --git a/icon/theme/blue/tab_off_on_20x34.gif b/icon/theme/blue/tab_off_on_20x34.gif new file mode 100644 index 00000000..112edf98 Binary files /dev/null and b/icon/theme/blue/tab_off_on_20x34.gif differ diff --git a/icon/theme/blue/tab_off_on_20x64.gif b/icon/theme/blue/tab_off_on_20x64.gif new file mode 100644 index 00000000..012d0890 Binary files /dev/null and b/icon/theme/blue/tab_off_on_20x64.gif differ diff --git a/icon/theme/blue/tab_on_1x34.gif b/icon/theme/blue/tab_on_1x34.gif new file mode 100644 index 00000000..db9a9add Binary files /dev/null and b/icon/theme/blue/tab_on_1x34.gif differ diff --git a/icon/theme/blue/tab_on_1x38.gif b/icon/theme/blue/tab_on_1x38.gif new file mode 100644 index 00000000..523a240c Binary files /dev/null and b/icon/theme/blue/tab_on_1x38.gif differ diff --git a/icon/theme/blue/tab_on_1x64.gif b/icon/theme/blue/tab_on_1x64.gif new file mode 100644 index 00000000..d38dd2ac Binary files /dev/null and b/icon/theme/blue/tab_on_1x64.gif differ diff --git a/icon/theme/blue/tab_on_no_10x34.gif b/icon/theme/blue/tab_on_no_10x34.gif new file mode 100644 index 00000000..d1707bb7 Binary files /dev/null and b/icon/theme/blue/tab_on_no_10x34.gif differ diff --git a/icon/theme/blue/tab_on_no_10x38.gif b/icon/theme/blue/tab_on_no_10x38.gif new file mode 100644 index 00000000..2622691b Binary files /dev/null and b/icon/theme/blue/tab_on_no_10x38.gif differ diff --git a/icon/theme/blue/tab_on_no_10x64.gif b/icon/theme/blue/tab_on_no_10x64.gif new file mode 100644 index 00000000..f243f609 Binary files /dev/null and b/icon/theme/blue/tab_on_no_10x64.gif differ diff --git a/icon/theme/blue/tab_on_off_20x34.gif b/icon/theme/blue/tab_on_off_20x34.gif new file mode 100644 index 00000000..d37261ee Binary files /dev/null and b/icon/theme/blue/tab_on_off_20x34.gif differ diff --git a/icon/theme/blue/tab_on_off_20x64.gif b/icon/theme/blue/tab_on_off_20x64.gif new file mode 100644 index 00000000..265ca05d Binary files /dev/null and b/icon/theme/blue/tab_on_off_20x64.gif differ diff --git a/icon/theme/blue/theme_32x20.gif b/icon/theme/blue/theme_32x20.gif new file mode 100644 index 00000000..250d4362 Binary files /dev/null and b/icon/theme/blue/theme_32x20.gif differ diff --git a/icon/theme/grey/central_bottom_1x10.gif b/icon/theme/grey/central_bottom_1x10.gif new file mode 100644 index 00000000..2851e820 Binary files /dev/null and b/icon/theme/grey/central_bottom_1x10.gif differ diff --git a/icon/theme/grey/central_corner_1_10x34.gif b/icon/theme/grey/central_corner_1_10x34.gif new file mode 100644 index 00000000..c8235263 Binary files /dev/null and b/icon/theme/grey/central_corner_1_10x34.gif differ diff --git a/icon/theme/grey/central_corner_1_10x38.gif b/icon/theme/grey/central_corner_1_10x38.gif new file mode 100644 index 00000000..2cbe02dd Binary files /dev/null and b/icon/theme/grey/central_corner_1_10x38.gif differ diff --git a/icon/theme/grey/central_corner_1_10x64.gif b/icon/theme/grey/central_corner_1_10x64.gif new file mode 100644 index 00000000..c80a32fe Binary files /dev/null and b/icon/theme/grey/central_corner_1_10x64.gif differ diff --git a/icon/theme/grey/central_corner_2_10x34.gif b/icon/theme/grey/central_corner_2_10x34.gif new file mode 100644 index 00000000..1d102ddd Binary files /dev/null and b/icon/theme/grey/central_corner_2_10x34.gif differ diff --git a/icon/theme/grey/central_corner_2_10x38.gif b/icon/theme/grey/central_corner_2_10x38.gif new file mode 100644 index 00000000..975dc72b Binary files /dev/null and b/icon/theme/grey/central_corner_2_10x38.gif differ diff --git a/icon/theme/grey/central_corner_2_10x64.gif b/icon/theme/grey/central_corner_2_10x64.gif new file mode 100644 index 00000000..d32e9203 Binary files /dev/null and b/icon/theme/grey/central_corner_2_10x64.gif differ diff --git a/icon/theme/grey/central_corner_3_10x10.gif b/icon/theme/grey/central_corner_3_10x10.gif new file mode 100644 index 00000000..b74de158 Binary files /dev/null and b/icon/theme/grey/central_corner_3_10x10.gif differ diff --git a/icon/theme/grey/central_corner_4_10x10.gif b/icon/theme/grey/central_corner_4_10x10.gif new file mode 100644 index 00000000..3b229278 Binary files /dev/null and b/icon/theme/grey/central_corner_4_10x10.gif differ diff --git a/icon/theme/grey/central_left_10x1.gif b/icon/theme/grey/central_left_10x1.gif new file mode 100644 index 00000000..9e708f3a Binary files /dev/null and b/icon/theme/grey/central_left_10x1.gif differ diff --git a/icon/theme/grey/central_left_8x400.gif b/icon/theme/grey/central_left_8x400.gif new file mode 100644 index 00000000..d2d17592 Binary files /dev/null and b/icon/theme/grey/central_left_8x400.gif differ diff --git a/icon/theme/grey/central_right_10x1.gif b/icon/theme/grey/central_right_10x1.gif new file mode 100644 index 00000000..d68f6540 Binary files /dev/null and b/icon/theme/grey/central_right_10x1.gif differ diff --git a/icon/theme/grey/central_right_8x400.gif b/icon/theme/grey/central_right_8x400.gif new file mode 100644 index 00000000..7f2e41d3 Binary files /dev/null and b/icon/theme/grey/central_right_8x400.gif differ diff --git a/icon/theme/grey/central_top_1x34.gif b/icon/theme/grey/central_top_1x34.gif new file mode 100644 index 00000000..448caa12 Binary files /dev/null and b/icon/theme/grey/central_top_1x34.gif differ diff --git a/icon/theme/grey/central_top_1x38.gif b/icon/theme/grey/central_top_1x38.gif new file mode 100644 index 00000000..e51c2876 Binary files /dev/null and b/icon/theme/grey/central_top_1x38.gif differ diff --git a/icon/theme/grey/central_top_1x64.gif b/icon/theme/grey/central_top_1x64.gif new file mode 100644 index 00000000..36826ef1 Binary files /dev/null and b/icon/theme/grey/central_top_1x64.gif differ diff --git a/icon/theme/grey/frame_central_bottom_1x10.gif b/icon/theme/grey/frame_central_bottom_1x10.gif new file mode 100644 index 00000000..a5b09d6c Binary files /dev/null and b/icon/theme/grey/frame_central_bottom_1x10.gif differ diff --git a/icon/theme/grey/frame_central_corner_1_10x10.gif b/icon/theme/grey/frame_central_corner_1_10x10.gif new file mode 100644 index 00000000..2fed5801 Binary files /dev/null and b/icon/theme/grey/frame_central_corner_1_10x10.gif differ diff --git a/icon/theme/grey/frame_central_corner_2_10x10.gif b/icon/theme/grey/frame_central_corner_2_10x10.gif new file mode 100644 index 00000000..48603d91 Binary files /dev/null and b/icon/theme/grey/frame_central_corner_2_10x10.gif differ diff --git a/icon/theme/grey/frame_central_corner_3_10x10.gif b/icon/theme/grey/frame_central_corner_3_10x10.gif new file mode 100644 index 00000000..b2eef448 Binary files /dev/null and b/icon/theme/grey/frame_central_corner_3_10x10.gif differ diff --git a/icon/theme/grey/frame_central_corner_4_10x10.gif b/icon/theme/grey/frame_central_corner_4_10x10.gif new file mode 100644 index 00000000..6c3ddae2 Binary files /dev/null and b/icon/theme/grey/frame_central_corner_4_10x10.gif differ diff --git a/icon/theme/grey/frame_central_left_10x1.gif b/icon/theme/grey/frame_central_left_10x1.gif new file mode 100644 index 00000000..21f1d378 Binary files /dev/null and b/icon/theme/grey/frame_central_left_10x1.gif differ diff --git a/icon/theme/grey/frame_central_right_10x1.gif b/icon/theme/grey/frame_central_right_10x1.gif new file mode 100644 index 00000000..8b5af15b Binary files /dev/null and b/icon/theme/grey/frame_central_right_10x1.gif differ diff --git a/icon/theme/grey/frame_central_top_1x10.gif b/icon/theme/grey/frame_central_top_1x10.gif new file mode 100644 index 00000000..32996c14 Binary files /dev/null and b/icon/theme/grey/frame_central_top_1x10.gif differ diff --git a/icon/theme/grey/frame_help_bottom_1x10.gif b/icon/theme/grey/frame_help_bottom_1x10.gif new file mode 100644 index 00000000..2c3cd54d Binary files /dev/null and b/icon/theme/grey/frame_help_bottom_1x10.gif differ diff --git a/icon/theme/grey/frame_help_corner_1_10x10.gif b/icon/theme/grey/frame_help_corner_1_10x10.gif new file mode 100644 index 00000000..a0dde622 Binary files /dev/null and b/icon/theme/grey/frame_help_corner_1_10x10.gif differ diff --git a/icon/theme/grey/frame_help_corner_2_10x10.gif b/icon/theme/grey/frame_help_corner_2_10x10.gif new file mode 100644 index 00000000..94548f62 Binary files /dev/null and b/icon/theme/grey/frame_help_corner_2_10x10.gif differ diff --git a/icon/theme/grey/frame_help_corner_3_10x10.gif b/icon/theme/grey/frame_help_corner_3_10x10.gif new file mode 100644 index 00000000..0d8e9e10 Binary files /dev/null and b/icon/theme/grey/frame_help_corner_3_10x10.gif differ diff --git a/icon/theme/grey/frame_help_corner_4_10x10.gif b/icon/theme/grey/frame_help_corner_4_10x10.gif new file mode 100644 index 00000000..484d24d0 Binary files /dev/null and b/icon/theme/grey/frame_help_corner_4_10x10.gif differ diff --git a/icon/theme/grey/frame_help_left_10x1.gif b/icon/theme/grey/frame_help_left_10x1.gif new file mode 100644 index 00000000..a935ebe1 Binary files /dev/null and b/icon/theme/grey/frame_help_left_10x1.gif differ diff --git a/icon/theme/grey/frame_help_right_10x1.gif b/icon/theme/grey/frame_help_right_10x1.gif new file mode 100644 index 00000000..b99ecf0c Binary files /dev/null and b/icon/theme/grey/frame_help_right_10x1.gif differ diff --git a/icon/theme/grey/frame_help_top_1x10.gif b/icon/theme/grey/frame_help_top_1x10.gif new file mode 100644 index 00000000..15c58983 Binary files /dev/null and b/icon/theme/grey/frame_help_top_1x10.gif differ diff --git a/icon/theme/grey/frame_white_bottom_1x10.gif b/icon/theme/grey/frame_white_bottom_1x10.gif new file mode 100644 index 00000000..48f9afe2 Binary files /dev/null and b/icon/theme/grey/frame_white_bottom_1x10.gif differ diff --git a/icon/theme/grey/frame_white_corner_1_10x10.gif b/icon/theme/grey/frame_white_corner_1_10x10.gif new file mode 100644 index 00000000..916b84f3 Binary files /dev/null and b/icon/theme/grey/frame_white_corner_1_10x10.gif differ diff --git a/icon/theme/grey/frame_white_corner_2_10x10.gif b/icon/theme/grey/frame_white_corner_2_10x10.gif new file mode 100644 index 00000000..a6bec2ee Binary files /dev/null and b/icon/theme/grey/frame_white_corner_2_10x10.gif differ diff --git a/icon/theme/grey/frame_white_corner_3_10x10.gif b/icon/theme/grey/frame_white_corner_3_10x10.gif new file mode 100644 index 00000000..b1bd47cb Binary files /dev/null and b/icon/theme/grey/frame_white_corner_3_10x10.gif differ diff --git a/icon/theme/grey/frame_white_corner_4_10x10.gif b/icon/theme/grey/frame_white_corner_4_10x10.gif new file mode 100644 index 00000000..31602691 Binary files /dev/null and b/icon/theme/grey/frame_white_corner_4_10x10.gif differ diff --git a/icon/theme/grey/frame_white_left_10x1.gif b/icon/theme/grey/frame_white_left_10x1.gif new file mode 100644 index 00000000..1b8ba89b Binary files /dev/null and b/icon/theme/grey/frame_white_left_10x1.gif differ diff --git a/icon/theme/grey/frame_white_right_10x1.gif b/icon/theme/grey/frame_white_right_10x1.gif new file mode 100644 index 00000000..2c532090 Binary files /dev/null and b/icon/theme/grey/frame_white_right_10x1.gif differ diff --git a/icon/theme/grey/frame_white_top_1x10.gif b/icon/theme/grey/frame_white_top_1x10.gif new file mode 100644 index 00000000..0c53c404 Binary files /dev/null and b/icon/theme/grey/frame_white_top_1x10.gif differ diff --git a/icon/theme/grey/head_base_background_1x26.gif b/icon/theme/grey/head_base_background_1x26.gif new file mode 100644 index 00000000..94e30289 Binary files /dev/null and b/icon/theme/grey/head_base_background_1x26.gif differ diff --git a/icon/theme/grey/head_base_background_1x30.gif b/icon/theme/grey/head_base_background_1x30.gif new file mode 100644 index 00000000..b016fc18 Binary files /dev/null and b/icon/theme/grey/head_base_background_1x30.gif differ diff --git a/icon/theme/grey/head_base_background_1x56.gif b/icon/theme/grey/head_base_background_1x56.gif new file mode 100644 index 00000000..f4670d2e Binary files /dev/null and b/icon/theme/grey/head_base_background_1x56.gif differ diff --git a/icon/theme/grey/head_row1_1x48.gif b/icon/theme/grey/head_row1_1x48.gif new file mode 100644 index 00000000..f31b3bca Binary files /dev/null and b/icon/theme/grey/head_row1_1x48.gif differ diff --git a/icon/theme/grey/head_row2_1x64.gif b/icon/theme/grey/head_row2_1x64.gif new file mode 100644 index 00000000..b3df4ea9 Binary files /dev/null and b/icon/theme/grey/head_row2_1x64.gif differ diff --git a/icon/theme/grey/login16x16.gif b/icon/theme/grey/login16x16.gif new file mode 100644 index 00000000..896a7a5e Binary files /dev/null and b/icon/theme/grey/login16x16.gif differ diff --git a/icon/theme/grey/logout16x16.gif b/icon/theme/grey/logout16x16.gif new file mode 100644 index 00000000..ef38a511 Binary files /dev/null and b/icon/theme/grey/logout16x16.gif differ diff --git a/icon/theme/grey/search16x16.gif b/icon/theme/grey/search16x16.gif new file mode 100644 index 00000000..1d0fcf39 Binary files /dev/null and b/icon/theme/grey/search16x16.gif differ diff --git a/icon/theme/grey/search20x20.gif b/icon/theme/grey/search20x20.gif new file mode 100644 index 00000000..1b46b127 Binary files /dev/null and b/icon/theme/grey/search20x20.gif differ diff --git a/icon/theme/grey/swad112x32.gif b/icon/theme/grey/swad112x32.gif new file mode 100644 index 00000000..d90bb647 Binary files /dev/null and b/icon/theme/grey/swad112x32.gif differ diff --git a/icon/theme/grey/swad168x48.gif b/icon/theme/grey/swad168x48.gif new file mode 100644 index 00000000..9f64aac5 Binary files /dev/null and b/icon/theme/grey/swad168x48.gif differ diff --git a/icon/theme/grey/tab_no_off_10x34.gif b/icon/theme/grey/tab_no_off_10x34.gif new file mode 100644 index 00000000..6f3ae936 Binary files /dev/null and b/icon/theme/grey/tab_no_off_10x34.gif differ diff --git a/icon/theme/grey/tab_no_off_10x64.gif b/icon/theme/grey/tab_no_off_10x64.gif new file mode 100644 index 00000000..b3835c2d Binary files /dev/null and b/icon/theme/grey/tab_no_off_10x64.gif differ diff --git a/icon/theme/grey/tab_no_on_10x34.gif b/icon/theme/grey/tab_no_on_10x34.gif new file mode 100644 index 00000000..f52a0f25 Binary files /dev/null and b/icon/theme/grey/tab_no_on_10x34.gif differ diff --git a/icon/theme/grey/tab_no_on_10x38.gif b/icon/theme/grey/tab_no_on_10x38.gif new file mode 100644 index 00000000..17a2b1b6 Binary files /dev/null and b/icon/theme/grey/tab_no_on_10x38.gif differ diff --git a/icon/theme/grey/tab_no_on_10x64.gif b/icon/theme/grey/tab_no_on_10x64.gif new file mode 100644 index 00000000..fd590b0c Binary files /dev/null and b/icon/theme/grey/tab_no_on_10x64.gif differ diff --git a/icon/theme/grey/tab_off_1x34.gif b/icon/theme/grey/tab_off_1x34.gif new file mode 100644 index 00000000..49e8b15f Binary files /dev/null and b/icon/theme/grey/tab_off_1x34.gif differ diff --git a/icon/theme/grey/tab_off_1x64.gif b/icon/theme/grey/tab_off_1x64.gif new file mode 100644 index 00000000..f87b88f8 Binary files /dev/null and b/icon/theme/grey/tab_off_1x64.gif differ diff --git a/icon/theme/grey/tab_off_no_10x34.gif b/icon/theme/grey/tab_off_no_10x34.gif new file mode 100644 index 00000000..72dc0a06 Binary files /dev/null and b/icon/theme/grey/tab_off_no_10x34.gif differ diff --git a/icon/theme/grey/tab_off_no_10x64.gif b/icon/theme/grey/tab_off_no_10x64.gif new file mode 100644 index 00000000..6a4e6fa4 Binary files /dev/null and b/icon/theme/grey/tab_off_no_10x64.gif differ diff --git a/icon/theme/grey/tab_off_off_20x34.gif b/icon/theme/grey/tab_off_off_20x34.gif new file mode 100644 index 00000000..e0a67857 Binary files /dev/null and b/icon/theme/grey/tab_off_off_20x34.gif differ diff --git a/icon/theme/grey/tab_off_off_20x64.gif b/icon/theme/grey/tab_off_off_20x64.gif new file mode 100644 index 00000000..6662685a Binary files /dev/null and b/icon/theme/grey/tab_off_off_20x64.gif differ diff --git a/icon/theme/grey/tab_off_on_20x34.gif b/icon/theme/grey/tab_off_on_20x34.gif new file mode 100644 index 00000000..ca537203 Binary files /dev/null and b/icon/theme/grey/tab_off_on_20x34.gif differ diff --git a/icon/theme/grey/tab_off_on_20x64.gif b/icon/theme/grey/tab_off_on_20x64.gif new file mode 100644 index 00000000..09135f9b Binary files /dev/null and b/icon/theme/grey/tab_off_on_20x64.gif differ diff --git a/icon/theme/grey/tab_on_1x34.gif b/icon/theme/grey/tab_on_1x34.gif new file mode 100644 index 00000000..b72ca570 Binary files /dev/null and b/icon/theme/grey/tab_on_1x34.gif differ diff --git a/icon/theme/grey/tab_on_1x38.gif b/icon/theme/grey/tab_on_1x38.gif new file mode 100644 index 00000000..016fb736 Binary files /dev/null and b/icon/theme/grey/tab_on_1x38.gif differ diff --git a/icon/theme/grey/tab_on_1x64.gif b/icon/theme/grey/tab_on_1x64.gif new file mode 100644 index 00000000..1f632ab5 Binary files /dev/null and b/icon/theme/grey/tab_on_1x64.gif differ diff --git a/icon/theme/grey/tab_on_no_10x34.gif b/icon/theme/grey/tab_on_no_10x34.gif new file mode 100644 index 00000000..7ecd5aa0 Binary files /dev/null and b/icon/theme/grey/tab_on_no_10x34.gif differ diff --git a/icon/theme/grey/tab_on_no_10x38.gif b/icon/theme/grey/tab_on_no_10x38.gif new file mode 100644 index 00000000..5a6eec07 Binary files /dev/null and b/icon/theme/grey/tab_on_no_10x38.gif differ diff --git a/icon/theme/grey/tab_on_no_10x64.gif b/icon/theme/grey/tab_on_no_10x64.gif new file mode 100644 index 00000000..03199fa1 Binary files /dev/null and b/icon/theme/grey/tab_on_no_10x64.gif differ diff --git a/icon/theme/grey/tab_on_off_20x34.gif b/icon/theme/grey/tab_on_off_20x34.gif new file mode 100644 index 00000000..d1d28223 Binary files /dev/null and b/icon/theme/grey/tab_on_off_20x34.gif differ diff --git a/icon/theme/grey/tab_on_off_20x64.gif b/icon/theme/grey/tab_on_off_20x64.gif new file mode 100644 index 00000000..048dec33 Binary files /dev/null and b/icon/theme/grey/tab_on_off_20x64.gif differ diff --git a/icon/theme/grey/theme_32x20.gif b/icon/theme/grey/theme_32x20.gif new file mode 100644 index 00000000..b90bf707 Binary files /dev/null and b/icon/theme/grey/theme_32x20.gif differ diff --git a/icon/theme/white/central_bottom_1x10.gif b/icon/theme/white/central_bottom_1x10.gif new file mode 100644 index 00000000..2851e820 Binary files /dev/null and b/icon/theme/white/central_bottom_1x10.gif differ diff --git a/icon/theme/white/central_corner_1_10x34.gif b/icon/theme/white/central_corner_1_10x34.gif new file mode 100644 index 00000000..27858b90 Binary files /dev/null and b/icon/theme/white/central_corner_1_10x34.gif differ diff --git a/icon/theme/white/central_corner_1_10x38.gif b/icon/theme/white/central_corner_1_10x38.gif new file mode 100644 index 00000000..d532d968 Binary files /dev/null and b/icon/theme/white/central_corner_1_10x38.gif differ diff --git a/icon/theme/white/central_corner_1_10x64.gif b/icon/theme/white/central_corner_1_10x64.gif new file mode 100644 index 00000000..ea554f9a Binary files /dev/null and b/icon/theme/white/central_corner_1_10x64.gif differ diff --git a/icon/theme/white/central_corner_2_10x34.gif b/icon/theme/white/central_corner_2_10x34.gif new file mode 100644 index 00000000..62b75e36 Binary files /dev/null and b/icon/theme/white/central_corner_2_10x34.gif differ diff --git a/icon/theme/white/central_corner_2_10x38.gif b/icon/theme/white/central_corner_2_10x38.gif new file mode 100644 index 00000000..a16f7f9e Binary files /dev/null and b/icon/theme/white/central_corner_2_10x38.gif differ diff --git a/icon/theme/white/central_corner_2_10x64.gif b/icon/theme/white/central_corner_2_10x64.gif new file mode 100644 index 00000000..cd2d0af1 Binary files /dev/null and b/icon/theme/white/central_corner_2_10x64.gif differ diff --git a/icon/theme/white/central_corner_3_10x10.gif b/icon/theme/white/central_corner_3_10x10.gif new file mode 100644 index 00000000..ea66128e Binary files /dev/null and b/icon/theme/white/central_corner_3_10x10.gif differ diff --git a/icon/theme/white/central_corner_4_10x10.gif b/icon/theme/white/central_corner_4_10x10.gif new file mode 100644 index 00000000..8498d77f Binary files /dev/null and b/icon/theme/white/central_corner_4_10x10.gif differ diff --git a/icon/theme/white/central_left_10x1.gif b/icon/theme/white/central_left_10x1.gif new file mode 100644 index 00000000..56675d8e Binary files /dev/null and b/icon/theme/white/central_left_10x1.gif differ diff --git a/icon/theme/white/central_left_8x400.gif b/icon/theme/white/central_left_8x400.gif new file mode 100644 index 00000000..d2d17592 Binary files /dev/null and b/icon/theme/white/central_left_8x400.gif differ diff --git a/icon/theme/white/central_right_10x1.gif b/icon/theme/white/central_right_10x1.gif new file mode 100644 index 00000000..d68f6540 Binary files /dev/null and b/icon/theme/white/central_right_10x1.gif differ diff --git a/icon/theme/white/central_right_8x400.gif b/icon/theme/white/central_right_8x400.gif new file mode 100644 index 00000000..7f2e41d3 Binary files /dev/null and b/icon/theme/white/central_right_8x400.gif differ diff --git a/icon/theme/white/central_top_1x34.gif b/icon/theme/white/central_top_1x34.gif new file mode 100644 index 00000000..afc7c898 Binary files /dev/null and b/icon/theme/white/central_top_1x34.gif differ diff --git a/icon/theme/white/central_top_1x38.gif b/icon/theme/white/central_top_1x38.gif new file mode 100644 index 00000000..39032daa Binary files /dev/null and b/icon/theme/white/central_top_1x38.gif differ diff --git a/icon/theme/white/central_top_1x64.gif b/icon/theme/white/central_top_1x64.gif new file mode 100644 index 00000000..9967dab1 Binary files /dev/null and b/icon/theme/white/central_top_1x64.gif differ diff --git a/icon/theme/white/frame_central_bottom_1x10.gif b/icon/theme/white/frame_central_bottom_1x10.gif new file mode 100644 index 00000000..a5b09d6c Binary files /dev/null and b/icon/theme/white/frame_central_bottom_1x10.gif differ diff --git a/icon/theme/white/frame_central_corner_1_10x10.gif b/icon/theme/white/frame_central_corner_1_10x10.gif new file mode 100644 index 00000000..2fed5801 Binary files /dev/null and b/icon/theme/white/frame_central_corner_1_10x10.gif differ diff --git a/icon/theme/white/frame_central_corner_2_10x10.gif b/icon/theme/white/frame_central_corner_2_10x10.gif new file mode 100644 index 00000000..48603d91 Binary files /dev/null and b/icon/theme/white/frame_central_corner_2_10x10.gif differ diff --git a/icon/theme/white/frame_central_corner_3_10x10.gif b/icon/theme/white/frame_central_corner_3_10x10.gif new file mode 100644 index 00000000..b2eef448 Binary files /dev/null and b/icon/theme/white/frame_central_corner_3_10x10.gif differ diff --git a/icon/theme/white/frame_central_corner_4_10x10.gif b/icon/theme/white/frame_central_corner_4_10x10.gif new file mode 100644 index 00000000..6c3ddae2 Binary files /dev/null and b/icon/theme/white/frame_central_corner_4_10x10.gif differ diff --git a/icon/theme/white/frame_central_left_10x1.gif b/icon/theme/white/frame_central_left_10x1.gif new file mode 100644 index 00000000..21f1d378 Binary files /dev/null and b/icon/theme/white/frame_central_left_10x1.gif differ diff --git a/icon/theme/white/frame_central_right_10x1.gif b/icon/theme/white/frame_central_right_10x1.gif new file mode 100644 index 00000000..8b5af15b Binary files /dev/null and b/icon/theme/white/frame_central_right_10x1.gif differ diff --git a/icon/theme/white/frame_central_top_1x10.gif b/icon/theme/white/frame_central_top_1x10.gif new file mode 100644 index 00000000..32996c14 Binary files /dev/null and b/icon/theme/white/frame_central_top_1x10.gif differ diff --git a/icon/theme/white/frame_help_bottom_1x10.gif b/icon/theme/white/frame_help_bottom_1x10.gif new file mode 100644 index 00000000..2c3cd54d Binary files /dev/null and b/icon/theme/white/frame_help_bottom_1x10.gif differ diff --git a/icon/theme/white/frame_help_corner_1_10x10.gif b/icon/theme/white/frame_help_corner_1_10x10.gif new file mode 100644 index 00000000..a0dde622 Binary files /dev/null and b/icon/theme/white/frame_help_corner_1_10x10.gif differ diff --git a/icon/theme/white/frame_help_corner_2_10x10.gif b/icon/theme/white/frame_help_corner_2_10x10.gif new file mode 100644 index 00000000..94548f62 Binary files /dev/null and b/icon/theme/white/frame_help_corner_2_10x10.gif differ diff --git a/icon/theme/white/frame_help_corner_3_10x10.gif b/icon/theme/white/frame_help_corner_3_10x10.gif new file mode 100644 index 00000000..0d8e9e10 Binary files /dev/null and b/icon/theme/white/frame_help_corner_3_10x10.gif differ diff --git a/icon/theme/white/frame_help_corner_4_10x10.gif b/icon/theme/white/frame_help_corner_4_10x10.gif new file mode 100644 index 00000000..484d24d0 Binary files /dev/null and b/icon/theme/white/frame_help_corner_4_10x10.gif differ diff --git a/icon/theme/white/frame_help_left_10x1.gif b/icon/theme/white/frame_help_left_10x1.gif new file mode 100644 index 00000000..a935ebe1 Binary files /dev/null and b/icon/theme/white/frame_help_left_10x1.gif differ diff --git a/icon/theme/white/frame_help_right_10x1.gif b/icon/theme/white/frame_help_right_10x1.gif new file mode 100644 index 00000000..b99ecf0c Binary files /dev/null and b/icon/theme/white/frame_help_right_10x1.gif differ diff --git a/icon/theme/white/frame_help_top_1x10.gif b/icon/theme/white/frame_help_top_1x10.gif new file mode 100644 index 00000000..15c58983 Binary files /dev/null and b/icon/theme/white/frame_help_top_1x10.gif differ diff --git a/icon/theme/white/frame_white_bottom_1x10.gif b/icon/theme/white/frame_white_bottom_1x10.gif new file mode 100644 index 00000000..48f9afe2 Binary files /dev/null and b/icon/theme/white/frame_white_bottom_1x10.gif differ diff --git a/icon/theme/white/frame_white_corner_1_10x10.gif b/icon/theme/white/frame_white_corner_1_10x10.gif new file mode 100644 index 00000000..916b84f3 Binary files /dev/null and b/icon/theme/white/frame_white_corner_1_10x10.gif differ diff --git a/icon/theme/white/frame_white_corner_2_10x10.gif b/icon/theme/white/frame_white_corner_2_10x10.gif new file mode 100644 index 00000000..a6bec2ee Binary files /dev/null and b/icon/theme/white/frame_white_corner_2_10x10.gif differ diff --git a/icon/theme/white/frame_white_corner_3_10x10.gif b/icon/theme/white/frame_white_corner_3_10x10.gif new file mode 100644 index 00000000..b1bd47cb Binary files /dev/null and b/icon/theme/white/frame_white_corner_3_10x10.gif differ diff --git a/icon/theme/white/frame_white_corner_4_10x10.gif b/icon/theme/white/frame_white_corner_4_10x10.gif new file mode 100644 index 00000000..31602691 Binary files /dev/null and b/icon/theme/white/frame_white_corner_4_10x10.gif differ diff --git a/icon/theme/white/frame_white_left_10x1.gif b/icon/theme/white/frame_white_left_10x1.gif new file mode 100644 index 00000000..1b8ba89b Binary files /dev/null and b/icon/theme/white/frame_white_left_10x1.gif differ diff --git a/icon/theme/white/frame_white_right_10x1.gif b/icon/theme/white/frame_white_right_10x1.gif new file mode 100644 index 00000000..2c532090 Binary files /dev/null and b/icon/theme/white/frame_white_right_10x1.gif differ diff --git a/icon/theme/white/frame_white_top_1x10.gif b/icon/theme/white/frame_white_top_1x10.gif new file mode 100644 index 00000000..0c53c404 Binary files /dev/null and b/icon/theme/white/frame_white_top_1x10.gif differ diff --git a/icon/theme/white/head_base_background_1x26.gif b/icon/theme/white/head_base_background_1x26.gif new file mode 100644 index 00000000..9e9583a5 Binary files /dev/null and b/icon/theme/white/head_base_background_1x26.gif differ diff --git a/icon/theme/white/head_base_background_1x30.gif b/icon/theme/white/head_base_background_1x30.gif new file mode 100644 index 00000000..d2c2dbb1 Binary files /dev/null and b/icon/theme/white/head_base_background_1x30.gif differ diff --git a/icon/theme/white/head_base_background_1x56.gif b/icon/theme/white/head_base_background_1x56.gif new file mode 100644 index 00000000..24d8e567 Binary files /dev/null and b/icon/theme/white/head_base_background_1x56.gif differ diff --git a/icon/theme/white/head_row1_1x48.gif b/icon/theme/white/head_row1_1x48.gif new file mode 100644 index 00000000..741bba92 Binary files /dev/null and b/icon/theme/white/head_row1_1x48.gif differ diff --git a/icon/theme/white/head_row2_1x64.gif b/icon/theme/white/head_row2_1x64.gif new file mode 100644 index 00000000..cf0d4953 Binary files /dev/null and b/icon/theme/white/head_row2_1x64.gif differ diff --git a/icon/theme/white/login16x16.gif b/icon/theme/white/login16x16.gif new file mode 100644 index 00000000..89e03a43 Binary files /dev/null and b/icon/theme/white/login16x16.gif differ diff --git a/icon/theme/white/logout16x16.gif b/icon/theme/white/logout16x16.gif new file mode 100644 index 00000000..b196ec22 Binary files /dev/null and b/icon/theme/white/logout16x16.gif differ diff --git a/icon/theme/white/search16x16.gif b/icon/theme/white/search16x16.gif new file mode 100644 index 00000000..7bc12bc4 Binary files /dev/null and b/icon/theme/white/search16x16.gif differ diff --git a/icon/theme/white/search20x20.gif b/icon/theme/white/search20x20.gif new file mode 100644 index 00000000..1b46b127 Binary files /dev/null and b/icon/theme/white/search20x20.gif differ diff --git a/icon/theme/white/swad112x32.gif b/icon/theme/white/swad112x32.gif new file mode 100644 index 00000000..087a8117 Binary files /dev/null and b/icon/theme/white/swad112x32.gif differ diff --git a/icon/theme/white/swad168x48.gif b/icon/theme/white/swad168x48.gif new file mode 100644 index 00000000..092e8e36 Binary files /dev/null and b/icon/theme/white/swad168x48.gif differ diff --git a/icon/theme/white/tab_no_off_10x34.gif b/icon/theme/white/tab_no_off_10x34.gif new file mode 100644 index 00000000..03fb3fc3 Binary files /dev/null and b/icon/theme/white/tab_no_off_10x34.gif differ diff --git a/icon/theme/white/tab_no_off_10x64.gif b/icon/theme/white/tab_no_off_10x64.gif new file mode 100644 index 00000000..6d2794e2 Binary files /dev/null and b/icon/theme/white/tab_no_off_10x64.gif differ diff --git a/icon/theme/white/tab_no_on_10x34.gif b/icon/theme/white/tab_no_on_10x34.gif new file mode 100644 index 00000000..585f9cf9 Binary files /dev/null and b/icon/theme/white/tab_no_on_10x34.gif differ diff --git a/icon/theme/white/tab_no_on_10x38.gif b/icon/theme/white/tab_no_on_10x38.gif new file mode 100644 index 00000000..f4922ea0 Binary files /dev/null and b/icon/theme/white/tab_no_on_10x38.gif differ diff --git a/icon/theme/white/tab_no_on_10x64.gif b/icon/theme/white/tab_no_on_10x64.gif new file mode 100644 index 00000000..12c48c74 Binary files /dev/null and b/icon/theme/white/tab_no_on_10x64.gif differ diff --git a/icon/theme/white/tab_off_1x34.gif b/icon/theme/white/tab_off_1x34.gif new file mode 100644 index 00000000..2dc110db Binary files /dev/null and b/icon/theme/white/tab_off_1x34.gif differ diff --git a/icon/theme/white/tab_off_1x64.gif b/icon/theme/white/tab_off_1x64.gif new file mode 100644 index 00000000..fb75d1b9 Binary files /dev/null and b/icon/theme/white/tab_off_1x64.gif differ diff --git a/icon/theme/white/tab_off_no_10x34.gif b/icon/theme/white/tab_off_no_10x34.gif new file mode 100644 index 00000000..bbb8ee93 Binary files /dev/null and b/icon/theme/white/tab_off_no_10x34.gif differ diff --git a/icon/theme/white/tab_off_no_10x64.gif b/icon/theme/white/tab_off_no_10x64.gif new file mode 100644 index 00000000..70caee0b Binary files /dev/null and b/icon/theme/white/tab_off_no_10x64.gif differ diff --git a/icon/theme/white/tab_off_off_20x34.gif b/icon/theme/white/tab_off_off_20x34.gif new file mode 100644 index 00000000..02bb37f9 Binary files /dev/null and b/icon/theme/white/tab_off_off_20x34.gif differ diff --git a/icon/theme/white/tab_off_off_20x64.gif b/icon/theme/white/tab_off_off_20x64.gif new file mode 100644 index 00000000..7b5b385c Binary files /dev/null and b/icon/theme/white/tab_off_off_20x64.gif differ diff --git a/icon/theme/white/tab_off_on_20x34.gif b/icon/theme/white/tab_off_on_20x34.gif new file mode 100644 index 00000000..9ee88785 Binary files /dev/null and b/icon/theme/white/tab_off_on_20x34.gif differ diff --git a/icon/theme/white/tab_off_on_20x64.gif b/icon/theme/white/tab_off_on_20x64.gif new file mode 100644 index 00000000..944b77a3 Binary files /dev/null and b/icon/theme/white/tab_off_on_20x64.gif differ diff --git a/icon/theme/white/tab_on_1x34.gif b/icon/theme/white/tab_on_1x34.gif new file mode 100644 index 00000000..60aecb17 Binary files /dev/null and b/icon/theme/white/tab_on_1x34.gif differ diff --git a/icon/theme/white/tab_on_1x38.gif b/icon/theme/white/tab_on_1x38.gif new file mode 100644 index 00000000..3cd759a2 Binary files /dev/null and b/icon/theme/white/tab_on_1x38.gif differ diff --git a/icon/theme/white/tab_on_1x64.gif b/icon/theme/white/tab_on_1x64.gif new file mode 100644 index 00000000..983108df Binary files /dev/null and b/icon/theme/white/tab_on_1x64.gif differ diff --git a/icon/theme/white/tab_on_no_10x34.gif b/icon/theme/white/tab_on_no_10x34.gif new file mode 100644 index 00000000..288b6b5f Binary files /dev/null and b/icon/theme/white/tab_on_no_10x34.gif differ diff --git a/icon/theme/white/tab_on_no_10x38.gif b/icon/theme/white/tab_on_no_10x38.gif new file mode 100644 index 00000000..2494cfe9 Binary files /dev/null and b/icon/theme/white/tab_on_no_10x38.gif differ diff --git a/icon/theme/white/tab_on_no_10x64.gif b/icon/theme/white/tab_on_no_10x64.gif new file mode 100644 index 00000000..e08e0e49 Binary files /dev/null and b/icon/theme/white/tab_on_no_10x64.gif differ diff --git a/icon/theme/white/tab_on_off_20x34.gif b/icon/theme/white/tab_on_off_20x34.gif new file mode 100644 index 00000000..098a87da Binary files /dev/null and b/icon/theme/white/tab_on_off_20x34.gif differ diff --git a/icon/theme/white/tab_on_off_20x64.gif b/icon/theme/white/tab_on_off_20x64.gif new file mode 100644 index 00000000..73c17bf4 Binary files /dev/null and b/icon/theme/white/tab_on_off_20x64.gif differ diff --git a/icon/theme/white/theme_32x20.gif b/icon/theme/white/theme_32x20.gif new file mode 100644 index 00000000..947f6f08 Binary files /dev/null and b/icon/theme/white/theme_32x20.gif differ diff --git a/icon/theme/yellow/central_bottom_1x10.gif b/icon/theme/yellow/central_bottom_1x10.gif new file mode 100644 index 00000000..380faf89 Binary files /dev/null and b/icon/theme/yellow/central_bottom_1x10.gif differ diff --git a/icon/theme/yellow/central_corner_1_10x34.gif b/icon/theme/yellow/central_corner_1_10x34.gif new file mode 100644 index 00000000..986a700d Binary files /dev/null and b/icon/theme/yellow/central_corner_1_10x34.gif differ diff --git a/icon/theme/yellow/central_corner_1_10x38.gif b/icon/theme/yellow/central_corner_1_10x38.gif new file mode 100644 index 00000000..27417c7f Binary files /dev/null and b/icon/theme/yellow/central_corner_1_10x38.gif differ diff --git a/icon/theme/yellow/central_corner_1_10x64.gif b/icon/theme/yellow/central_corner_1_10x64.gif new file mode 100644 index 00000000..d2a8baf6 Binary files /dev/null and b/icon/theme/yellow/central_corner_1_10x64.gif differ diff --git a/icon/theme/yellow/central_corner_2_10x34.gif b/icon/theme/yellow/central_corner_2_10x34.gif new file mode 100644 index 00000000..a7a8526c Binary files /dev/null and b/icon/theme/yellow/central_corner_2_10x34.gif differ diff --git a/icon/theme/yellow/central_corner_2_10x38.gif b/icon/theme/yellow/central_corner_2_10x38.gif new file mode 100644 index 00000000..cb1e144e Binary files /dev/null and b/icon/theme/yellow/central_corner_2_10x38.gif differ diff --git a/icon/theme/yellow/central_corner_2_10x64.gif b/icon/theme/yellow/central_corner_2_10x64.gif new file mode 100644 index 00000000..ad763e68 Binary files /dev/null and b/icon/theme/yellow/central_corner_2_10x64.gif differ diff --git a/icon/theme/yellow/central_corner_3_10x10.gif b/icon/theme/yellow/central_corner_3_10x10.gif new file mode 100644 index 00000000..aa0dc565 Binary files /dev/null and b/icon/theme/yellow/central_corner_3_10x10.gif differ diff --git a/icon/theme/yellow/central_corner_4_10x10.gif b/icon/theme/yellow/central_corner_4_10x10.gif new file mode 100644 index 00000000..2b4de4b7 Binary files /dev/null and b/icon/theme/yellow/central_corner_4_10x10.gif differ diff --git a/icon/theme/yellow/central_left_10x1.gif b/icon/theme/yellow/central_left_10x1.gif new file mode 100644 index 00000000..761abb3c Binary files /dev/null and b/icon/theme/yellow/central_left_10x1.gif differ diff --git a/icon/theme/yellow/central_left_8x400.gif b/icon/theme/yellow/central_left_8x400.gif new file mode 100644 index 00000000..d9cf1c77 Binary files /dev/null and b/icon/theme/yellow/central_left_8x400.gif differ diff --git a/icon/theme/yellow/central_right_10x1.gif b/icon/theme/yellow/central_right_10x1.gif new file mode 100644 index 00000000..b11171f1 Binary files /dev/null and b/icon/theme/yellow/central_right_10x1.gif differ diff --git a/icon/theme/yellow/central_right_8x400.gif b/icon/theme/yellow/central_right_8x400.gif new file mode 100644 index 00000000..077989c3 Binary files /dev/null and b/icon/theme/yellow/central_right_8x400.gif differ diff --git a/icon/theme/yellow/central_top_1x34.gif b/icon/theme/yellow/central_top_1x34.gif new file mode 100644 index 00000000..3063f198 Binary files /dev/null and b/icon/theme/yellow/central_top_1x34.gif differ diff --git a/icon/theme/yellow/central_top_1x38.gif b/icon/theme/yellow/central_top_1x38.gif new file mode 100644 index 00000000..6fb6cf06 Binary files /dev/null and b/icon/theme/yellow/central_top_1x38.gif differ diff --git a/icon/theme/yellow/central_top_1x64.gif b/icon/theme/yellow/central_top_1x64.gif new file mode 100644 index 00000000..acd13a83 Binary files /dev/null and b/icon/theme/yellow/central_top_1x64.gif differ diff --git a/icon/theme/yellow/frame_central_bottom_1x10.gif b/icon/theme/yellow/frame_central_bottom_1x10.gif new file mode 100644 index 00000000..63532c50 Binary files /dev/null and b/icon/theme/yellow/frame_central_bottom_1x10.gif differ diff --git a/icon/theme/yellow/frame_central_corner_1_10x10.gif b/icon/theme/yellow/frame_central_corner_1_10x10.gif new file mode 100644 index 00000000..c8cbbf4f Binary files /dev/null and b/icon/theme/yellow/frame_central_corner_1_10x10.gif differ diff --git a/icon/theme/yellow/frame_central_corner_2_10x10.gif b/icon/theme/yellow/frame_central_corner_2_10x10.gif new file mode 100644 index 00000000..fb1f40af Binary files /dev/null and b/icon/theme/yellow/frame_central_corner_2_10x10.gif differ diff --git a/icon/theme/yellow/frame_central_corner_3_10x10.gif b/icon/theme/yellow/frame_central_corner_3_10x10.gif new file mode 100644 index 00000000..f07c6739 Binary files /dev/null and b/icon/theme/yellow/frame_central_corner_3_10x10.gif differ diff --git a/icon/theme/yellow/frame_central_corner_4_10x10.gif b/icon/theme/yellow/frame_central_corner_4_10x10.gif new file mode 100644 index 00000000..41486ef7 Binary files /dev/null and b/icon/theme/yellow/frame_central_corner_4_10x10.gif differ diff --git a/icon/theme/yellow/frame_central_left_10x1.gif b/icon/theme/yellow/frame_central_left_10x1.gif new file mode 100644 index 00000000..42b66ac5 Binary files /dev/null and b/icon/theme/yellow/frame_central_left_10x1.gif differ diff --git a/icon/theme/yellow/frame_central_right_10x1.gif b/icon/theme/yellow/frame_central_right_10x1.gif new file mode 100644 index 00000000..b52f3318 Binary files /dev/null and b/icon/theme/yellow/frame_central_right_10x1.gif differ diff --git a/icon/theme/yellow/frame_central_top_1x10.gif b/icon/theme/yellow/frame_central_top_1x10.gif new file mode 100644 index 00000000..73d03d35 Binary files /dev/null and b/icon/theme/yellow/frame_central_top_1x10.gif differ diff --git a/icon/theme/yellow/frame_help_bottom_1x10.gif b/icon/theme/yellow/frame_help_bottom_1x10.gif new file mode 100644 index 00000000..471f9a8d Binary files /dev/null and b/icon/theme/yellow/frame_help_bottom_1x10.gif differ diff --git a/icon/theme/yellow/frame_help_corner_1_10x10.gif b/icon/theme/yellow/frame_help_corner_1_10x10.gif new file mode 100644 index 00000000..1c2dd3a3 Binary files /dev/null and b/icon/theme/yellow/frame_help_corner_1_10x10.gif differ diff --git a/icon/theme/yellow/frame_help_corner_2_10x10.gif b/icon/theme/yellow/frame_help_corner_2_10x10.gif new file mode 100644 index 00000000..3bfb1caa Binary files /dev/null and b/icon/theme/yellow/frame_help_corner_2_10x10.gif differ diff --git a/icon/theme/yellow/frame_help_corner_3_10x10.gif b/icon/theme/yellow/frame_help_corner_3_10x10.gif new file mode 100644 index 00000000..d4eaf5a6 Binary files /dev/null and b/icon/theme/yellow/frame_help_corner_3_10x10.gif differ diff --git a/icon/theme/yellow/frame_help_corner_4_10x10.gif b/icon/theme/yellow/frame_help_corner_4_10x10.gif new file mode 100644 index 00000000..d3b754d9 Binary files /dev/null and b/icon/theme/yellow/frame_help_corner_4_10x10.gif differ diff --git a/icon/theme/yellow/frame_help_left_10x1.gif b/icon/theme/yellow/frame_help_left_10x1.gif new file mode 100644 index 00000000..b2f75309 Binary files /dev/null and b/icon/theme/yellow/frame_help_left_10x1.gif differ diff --git a/icon/theme/yellow/frame_help_right_10x1.gif b/icon/theme/yellow/frame_help_right_10x1.gif new file mode 100644 index 00000000..73f6ca03 Binary files /dev/null and b/icon/theme/yellow/frame_help_right_10x1.gif differ diff --git a/icon/theme/yellow/frame_help_top_1x10.gif b/icon/theme/yellow/frame_help_top_1x10.gif new file mode 100644 index 00000000..57591594 Binary files /dev/null and b/icon/theme/yellow/frame_help_top_1x10.gif differ diff --git a/icon/theme/yellow/frame_white_bottom_1x10.gif b/icon/theme/yellow/frame_white_bottom_1x10.gif new file mode 100644 index 00000000..48f9afe2 Binary files /dev/null and b/icon/theme/yellow/frame_white_bottom_1x10.gif differ diff --git a/icon/theme/yellow/frame_white_corner_1_10x10.gif b/icon/theme/yellow/frame_white_corner_1_10x10.gif new file mode 100644 index 00000000..916b84f3 Binary files /dev/null and b/icon/theme/yellow/frame_white_corner_1_10x10.gif differ diff --git a/icon/theme/yellow/frame_white_corner_2_10x10.gif b/icon/theme/yellow/frame_white_corner_2_10x10.gif new file mode 100644 index 00000000..a6bec2ee Binary files /dev/null and b/icon/theme/yellow/frame_white_corner_2_10x10.gif differ diff --git a/icon/theme/yellow/frame_white_corner_3_10x10.gif b/icon/theme/yellow/frame_white_corner_3_10x10.gif new file mode 100644 index 00000000..b1bd47cb Binary files /dev/null and b/icon/theme/yellow/frame_white_corner_3_10x10.gif differ diff --git a/icon/theme/yellow/frame_white_corner_4_10x10.gif b/icon/theme/yellow/frame_white_corner_4_10x10.gif new file mode 100644 index 00000000..31602691 Binary files /dev/null and b/icon/theme/yellow/frame_white_corner_4_10x10.gif differ diff --git a/icon/theme/yellow/frame_white_left_10x1.gif b/icon/theme/yellow/frame_white_left_10x1.gif new file mode 100644 index 00000000..1b8ba89b Binary files /dev/null and b/icon/theme/yellow/frame_white_left_10x1.gif differ diff --git a/icon/theme/yellow/frame_white_right_10x1.gif b/icon/theme/yellow/frame_white_right_10x1.gif new file mode 100644 index 00000000..2c532090 Binary files /dev/null and b/icon/theme/yellow/frame_white_right_10x1.gif differ diff --git a/icon/theme/yellow/frame_white_top_1x10.gif b/icon/theme/yellow/frame_white_top_1x10.gif new file mode 100644 index 00000000..0c53c404 Binary files /dev/null and b/icon/theme/yellow/frame_white_top_1x10.gif differ diff --git a/icon/theme/yellow/head_base_background_1x26.gif b/icon/theme/yellow/head_base_background_1x26.gif new file mode 100644 index 00000000..a6ee5848 Binary files /dev/null and b/icon/theme/yellow/head_base_background_1x26.gif differ diff --git a/icon/theme/yellow/head_base_background_1x30.gif b/icon/theme/yellow/head_base_background_1x30.gif new file mode 100644 index 00000000..6b1e7434 Binary files /dev/null and b/icon/theme/yellow/head_base_background_1x30.gif differ diff --git a/icon/theme/yellow/head_base_background_1x56.gif b/icon/theme/yellow/head_base_background_1x56.gif new file mode 100644 index 00000000..ba0e6b7b Binary files /dev/null and b/icon/theme/yellow/head_base_background_1x56.gif differ diff --git a/icon/theme/yellow/head_row1_1x48.gif b/icon/theme/yellow/head_row1_1x48.gif new file mode 100644 index 00000000..bf74280d Binary files /dev/null and b/icon/theme/yellow/head_row1_1x48.gif differ diff --git a/icon/theme/yellow/head_row2_1x64.gif b/icon/theme/yellow/head_row2_1x64.gif new file mode 100644 index 00000000..e8cea242 Binary files /dev/null and b/icon/theme/yellow/head_row2_1x64.gif differ diff --git a/icon/theme/yellow/login16x16.gif b/icon/theme/yellow/login16x16.gif new file mode 100644 index 00000000..4ede24a3 Binary files /dev/null and b/icon/theme/yellow/login16x16.gif differ diff --git a/icon/theme/yellow/logout16x16.gif b/icon/theme/yellow/logout16x16.gif new file mode 100644 index 00000000..39076af3 Binary files /dev/null and b/icon/theme/yellow/logout16x16.gif differ diff --git a/icon/theme/yellow/search16x16.gif b/icon/theme/yellow/search16x16.gif new file mode 100644 index 00000000..4097f8fa Binary files /dev/null and b/icon/theme/yellow/search16x16.gif differ diff --git a/icon/theme/yellow/search20x20.gif b/icon/theme/yellow/search20x20.gif new file mode 100644 index 00000000..ef3e0248 Binary files /dev/null and b/icon/theme/yellow/search20x20.gif differ diff --git a/icon/theme/yellow/swad112x32.gif b/icon/theme/yellow/swad112x32.gif new file mode 100644 index 00000000..04a810d0 Binary files /dev/null and b/icon/theme/yellow/swad112x32.gif differ diff --git a/icon/theme/yellow/swad168x48.gif b/icon/theme/yellow/swad168x48.gif new file mode 100644 index 00000000..f4596aad Binary files /dev/null and b/icon/theme/yellow/swad168x48.gif differ diff --git a/icon/theme/yellow/tab_no_off_10x34.gif b/icon/theme/yellow/tab_no_off_10x34.gif new file mode 100644 index 00000000..cc86851b Binary files /dev/null and b/icon/theme/yellow/tab_no_off_10x34.gif differ diff --git a/icon/theme/yellow/tab_no_off_10x64.gif b/icon/theme/yellow/tab_no_off_10x64.gif new file mode 100644 index 00000000..79a4cb5a Binary files /dev/null and b/icon/theme/yellow/tab_no_off_10x64.gif differ diff --git a/icon/theme/yellow/tab_no_on_10x34.gif b/icon/theme/yellow/tab_no_on_10x34.gif new file mode 100644 index 00000000..1cd45bb7 Binary files /dev/null and b/icon/theme/yellow/tab_no_on_10x34.gif differ diff --git a/icon/theme/yellow/tab_no_on_10x38.gif b/icon/theme/yellow/tab_no_on_10x38.gif new file mode 100644 index 00000000..701a98d5 Binary files /dev/null and b/icon/theme/yellow/tab_no_on_10x38.gif differ diff --git a/icon/theme/yellow/tab_no_on_10x64.gif b/icon/theme/yellow/tab_no_on_10x64.gif new file mode 100644 index 00000000..bccc426e Binary files /dev/null and b/icon/theme/yellow/tab_no_on_10x64.gif differ diff --git a/icon/theme/yellow/tab_off_1x34.gif b/icon/theme/yellow/tab_off_1x34.gif new file mode 100644 index 00000000..c0803e67 Binary files /dev/null and b/icon/theme/yellow/tab_off_1x34.gif differ diff --git a/icon/theme/yellow/tab_off_1x64.gif b/icon/theme/yellow/tab_off_1x64.gif new file mode 100644 index 00000000..26dc4dce Binary files /dev/null and b/icon/theme/yellow/tab_off_1x64.gif differ diff --git a/icon/theme/yellow/tab_off_no_10x34.gif b/icon/theme/yellow/tab_off_no_10x34.gif new file mode 100644 index 00000000..b517ca8c Binary files /dev/null and b/icon/theme/yellow/tab_off_no_10x34.gif differ diff --git a/icon/theme/yellow/tab_off_no_10x64.gif b/icon/theme/yellow/tab_off_no_10x64.gif new file mode 100644 index 00000000..4ee819ef Binary files /dev/null and b/icon/theme/yellow/tab_off_no_10x64.gif differ diff --git a/icon/theme/yellow/tab_off_off_20x34.gif b/icon/theme/yellow/tab_off_off_20x34.gif new file mode 100644 index 00000000..5066908d Binary files /dev/null and b/icon/theme/yellow/tab_off_off_20x34.gif differ diff --git a/icon/theme/yellow/tab_off_off_20x64.gif b/icon/theme/yellow/tab_off_off_20x64.gif new file mode 100644 index 00000000..eb22c62e Binary files /dev/null and b/icon/theme/yellow/tab_off_off_20x64.gif differ diff --git a/icon/theme/yellow/tab_off_on_20x34.gif b/icon/theme/yellow/tab_off_on_20x34.gif new file mode 100644 index 00000000..05719fdc Binary files /dev/null and b/icon/theme/yellow/tab_off_on_20x34.gif differ diff --git a/icon/theme/yellow/tab_off_on_20x64.gif b/icon/theme/yellow/tab_off_on_20x64.gif new file mode 100644 index 00000000..5a67435b Binary files /dev/null and b/icon/theme/yellow/tab_off_on_20x64.gif differ diff --git a/icon/theme/yellow/tab_on_1x34.gif b/icon/theme/yellow/tab_on_1x34.gif new file mode 100644 index 00000000..4385a1f1 Binary files /dev/null and b/icon/theme/yellow/tab_on_1x34.gif differ diff --git a/icon/theme/yellow/tab_on_1x38.gif b/icon/theme/yellow/tab_on_1x38.gif new file mode 100644 index 00000000..eb596b3d Binary files /dev/null and b/icon/theme/yellow/tab_on_1x38.gif differ diff --git a/icon/theme/yellow/tab_on_1x64.gif b/icon/theme/yellow/tab_on_1x64.gif new file mode 100644 index 00000000..9928955f Binary files /dev/null and b/icon/theme/yellow/tab_on_1x64.gif differ diff --git a/icon/theme/yellow/tab_on_no_10x34.gif b/icon/theme/yellow/tab_on_no_10x34.gif new file mode 100644 index 00000000..14b6f227 Binary files /dev/null and b/icon/theme/yellow/tab_on_no_10x34.gif differ diff --git a/icon/theme/yellow/tab_on_no_10x38.gif b/icon/theme/yellow/tab_on_no_10x38.gif new file mode 100644 index 00000000..3eccf052 Binary files /dev/null and b/icon/theme/yellow/tab_on_no_10x38.gif differ diff --git a/icon/theme/yellow/tab_on_no_10x64.gif b/icon/theme/yellow/tab_on_no_10x64.gif new file mode 100644 index 00000000..6f8b265c Binary files /dev/null and b/icon/theme/yellow/tab_on_no_10x64.gif differ diff --git a/icon/theme/yellow/tab_on_off_20x34.gif b/icon/theme/yellow/tab_on_off_20x34.gif new file mode 100644 index 00000000..5543b7b4 Binary files /dev/null and b/icon/theme/yellow/tab_on_off_20x34.gif differ diff --git a/icon/theme/yellow/tab_on_off_20x64.gif b/icon/theme/yellow/tab_on_off_20x64.gif new file mode 100644 index 00000000..f66a5faf Binary files /dev/null and b/icon/theme/yellow/tab_on_off_20x64.gif differ diff --git a/icon/theme/yellow/theme_32x20.gif b/icon/theme/yellow/theme_32x20.gif new file mode 100644 index 00000000..d17bd6a8 Binary files /dev/null and b/icon/theme/yellow/theme_32x20.gif differ diff --git a/icon/thread16x16.gif b/icon/thread16x16.gif new file mode 100644 index 00000000..ddf371fd Binary files /dev/null and b/icon/thread16x16.gif differ diff --git a/icon/threadnew16x16.gif b/icon/threadnew16x16.gif new file mode 100644 index 00000000..e4e40de5 Binary files /dev/null and b/icon/threadnew16x16.gif differ diff --git a/icon/time-off16x16.gif b/icon/time-off16x16.gif new file mode 100644 index 00000000..ca7bf521 Binary files /dev/null and b/icon/time-off16x16.gif differ diff --git a/icon/time16x16.gif b/icon/time16x16.gif new file mode 100644 index 00000000..2e2c8ccc Binary files /dev/null and b/icon/time16x16.gif differ diff --git a/icon/timer_off16x16.gif b/icon/timer_off16x16.gif new file mode 100644 index 00000000..8a3e0516 Binary files /dev/null and b/icon/timer_off16x16.gif differ diff --git a/icon/timer_on16x16.gif b/icon/timer_on16x16.gif new file mode 100644 index 00000000..387f94b4 Binary files /dev/null and b/icon/timer_on16x16.gif differ diff --git a/icon/tr10x32.gif b/icon/tr10x32.gif new file mode 100644 index 00000000..143343c0 Binary files /dev/null and b/icon/tr10x32.gif differ diff --git a/icon/tr120x15.gif b/icon/tr120x15.gif new file mode 100644 index 00000000..784cfca3 Binary files /dev/null and b/icon/tr120x15.gif differ diff --git a/icon/tr12x10.gif b/icon/tr12x10.gif new file mode 100644 index 00000000..f109f464 Binary files /dev/null and b/icon/tr12x10.gif differ diff --git a/icon/tr12x12.gif b/icon/tr12x12.gif new file mode 100644 index 00000000..bb271ef3 Binary files /dev/null and b/icon/tr12x12.gif differ diff --git a/icon/tr12x16.gif b/icon/tr12x16.gif new file mode 100644 index 00000000..09aceb30 Binary files /dev/null and b/icon/tr12x16.gif differ diff --git a/icon/tr16x16.gif b/icon/tr16x16.gif new file mode 100644 index 00000000..93b42998 Binary files /dev/null and b/icon/tr16x16.gif differ diff --git a/icon/tr1x14.gif b/icon/tr1x14.gif new file mode 100644 index 00000000..b27728f1 Binary files /dev/null and b/icon/tr1x14.gif differ diff --git a/icon/tr1x16.gif b/icon/tr1x16.gif new file mode 100644 index 00000000..653be1ae Binary files /dev/null and b/icon/tr1x16.gif differ diff --git a/icon/tr20x14.gif b/icon/tr20x14.gif new file mode 100644 index 00000000..eeb2596d Binary files /dev/null and b/icon/tr20x14.gif differ diff --git a/icon/tr20x20.gif b/icon/tr20x20.gif new file mode 100644 index 00000000..71327730 Binary files /dev/null and b/icon/tr20x20.gif differ diff --git a/icon/tr24x1.gif b/icon/tr24x1.gif new file mode 100644 index 00000000..ed9859d2 Binary files /dev/null and b/icon/tr24x1.gif differ diff --git a/icon/tr4x14.gif b/icon/tr4x14.gif new file mode 100644 index 00000000..b02b3635 Binary files /dev/null and b/icon/tr4x14.gif differ diff --git a/icon/tr88x10.gif b/icon/tr88x10.gif new file mode 100644 index 00000000..59ba2a6d Binary files /dev/null and b/icon/tr88x10.gif differ diff --git a/icon/tumblr16x16.gif b/icon/tumblr16x16.gif new file mode 100644 index 00000000..c0eae2db Binary files /dev/null and b/icon/tumblr16x16.gif differ diff --git a/icon/tumblr32x32.gif b/icon/tumblr32x32.gif new file mode 100644 index 00000000..c5e9e698 Binary files /dev/null and b/icon/tumblr32x32.gif differ diff --git a/icon/tumblr64x64.gif b/icon/tumblr64x64.gif new file mode 100644 index 00000000..95d85326 Binary files /dev/null and b/icon/tumblr64x64.gif differ diff --git a/icon/twitter16x16.gif b/icon/twitter16x16.gif new file mode 100644 index 00000000..975c41e5 Binary files /dev/null and b/icon/twitter16x16.gif differ diff --git a/icon/twitter32x32.gif b/icon/twitter32x32.gif new file mode 100644 index 00000000..b5af011c Binary files /dev/null and b/icon/twitter32x32.gif differ diff --git a/icon/twitter64x64.gif b/icon/twitter64x64.gif new file mode 100644 index 00000000..42463292 Binary files /dev/null and b/icon/twitter64x64.gif differ diff --git a/icon/ugr100x32.png b/icon/ugr100x32.png new file mode 100644 index 00000000..394d4e97 Binary files /dev/null and b/icon/ugr100x32.png differ diff --git a/icon/ugr16x16.gif b/icon/ugr16x16.gif new file mode 100644 index 00000000..09c4c350 Binary files /dev/null and b/icon/ugr16x16.gif differ diff --git a/icon/una.py100x32.gif b/icon/una.py100x32.gif new file mode 100644 index 00000000..460a8326 Binary files /dev/null and b/icon/una.py100x32.gif differ diff --git a/icon/una.py32x32.gif b/icon/una.py32x32.gif new file mode 100644 index 00000000..9e63d6be Binary files /dev/null and b/icon/una.py32x32.gif differ diff --git a/icon/up32x32.gif b/icon/up32x32.gif new file mode 100644 index 00000000..9c968a99 Binary files /dev/null and b/icon/up32x32.gif differ diff --git a/icon/up_off16x16.gif b/icon/up_off16x16.gif new file mode 100644 index 00000000..8f0a239b Binary files /dev/null and b/icon/up_off16x16.gif differ diff --git a/icon/up_on16x16.gif b/icon/up_on16x16.gif new file mode 100644 index 00000000..3d2b1cdb Binary files /dev/null and b/icon/up_on16x16.gif differ diff --git a/icon/upload320x320.gif b/icon/upload320x320.gif new file mode 100644 index 00000000..3e70a887 Binary files /dev/null and b/icon/upload320x320.gif differ diff --git a/icon/upload320x320_2colors.gif b/icon/upload320x320_2colors.gif new file mode 100644 index 00000000..3d2a5d2f Binary files /dev/null and b/icon/upload320x320_2colors.gif differ diff --git a/icon/user16x16.gif b/icon/user16x16.gif new file mode 100644 index 00000000..c81be23d Binary files /dev/null and b/icon/user16x16.gif differ diff --git a/icon/usr_bl.jpg b/icon/usr_bl.jpg new file mode 100644 index 00000000..3c06a622 Binary files /dev/null and b/icon/usr_bl.jpg differ diff --git a/icon/v1x14.gif b/icon/v1x14.gif new file mode 100644 index 00000000..4bbae162 Binary files /dev/null and b/icon/v1x14.gif differ diff --git a/icon/visible16x16.gif b/icon/visible16x16.gif new file mode 100644 index 00000000..f56443c3 Binary files /dev/null and b/icon/visible16x16.gif differ diff --git a/icon/visible_off12x12.gif b/icon/visible_off12x12.gif new file mode 100644 index 00000000..e74b3b17 Binary files /dev/null and b/icon/visible_off12x12.gif differ diff --git a/icon/visible_off16x16.gif b/icon/visible_off16x16.gif new file mode 100644 index 00000000..d67d9395 Binary files /dev/null and b/icon/visible_off16x16.gif differ diff --git a/icon/visible_on12x12.gif b/icon/visible_on12x12.gif new file mode 100644 index 00000000..74dcb772 Binary files /dev/null and b/icon/visible_on12x12.gif differ diff --git a/icon/visible_on16x16.gif b/icon/visible_on16x16.gif new file mode 100644 index 00000000..93d9a02c Binary files /dev/null and b/icon/visible_on16x16.gif differ diff --git a/icon/warning-anim64x64.gif b/icon/warning-anim64x64.gif new file mode 100644 index 00000000..19311ed2 Binary files /dev/null and b/icon/warning-anim64x64.gif differ diff --git a/icon/warning-empty64x64.gif b/icon/warning-empty64x64.gif new file mode 100644 index 00000000..438c5695 Binary files /dev/null and b/icon/warning-empty64x64.gif differ diff --git a/icon/warning16x16.gif b/icon/warning16x16.gif new file mode 100644 index 00000000..04b26958 Binary files /dev/null and b/icon/warning16x16.gif differ diff --git a/icon/warning64x64.gif b/icon/warning64x64.gif new file mode 100644 index 00000000..8b0c18bf Binary files /dev/null and b/icon/warning64x64.gif differ diff --git a/icon/warning80x80.tif b/icon/warning80x80.tif new file mode 100644 index 00000000..d2be3541 Binary files /dev/null and b/icon/warning80x80.tif differ diff --git a/icon/wikipedia16x16.gif b/icon/wikipedia16x16.gif new file mode 100644 index 00000000..03e9dc2d Binary files /dev/null and b/icon/wikipedia16x16.gif differ diff --git a/icon/wikipedia32x32.gif b/icon/wikipedia32x32.gif new file mode 100644 index 00000000..0962b015 Binary files /dev/null and b/icon/wikipedia32x32.gif differ diff --git a/icon/wikipedia64x64.gif b/icon/wikipedia64x64.gif new file mode 100644 index 00000000..6ccb6e9f Binary files /dev/null and b/icon/wikipedia64x64.gif differ diff --git a/icon/xmlfile16x16.gif b/icon/xmlfile16x16.gif new file mode 100644 index 00000000..51ef2112 Binary files /dev/null and b/icon/xmlfile16x16.gif differ diff --git a/icon/zip16x16.gif b/icon/zip16x16.gif new file mode 100644 index 00000000..8cc11287 Binary files /dev/null and b/icon/zip16x16.gif differ diff --git a/icon/zipfile16x16.gif b/icon/zipfile16x16.gif new file mode 100644 index 00000000..d5d4bc1d Binary files /dev/null and b/icon/zipfile16x16.gif differ diff --git a/js/swad.js b/js/swad.js new file mode 100644 index 00000000..6956fa86 --- /dev/null +++ b/js/swad.js @@ -0,0 +1,443 @@ +// swad.js: javascript functions + +/* + SWAD (Shared Workspace At a Distance), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + Copyright (C) 1999-2012 Antonio Cañas-Vargas + & Daniel J. Calandria-Hernández, + University of Granada (SPAIN) (acanas@ugr.es) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +// Global variable used in refreshConnected() +var ActionAJAX; + +// Global variables used in writeClock() +var IsToday; +var StrToday; +var Hour; +var Minute; + +// Global variables used in writeClockConnected() +var NumUsrsCon; +var ListSeconds = new Array(); +var countClockConnected = 0; + +// Write a clock updated every minute +// IsToday, StrToday, Hour and Minute are global variables initialized before call this function +function writeClock() { + var StrHour = Hour; + var StrMinute = Minute; + var MidnightExceeded = false; + var PrintableClock; + if (Minute < 10) + StrMinute = "0" + StrMinute; + if (++Minute == 60) { + Minute = 0; + if (++Hour == 24) { + Hour = 0; + MidnightExceeded = true; + } + } + if (IsToday) + PrintableClock = StrToday + ", " + StrHour + ":" + StrMinute; + else + PrintableClock = StrHour + ":" + StrMinute; + if (MidnightExceeded) + IsToday = false; // For next call + document.getElementById('hm').innerHTML = PrintableClock; + setTimeout("writeClock()",60000); +} + +function writeClockConnected() { + var BoxClock; + var Hours; + var Minutes; + var Seconds; + var StrMinutes; + var StrSeconds; + var PrintableClock; + + countClockConnected++; + countClockConnected %= 10; + for (var i=0; i= 60) { + Hours = Math.floor(Minutes / 60); + Minutes %= 60; + } else + Hours = 0; + Seconds = ListSeconds[i] % 60; + if (Hours != 0) { + StrMinutes = ((Minutes < 10) ? "0" : "") + Minutes; + StrSeconds = ((Seconds < 10) ? "0" : "") + Seconds; + PrintableClock = Hours + ":" + StrMinutes + "'" + StrSeconds + """; + } else if (Minutes != 0) { + StrSeconds = ((Seconds < 10) ? "0" : "") + Seconds; + PrintableClock = Minutes + "'" + StrSeconds + """; + } else + PrintableClock = Seconds + """; + BoxClock.innerHTML = PrintableClock; + } + } + } + setTimeout("writeClockConnected()",1000); // refresh after 1 second +} + +// Automatic refresh of connected users using AJAX. This function must be called from time to time +var objXMLHttpReqCon = false; +function refreshConnected() { + objXMLHttpReqCon = AJAXCreateObject(); + if (objXMLHttpReqCon) { + var RefreshParams = RefreshParamNxtActCon + '&' + RefreshParamIdSes + '&' + RefreshParamCrsCod; + objXMLHttpReqCon.onreadystatechange = readConnUsrsData; // onreadystatechange must be lowercase + objXMLHttpReqCon.open('POST',ActionAJAX,true); + objXMLHttpReqCon.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); + objXMLHttpReqCon.send(RefreshParams); + } +} + +// Automatic refresh of last clicks using AJAX. This function must be called from time to time +var objXMLHttpReqLog = false; +function refreshLastClicks() { + objXMLHttpReqLog = AJAXCreateObject(); + if (objXMLHttpReqLog) { + var RefreshParams = RefreshParamNxtActLog + '&' + RefreshParamIdSes + '&' + RefreshParamCrsCod; + objXMLHttpReqLog.onreadystatechange = readLastClicksData; // onreadystatechange must be lowercase + objXMLHttpReqLog.open('POST',ActionAJAX,true); + objXMLHttpReqLog.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); + objXMLHttpReqLog.send(RefreshParams); + } +} + +// Create AJAX object (try is unknown in earlier versions of Netscape, but works in IE5) +function AJAXCreateObject() { + var obj = false; + if (window.XMLHttpRequest) { // Mozilla, Safari,... + obj = new XMLHttpRequest(); + } else if (window.ActiveXObject) { // IE + try { + obj = new ActiveXObject("Msxml2.XMLHTTP"); + } catch (e) { + try { + obj = new ActiveXObject("Microsoft.XMLHTTP"); + } catch (e) {} + } + } + return obj; +} + +// Receives and show connected users data +function readConnUsrsData() { + if (objXMLHttpReqCon.readyState == 4) { // Check if data have been received + if (objXMLHttpReqCon.status == 200) { + var endOfDelay = objXMLHttpReqCon.responseText.indexOf('|',0); // Get separator position + var endOfNotif = objXMLHttpReqCon.responseText.indexOf('|',endOfDelay+1); // Get separator position + var endOfGblCon = objXMLHttpReqCon.responseText.indexOf('|',endOfNotif+1); // Get separator position + var endOfCrsCon = objXMLHttpReqCon.responseText.indexOf('|',endOfGblCon+1); // Get separator position + var endOfNumUsrs = objXMLHttpReqCon.responseText.indexOf('|',endOfCrsCon+1); // Get separator position + + var delay = parseInt(objXMLHttpReqCon.responseText.substring(0,endOfDelay)); // Get refresh delay + var htmlNotif = objXMLHttpReqCon.responseText.substring(endOfDelay +1,endOfNotif); // Get HTML code for new notifications + var htmlGblCon = objXMLHttpReqCon.responseText.substring(endOfNotif +1,endOfGblCon); // Get HTML code for connected + var htmlCrsCon = objXMLHttpReqCon.responseText.substring(endOfGblCon+1,endOfCrsCon); // Get HTML code for course connected + var NumUsrsStr = objXMLHttpReqCon.responseText.substring(endOfCrsCon+1,endOfNumUsrs); // Get number of users + var startOfUsr; + var endOfUsr; + + NumUsrsCon = (NumUsrsStr.length ? parseInt(NumUsrsStr) : 0); + + var divNewNotif = document.getElementById('msg'); // Access to new notifications DIV + if (divNewNotif) + divNewNotif.innerHTML = (htmlNotif.length) ? htmlNotif : ''; // Update new notifications DIV + + var divGblConnected = document.getElementById('globalconnected'); // Access to global connected DIV + if (divGblConnected) + divGblConnected.innerHTML = htmlGblCon; // Update global connected DIV + if (htmlCrsCon.length) { + var divCrsConnected = document.getElementById('courseconnected'); // Access to course connected DIV + if (divCrsConnected) { + divCrsConnected.innerHTML = htmlCrsCon; // Update course connected DIV + countClockConnected = 0; // Don't refresh again using writeClockConnected until past 10 seconds + startOfUsr = endOfNumUsrs + 1; + for (var NumUsr=0; NumUsr'; +} + +// Exit from zooming a user's photograph +function noZoom(imagen) { + var xPos = -(150+12); + var yPos = -(200+12+88); + document.getElementById('zoomTxt').innerHTML = ''; + document.getElementById('zoomImg').src='/icon/_.gif'; + document.getElementById('zoomLyr').style.left = xPos + 'px'; + document.getElementById('zoomLyr').style.top = yPos + 'px'; +} + +// Select or unselect a radio element in a form +function selectUnselectRadio (radio,groupRadios,numRadiosInGroup){ + if (radio.IsChecked) radio.checked = false; + radio.IsChecked = !radio.IsChecked; + for (var i=0; i Days) DayForm.options[Days].selected = true; + for (var i=DayForm.options.length; i<=Days ; i++) // Create new days at start + { var x = String (i); DayForm.options[i] = new Option(x,x); } + for (var i=DayForm.options.length-1; i>Days; i--) // Remove days at the end + DayForm.options[i] = null; +} + +// Set a the date in a date form to a specified date +function setDateTo (elem,Day,Month,Year) { + document.getElementById('StartYear').options[Year].selected = true; + document.getElementById('StartMonth').options[Month].selected = true; + adjustDateForm (elem.form.StartDay,elem.form.StartMonth,elem.form.StartYear) + document.getElementById('StartDay').options[Day].selected = true; + document.getElementById('EndYear').options[Year].selected = true; + document.getElementById('EndMonth').options[Month].selected = true; + adjustDateForm (elem.form.EndDay,elem.form.EndMonth,elem.form.EndYear) + document.getElementById('EndDay').options[Day].selected = true; +} + +// Adjust iFrame height to height of browser +function iFrameHeight () { + var h; + if (document.getElementById) { + if (self.innerHeight) // all except Explorer + h = self.innerHeight; + else if (document.documentElement && document.documentElement.clientHeight) + // Explorer 6 Strict Mode + h = document.documentElement.clientHeight; + else if (document.body) // other Explorers + h = document.body.clientHeight; + if (h == 0) h = 480; + else { + h = h - 210; + if (h < 200) h = 200; + } + document.getElementById('iframe_central').style.height = h; + } +} + +// Change text of a test descriptor +function changeTxtTag(NumTag){ + var Sel = document.getElementById('SelDesc'+NumTag); + document.getElementById('TagTxt'+NumTag).value = Sel.options[Sel.selectedIndex].value; +} + +// Change selectors of test descriptors +function changeSelTag(NumTag){ + var Sel = document.getElementById('SelDesc'+NumTag); + var Txt = document.getElementById('TagTxt'+NumTag); + for (var i=0; i + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/license/license.txt b/license/license.txt new file mode 100644 index 00000000..fdb6314b --- /dev/null +++ b/license/license.txt @@ -0,0 +1,20 @@ + + SWAD (Shared Workspace At a Distance), + is a web platform developed at the University of Granada (Spain), + and used to support university teaching. + + Copyright (C) 1999-2014 Antonio Cañas Vargas + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + \ No newline at end of file diff --git a/py/swad_smtp.py b/py/swad_smtp.py new file mode 100644 index 00000000..359e4f83 --- /dev/null +++ b/py/swad_smtp.py @@ -0,0 +1,87 @@ +#!/usr/bin/python +# +# swad_smtp.py: script called from SWAD email_to send e-mail +# +########################################################################## +# +# SWAD (Shared Workspace At a Distance, +# "Web System for Teaching Support" in English), +# is a web platform developed at the University of Granada (Spain), +# and used email_to support university teaching. +# Copyright (C) 1999-2014 Antonio Canas-Vargas +# & Daniel J. Calandria-Hernandez, +# University of Granada (SPAIN) (acanas@ugr.es) +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +########################################################################## +# +# This file has been based on a script from Antonio F. Diaz-Garcia + +import os.path +import sys +from email.utils import formatdate +from smtplib import SMTP +from smtplib import SMTPException + +# Read arguments +if len(sys.argv) < 8: + #print "Error: swad_smtp smtp_server smtp_port email_from email_password email_to email_subject email_content_filename" + sys.exit(2) + +smtp_server = sys.argv[1] +smtp_port = sys.argv[2] +email_from = sys.argv[3] +email_password = sys.argv[4] +email_to = [sys.argv[5]] +email_subject = sys.argv[6] +email_content_filename = sys.argv[7] + +# Read content from file +if not os.path.exists(email_content_filename): + #print "Error: file "+ email_content_filename + " does not exist" + sys.exit(3) +email_content_file = open (email_content_filename,'r') +email_txt = email_content_file.read() +email_content_file.close + +# Compose message +email_date = formatdate() +msg = ("From: %s\r\nTo: %s\r\nContent-type: text/plain; charset=iso-8859-1\r\nSubject: %s\r\nDate: %s\r\n\r\n" + % (email_from, ", ".join(email_to),email_subject,email_date)) +msg = msg + email_txt + +try: + # Create SMTP object + smtpObj = SMTP(smtp_server, smtp_port) + + # Identify yourself email_to SMTP server + smtpObj.ehlo() + + # Put SMTP connection in TLS mode and call ehlo again + smtpObj.starttls() + smtpObj.ehlo() + + # Login email_to service + smtpObj.login(user=email_from, password=email_password) + + # Send email + smtpObj.sendmail(email_from, email_to, msg) + + # Close connection and session. + smtpObj.quit() + +except SMTPException: + #print "Error: unable to send email" + sys.exit(1) \ No newline at end of file diff --git a/sha2/sha2.c b/sha2/sha2.c new file mode 100644 index 00000000..c88bcf8d --- /dev/null +++ b/sha2/sha2.c @@ -0,0 +1,950 @@ +/* + * FIPS 180-2 SHA-224/256/384/512 implementation + * Last update: 02/02/2007 + * Issue date: 04/30/2005 + * + * Copyright (C) 2005, 2007 Olivier Gay + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the project nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#if 1 +#define UNROLL_LOOPS /* Enable loops unrolling */ +#endif + +#include + +#include "sha2.h" + +#define SHFR(x, n) (x >> n) +#define ROTR(x, n) ((x >> n) | (x << ((sizeof(x) << 3) - n))) +#define ROTL(x, n) ((x << n) | (x >> ((sizeof(x) << 3) - n))) +#define CH(x, y, z) ((x & y) ^ (~x & z)) +#define MAJ(x, y, z) ((x & y) ^ (x & z) ^ (y & z)) + +#define SHA256_F1(x) (ROTR(x, 2) ^ ROTR(x, 13) ^ ROTR(x, 22)) +#define SHA256_F2(x) (ROTR(x, 6) ^ ROTR(x, 11) ^ ROTR(x, 25)) +#define SHA256_F3(x) (ROTR(x, 7) ^ ROTR(x, 18) ^ SHFR(x, 3)) +#define SHA256_F4(x) (ROTR(x, 17) ^ ROTR(x, 19) ^ SHFR(x, 10)) + +#define SHA512_F1(x) (ROTR(x, 28) ^ ROTR(x, 34) ^ ROTR(x, 39)) +#define SHA512_F2(x) (ROTR(x, 14) ^ ROTR(x, 18) ^ ROTR(x, 41)) +#define SHA512_F3(x) (ROTR(x, 1) ^ ROTR(x, 8) ^ SHFR(x, 7)) +#define SHA512_F4(x) (ROTR(x, 19) ^ ROTR(x, 61) ^ SHFR(x, 6)) + +#define UNPACK32(x, str) \ +{ \ + *((str) + 3) = (uint8) ((x) ); \ + *((str) + 2) = (uint8) ((x) >> 8); \ + *((str) + 1) = (uint8) ((x) >> 16); \ + *((str) + 0) = (uint8) ((x) >> 24); \ +} + +#define PACK32(str, x) \ +{ \ + *(x) = ((uint32) *((str) + 3) ) \ + | ((uint32) *((str) + 2) << 8) \ + | ((uint32) *((str) + 1) << 16) \ + | ((uint32) *((str) + 0) << 24); \ +} + +#define UNPACK64(x, str) \ +{ \ + *((str) + 7) = (uint8) ((x) ); \ + *((str) + 6) = (uint8) ((x) >> 8); \ + *((str) + 5) = (uint8) ((x) >> 16); \ + *((str) + 4) = (uint8) ((x) >> 24); \ + *((str) + 3) = (uint8) ((x) >> 32); \ + *((str) + 2) = (uint8) ((x) >> 40); \ + *((str) + 1) = (uint8) ((x) >> 48); \ + *((str) + 0) = (uint8) ((x) >> 56); \ +} + +#define PACK64(str, x) \ +{ \ + *(x) = ((uint64) *((str) + 7) ) \ + | ((uint64) *((str) + 6) << 8) \ + | ((uint64) *((str) + 5) << 16) \ + | ((uint64) *((str) + 4) << 24) \ + | ((uint64) *((str) + 3) << 32) \ + | ((uint64) *((str) + 2) << 40) \ + | ((uint64) *((str) + 1) << 48) \ + | ((uint64) *((str) + 0) << 56); \ +} + +/* Macros used for loops unrolling */ + +#define SHA256_SCR(i) \ +{ \ + w[i] = SHA256_F4(w[i - 2]) + w[i - 7] \ + + SHA256_F3(w[i - 15]) + w[i - 16]; \ +} + +#define SHA512_SCR(i) \ +{ \ + w[i] = SHA512_F4(w[i - 2]) + w[i - 7] \ + + SHA512_F3(w[i - 15]) + w[i - 16]; \ +} + +#define SHA256_EXP(a, b, c, d, e, f, g, h, j) \ +{ \ + t1 = wv[h] + SHA256_F2(wv[e]) + CH(wv[e], wv[f], wv[g]) \ + + sha256_k[j] + w[j]; \ + t2 = SHA256_F1(wv[a]) + MAJ(wv[a], wv[b], wv[c]); \ + wv[d] += t1; \ + wv[h] = t1 + t2; \ +} + +#define SHA512_EXP(a, b, c, d, e, f, g ,h, j) \ +{ \ + t1 = wv[h] + SHA512_F2(wv[e]) + CH(wv[e], wv[f], wv[g]) \ + + sha512_k[j] + w[j]; \ + t2 = SHA512_F1(wv[a]) + MAJ(wv[a], wv[b], wv[c]); \ + wv[d] += t1; \ + wv[h] = t1 + t2; \ +} + +uint32 sha224_h0[8] = + {0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, + 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4}; + +uint32 sha256_h0[8] = + {0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, + 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19}; + +uint64 sha384_h0[8] = + {0xcbbb9d5dc1059ed8ULL, 0x629a292a367cd507ULL, + 0x9159015a3070dd17ULL, 0x152fecd8f70e5939ULL, + 0x67332667ffc00b31ULL, 0x8eb44a8768581511ULL, + 0xdb0c2e0d64f98fa7ULL, 0x47b5481dbefa4fa4ULL}; + +uint64 sha512_h0[8] = + {0x6a09e667f3bcc908ULL, 0xbb67ae8584caa73bULL, + 0x3c6ef372fe94f82bULL, 0xa54ff53a5f1d36f1ULL, + 0x510e527fade682d1ULL, 0x9b05688c2b3e6c1fULL, + 0x1f83d9abfb41bd6bULL, 0x5be0cd19137e2179ULL}; + +uint32 sha256_k[64] = + {0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, + 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, + 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, + 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, + 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, + 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, + 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, + 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, + 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, + 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, + 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, + 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, + 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, + 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, + 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, + 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2}; + +uint64 sha512_k[80] = + {0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL, + 0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL, + 0x3956c25bf348b538ULL, 0x59f111f1b605d019ULL, + 0x923f82a4af194f9bULL, 0xab1c5ed5da6d8118ULL, + 0xd807aa98a3030242ULL, 0x12835b0145706fbeULL, + 0x243185be4ee4b28cULL, 0x550c7dc3d5ffb4e2ULL, + 0x72be5d74f27b896fULL, 0x80deb1fe3b1696b1ULL, + 0x9bdc06a725c71235ULL, 0xc19bf174cf692694ULL, + 0xe49b69c19ef14ad2ULL, 0xefbe4786384f25e3ULL, + 0x0fc19dc68b8cd5b5ULL, 0x240ca1cc77ac9c65ULL, + 0x2de92c6f592b0275ULL, 0x4a7484aa6ea6e483ULL, + 0x5cb0a9dcbd41fbd4ULL, 0x76f988da831153b5ULL, + 0x983e5152ee66dfabULL, 0xa831c66d2db43210ULL, + 0xb00327c898fb213fULL, 0xbf597fc7beef0ee4ULL, + 0xc6e00bf33da88fc2ULL, 0xd5a79147930aa725ULL, + 0x06ca6351e003826fULL, 0x142929670a0e6e70ULL, + 0x27b70a8546d22ffcULL, 0x2e1b21385c26c926ULL, + 0x4d2c6dfc5ac42aedULL, 0x53380d139d95b3dfULL, + 0x650a73548baf63deULL, 0x766a0abb3c77b2a8ULL, + 0x81c2c92e47edaee6ULL, 0x92722c851482353bULL, + 0xa2bfe8a14cf10364ULL, 0xa81a664bbc423001ULL, + 0xc24b8b70d0f89791ULL, 0xc76c51a30654be30ULL, + 0xd192e819d6ef5218ULL, 0xd69906245565a910ULL, + 0xf40e35855771202aULL, 0x106aa07032bbd1b8ULL, + 0x19a4c116b8d2d0c8ULL, 0x1e376c085141ab53ULL, + 0x2748774cdf8eeb99ULL, 0x34b0bcb5e19b48a8ULL, + 0x391c0cb3c5c95a63ULL, 0x4ed8aa4ae3418acbULL, + 0x5b9cca4f7763e373ULL, 0x682e6ff3d6b2b8a3ULL, + 0x748f82ee5defb2fcULL, 0x78a5636f43172f60ULL, + 0x84c87814a1f0ab72ULL, 0x8cc702081a6439ecULL, + 0x90befffa23631e28ULL, 0xa4506cebde82bde9ULL, + 0xbef9a3f7b2c67915ULL, 0xc67178f2e372532bULL, + 0xca273eceea26619cULL, 0xd186b8c721c0c207ULL, + 0xeada7dd6cde0eb1eULL, 0xf57d4f7fee6ed178ULL, + 0x06f067aa72176fbaULL, 0x0a637dc5a2c898a6ULL, + 0x113f9804bef90daeULL, 0x1b710b35131c471bULL, + 0x28db77f523047d84ULL, 0x32caab7b40c72493ULL, + 0x3c9ebe0a15c9bebcULL, 0x431d67c49c100d4cULL, + 0x4cc5d4becb3e42b6ULL, 0x597f299cfc657e2aULL, + 0x5fcb6fab3ad6faecULL, 0x6c44198c4a475817ULL}; + +/* SHA-256 functions */ + +void sha256_transf(sha256_ctx *ctx, const unsigned char *message, + unsigned int block_nb) +{ + uint32 w[64]; + uint32 wv[8]; + uint32 t1, t2; + const unsigned char *sub_block; + int i; + +#ifndef UNROLL_LOOPS + int j; +#endif + + for (i = 0; i < (int) block_nb; i++) { + sub_block = message + (i << 6); + +#ifndef UNROLL_LOOPS + for (j = 0; j < 16; j++) { + PACK32(&sub_block[j << 2], &w[j]); + } + + for (j = 16; j < 64; j++) { + SHA256_SCR(j); + } + + for (j = 0; j < 8; j++) { + wv[j] = ctx->h[j]; + } + + for (j = 0; j < 64; j++) { + t1 = wv[7] + SHA256_F2(wv[4]) + CH(wv[4], wv[5], wv[6]) + + sha256_k[j] + w[j]; + t2 = SHA256_F1(wv[0]) + MAJ(wv[0], wv[1], wv[2]); + wv[7] = wv[6]; + wv[6] = wv[5]; + wv[5] = wv[4]; + wv[4] = wv[3] + t1; + wv[3] = wv[2]; + wv[2] = wv[1]; + wv[1] = wv[0]; + wv[0] = t1 + t2; + } + + for (j = 0; j < 8; j++) { + ctx->h[j] += wv[j]; + } +#else + PACK32(&sub_block[ 0], &w[ 0]); PACK32(&sub_block[ 4], &w[ 1]); + PACK32(&sub_block[ 8], &w[ 2]); PACK32(&sub_block[12], &w[ 3]); + PACK32(&sub_block[16], &w[ 4]); PACK32(&sub_block[20], &w[ 5]); + PACK32(&sub_block[24], &w[ 6]); PACK32(&sub_block[28], &w[ 7]); + PACK32(&sub_block[32], &w[ 8]); PACK32(&sub_block[36], &w[ 9]); + PACK32(&sub_block[40], &w[10]); PACK32(&sub_block[44], &w[11]); + PACK32(&sub_block[48], &w[12]); PACK32(&sub_block[52], &w[13]); + PACK32(&sub_block[56], &w[14]); PACK32(&sub_block[60], &w[15]); + + SHA256_SCR(16); SHA256_SCR(17); SHA256_SCR(18); SHA256_SCR(19); + SHA256_SCR(20); SHA256_SCR(21); SHA256_SCR(22); SHA256_SCR(23); + SHA256_SCR(24); SHA256_SCR(25); SHA256_SCR(26); SHA256_SCR(27); + SHA256_SCR(28); SHA256_SCR(29); SHA256_SCR(30); SHA256_SCR(31); + SHA256_SCR(32); SHA256_SCR(33); SHA256_SCR(34); SHA256_SCR(35); + SHA256_SCR(36); SHA256_SCR(37); SHA256_SCR(38); SHA256_SCR(39); + SHA256_SCR(40); SHA256_SCR(41); SHA256_SCR(42); SHA256_SCR(43); + SHA256_SCR(44); SHA256_SCR(45); SHA256_SCR(46); SHA256_SCR(47); + SHA256_SCR(48); SHA256_SCR(49); SHA256_SCR(50); SHA256_SCR(51); + SHA256_SCR(52); SHA256_SCR(53); SHA256_SCR(54); SHA256_SCR(55); + SHA256_SCR(56); SHA256_SCR(57); SHA256_SCR(58); SHA256_SCR(59); + SHA256_SCR(60); SHA256_SCR(61); SHA256_SCR(62); SHA256_SCR(63); + + wv[0] = ctx->h[0]; wv[1] = ctx->h[1]; + wv[2] = ctx->h[2]; wv[3] = ctx->h[3]; + wv[4] = ctx->h[4]; wv[5] = ctx->h[5]; + wv[6] = ctx->h[6]; wv[7] = ctx->h[7]; + + SHA256_EXP(0,1,2,3,4,5,6,7, 0); SHA256_EXP(7,0,1,2,3,4,5,6, 1); + SHA256_EXP(6,7,0,1,2,3,4,5, 2); SHA256_EXP(5,6,7,0,1,2,3,4, 3); + SHA256_EXP(4,5,6,7,0,1,2,3, 4); SHA256_EXP(3,4,5,6,7,0,1,2, 5); + SHA256_EXP(2,3,4,5,6,7,0,1, 6); SHA256_EXP(1,2,3,4,5,6,7,0, 7); + SHA256_EXP(0,1,2,3,4,5,6,7, 8); SHA256_EXP(7,0,1,2,3,4,5,6, 9); + SHA256_EXP(6,7,0,1,2,3,4,5,10); SHA256_EXP(5,6,7,0,1,2,3,4,11); + SHA256_EXP(4,5,6,7,0,1,2,3,12); SHA256_EXP(3,4,5,6,7,0,1,2,13); + SHA256_EXP(2,3,4,5,6,7,0,1,14); SHA256_EXP(1,2,3,4,5,6,7,0,15); + SHA256_EXP(0,1,2,3,4,5,6,7,16); SHA256_EXP(7,0,1,2,3,4,5,6,17); + SHA256_EXP(6,7,0,1,2,3,4,5,18); SHA256_EXP(5,6,7,0,1,2,3,4,19); + SHA256_EXP(4,5,6,7,0,1,2,3,20); SHA256_EXP(3,4,5,6,7,0,1,2,21); + SHA256_EXP(2,3,4,5,6,7,0,1,22); SHA256_EXP(1,2,3,4,5,6,7,0,23); + SHA256_EXP(0,1,2,3,4,5,6,7,24); SHA256_EXP(7,0,1,2,3,4,5,6,25); + SHA256_EXP(6,7,0,1,2,3,4,5,26); SHA256_EXP(5,6,7,0,1,2,3,4,27); + SHA256_EXP(4,5,6,7,0,1,2,3,28); SHA256_EXP(3,4,5,6,7,0,1,2,29); + SHA256_EXP(2,3,4,5,6,7,0,1,30); SHA256_EXP(1,2,3,4,5,6,7,0,31); + SHA256_EXP(0,1,2,3,4,5,6,7,32); SHA256_EXP(7,0,1,2,3,4,5,6,33); + SHA256_EXP(6,7,0,1,2,3,4,5,34); SHA256_EXP(5,6,7,0,1,2,3,4,35); + SHA256_EXP(4,5,6,7,0,1,2,3,36); SHA256_EXP(3,4,5,6,7,0,1,2,37); + SHA256_EXP(2,3,4,5,6,7,0,1,38); SHA256_EXP(1,2,3,4,5,6,7,0,39); + SHA256_EXP(0,1,2,3,4,5,6,7,40); SHA256_EXP(7,0,1,2,3,4,5,6,41); + SHA256_EXP(6,7,0,1,2,3,4,5,42); SHA256_EXP(5,6,7,0,1,2,3,4,43); + SHA256_EXP(4,5,6,7,0,1,2,3,44); SHA256_EXP(3,4,5,6,7,0,1,2,45); + SHA256_EXP(2,3,4,5,6,7,0,1,46); SHA256_EXP(1,2,3,4,5,6,7,0,47); + SHA256_EXP(0,1,2,3,4,5,6,7,48); SHA256_EXP(7,0,1,2,3,4,5,6,49); + SHA256_EXP(6,7,0,1,2,3,4,5,50); SHA256_EXP(5,6,7,0,1,2,3,4,51); + SHA256_EXP(4,5,6,7,0,1,2,3,52); SHA256_EXP(3,4,5,6,7,0,1,2,53); + SHA256_EXP(2,3,4,5,6,7,0,1,54); SHA256_EXP(1,2,3,4,5,6,7,0,55); + SHA256_EXP(0,1,2,3,4,5,6,7,56); SHA256_EXP(7,0,1,2,3,4,5,6,57); + SHA256_EXP(6,7,0,1,2,3,4,5,58); SHA256_EXP(5,6,7,0,1,2,3,4,59); + SHA256_EXP(4,5,6,7,0,1,2,3,60); SHA256_EXP(3,4,5,6,7,0,1,2,61); + SHA256_EXP(2,3,4,5,6,7,0,1,62); SHA256_EXP(1,2,3,4,5,6,7,0,63); + + ctx->h[0] += wv[0]; ctx->h[1] += wv[1]; + ctx->h[2] += wv[2]; ctx->h[3] += wv[3]; + ctx->h[4] += wv[4]; ctx->h[5] += wv[5]; + ctx->h[6] += wv[6]; ctx->h[7] += wv[7]; +#endif /* !UNROLL_LOOPS */ + } +} + +void sha256(const unsigned char *message, unsigned int len, unsigned char *digest) +{ + sha256_ctx ctx; + + sha256_init(&ctx); + sha256_update(&ctx, message, len); + sha256_final(&ctx, digest); +} + +void sha256_init(sha256_ctx *ctx) +{ +#ifndef UNROLL_LOOPS + int i; + for (i = 0; i < 8; i++) { + ctx->h[i] = sha256_h0[i]; + } +#else + ctx->h[0] = sha256_h0[0]; ctx->h[1] = sha256_h0[1]; + ctx->h[2] = sha256_h0[2]; ctx->h[3] = sha256_h0[3]; + ctx->h[4] = sha256_h0[4]; ctx->h[5] = sha256_h0[5]; + ctx->h[6] = sha256_h0[6]; ctx->h[7] = sha256_h0[7]; +#endif /* !UNROLL_LOOPS */ + + ctx->len = 0; + ctx->tot_len = 0; +} + +void sha256_update(sha256_ctx *ctx, const unsigned char *message, + unsigned int len) +{ + unsigned int block_nb; + unsigned int new_len, rem_len, tmp_len; + const unsigned char *shifted_message; + + tmp_len = SHA256_BLOCK_SIZE - ctx->len; + rem_len = len < tmp_len ? len : tmp_len; + + memcpy(&ctx->block[ctx->len], message, rem_len); + + if (ctx->len + len < SHA256_BLOCK_SIZE) { + ctx->len += len; + return; + } + + new_len = len - rem_len; + block_nb = new_len / SHA256_BLOCK_SIZE; + + shifted_message = message + rem_len; + + sha256_transf(ctx, ctx->block, 1); + sha256_transf(ctx, shifted_message, block_nb); + + rem_len = new_len % SHA256_BLOCK_SIZE; + + memcpy(ctx->block, &shifted_message[block_nb << 6], + rem_len); + + ctx->len = rem_len; + ctx->tot_len += (block_nb + 1) << 6; +} + +void sha256_final(sha256_ctx *ctx, unsigned char *digest) +{ + unsigned int block_nb; + unsigned int pm_len; + unsigned int len_b; + +#ifndef UNROLL_LOOPS + int i; +#endif + + block_nb = (1 + ((SHA256_BLOCK_SIZE - 9) + < (ctx->len % SHA256_BLOCK_SIZE))); + + len_b = (ctx->tot_len + ctx->len) << 3; + pm_len = block_nb << 6; + + memset(ctx->block + ctx->len, 0, pm_len - ctx->len); + ctx->block[ctx->len] = 0x80; + UNPACK32(len_b, ctx->block + pm_len - 4); + + sha256_transf(ctx, ctx->block, block_nb); + +#ifndef UNROLL_LOOPS + for (i = 0 ; i < 8; i++) { + UNPACK32(ctx->h[i], &digest[i << 2]); + } +#else + UNPACK32(ctx->h[0], &digest[ 0]); + UNPACK32(ctx->h[1], &digest[ 4]); + UNPACK32(ctx->h[2], &digest[ 8]); + UNPACK32(ctx->h[3], &digest[12]); + UNPACK32(ctx->h[4], &digest[16]); + UNPACK32(ctx->h[5], &digest[20]); + UNPACK32(ctx->h[6], &digest[24]); + UNPACK32(ctx->h[7], &digest[28]); +#endif /* !UNROLL_LOOPS */ +} + +/* SHA-512 functions */ + +void sha512_transf(sha512_ctx *ctx, const unsigned char *message, + unsigned int block_nb) +{ + uint64 w[80]; + uint64 wv[8]; + uint64 t1, t2; + const unsigned char *sub_block; + int i, j; + + for (i = 0; i < (int) block_nb; i++) { + sub_block = message + (i << 7); + +#ifndef UNROLL_LOOPS + for (j = 0; j < 16; j++) { + PACK64(&sub_block[j << 3], &w[j]); + } + + for (j = 16; j < 80; j++) { + SHA512_SCR(j); + } + + for (j = 0; j < 8; j++) { + wv[j] = ctx->h[j]; + } + + for (j = 0; j < 80; j++) { + t1 = wv[7] + SHA512_F2(wv[4]) + CH(wv[4], wv[5], wv[6]) + + sha512_k[j] + w[j]; + t2 = SHA512_F1(wv[0]) + MAJ(wv[0], wv[1], wv[2]); + wv[7] = wv[6]; + wv[6] = wv[5]; + wv[5] = wv[4]; + wv[4] = wv[3] + t1; + wv[3] = wv[2]; + wv[2] = wv[1]; + wv[1] = wv[0]; + wv[0] = t1 + t2; + } + + for (j = 0; j < 8; j++) { + ctx->h[j] += wv[j]; + } +#else + PACK64(&sub_block[ 0], &w[ 0]); PACK64(&sub_block[ 8], &w[ 1]); + PACK64(&sub_block[ 16], &w[ 2]); PACK64(&sub_block[ 24], &w[ 3]); + PACK64(&sub_block[ 32], &w[ 4]); PACK64(&sub_block[ 40], &w[ 5]); + PACK64(&sub_block[ 48], &w[ 6]); PACK64(&sub_block[ 56], &w[ 7]); + PACK64(&sub_block[ 64], &w[ 8]); PACK64(&sub_block[ 72], &w[ 9]); + PACK64(&sub_block[ 80], &w[10]); PACK64(&sub_block[ 88], &w[11]); + PACK64(&sub_block[ 96], &w[12]); PACK64(&sub_block[104], &w[13]); + PACK64(&sub_block[112], &w[14]); PACK64(&sub_block[120], &w[15]); + + SHA512_SCR(16); SHA512_SCR(17); SHA512_SCR(18); SHA512_SCR(19); + SHA512_SCR(20); SHA512_SCR(21); SHA512_SCR(22); SHA512_SCR(23); + SHA512_SCR(24); SHA512_SCR(25); SHA512_SCR(26); SHA512_SCR(27); + SHA512_SCR(28); SHA512_SCR(29); SHA512_SCR(30); SHA512_SCR(31); + SHA512_SCR(32); SHA512_SCR(33); SHA512_SCR(34); SHA512_SCR(35); + SHA512_SCR(36); SHA512_SCR(37); SHA512_SCR(38); SHA512_SCR(39); + SHA512_SCR(40); SHA512_SCR(41); SHA512_SCR(42); SHA512_SCR(43); + SHA512_SCR(44); SHA512_SCR(45); SHA512_SCR(46); SHA512_SCR(47); + SHA512_SCR(48); SHA512_SCR(49); SHA512_SCR(50); SHA512_SCR(51); + SHA512_SCR(52); SHA512_SCR(53); SHA512_SCR(54); SHA512_SCR(55); + SHA512_SCR(56); SHA512_SCR(57); SHA512_SCR(58); SHA512_SCR(59); + SHA512_SCR(60); SHA512_SCR(61); SHA512_SCR(62); SHA512_SCR(63); + SHA512_SCR(64); SHA512_SCR(65); SHA512_SCR(66); SHA512_SCR(67); + SHA512_SCR(68); SHA512_SCR(69); SHA512_SCR(70); SHA512_SCR(71); + SHA512_SCR(72); SHA512_SCR(73); SHA512_SCR(74); SHA512_SCR(75); + SHA512_SCR(76); SHA512_SCR(77); SHA512_SCR(78); SHA512_SCR(79); + + wv[0] = ctx->h[0]; wv[1] = ctx->h[1]; + wv[2] = ctx->h[2]; wv[3] = ctx->h[3]; + wv[4] = ctx->h[4]; wv[5] = ctx->h[5]; + wv[6] = ctx->h[6]; wv[7] = ctx->h[7]; + + j = 0; + + do { + SHA512_EXP(0,1,2,3,4,5,6,7,j); j++; + SHA512_EXP(7,0,1,2,3,4,5,6,j); j++; + SHA512_EXP(6,7,0,1,2,3,4,5,j); j++; + SHA512_EXP(5,6,7,0,1,2,3,4,j); j++; + SHA512_EXP(4,5,6,7,0,1,2,3,j); j++; + SHA512_EXP(3,4,5,6,7,0,1,2,j); j++; + SHA512_EXP(2,3,4,5,6,7,0,1,j); j++; + SHA512_EXP(1,2,3,4,5,6,7,0,j); j++; + } while (j < 80); + + ctx->h[0] += wv[0]; ctx->h[1] += wv[1]; + ctx->h[2] += wv[2]; ctx->h[3] += wv[3]; + ctx->h[4] += wv[4]; ctx->h[5] += wv[5]; + ctx->h[6] += wv[6]; ctx->h[7] += wv[7]; +#endif /* !UNROLL_LOOPS */ + } +} + +void sha512(const unsigned char *message, unsigned int len, + unsigned char *digest) +{ + sha512_ctx ctx; + + sha512_init(&ctx); + sha512_update(&ctx, message, len); + sha512_final(&ctx, digest); +} + +void sha512_init(sha512_ctx *ctx) +{ +#ifndef UNROLL_LOOPS + int i; + for (i = 0; i < 8; i++) { + ctx->h[i] = sha512_h0[i]; + } +#else + ctx->h[0] = sha512_h0[0]; ctx->h[1] = sha512_h0[1]; + ctx->h[2] = sha512_h0[2]; ctx->h[3] = sha512_h0[3]; + ctx->h[4] = sha512_h0[4]; ctx->h[5] = sha512_h0[5]; + ctx->h[6] = sha512_h0[6]; ctx->h[7] = sha512_h0[7]; +#endif /* !UNROLL_LOOPS */ + + ctx->len = 0; + ctx->tot_len = 0; +} + +void sha512_update(sha512_ctx *ctx, const unsigned char *message, + unsigned int len) +{ + unsigned int block_nb; + unsigned int new_len, rem_len, tmp_len; + const unsigned char *shifted_message; + + tmp_len = SHA512_BLOCK_SIZE - ctx->len; + rem_len = len < tmp_len ? len : tmp_len; + + memcpy(&ctx->block[ctx->len], message, rem_len); + + if (ctx->len + len < SHA512_BLOCK_SIZE) { + ctx->len += len; + return; + } + + new_len = len - rem_len; + block_nb = new_len / SHA512_BLOCK_SIZE; + + shifted_message = message + rem_len; + + sha512_transf(ctx, ctx->block, 1); + sha512_transf(ctx, shifted_message, block_nb); + + rem_len = new_len % SHA512_BLOCK_SIZE; + + memcpy(ctx->block, &shifted_message[block_nb << 7], + rem_len); + + ctx->len = rem_len; + ctx->tot_len += (block_nb + 1) << 7; +} + +void sha512_final(sha512_ctx *ctx, unsigned char *digest) +{ + unsigned int block_nb; + unsigned int pm_len; + unsigned int len_b; + +#ifndef UNROLL_LOOPS + int i; +#endif + + block_nb = 1 + ((SHA512_BLOCK_SIZE - 17) + < (ctx->len % SHA512_BLOCK_SIZE)); + + len_b = (ctx->tot_len + ctx->len) << 3; + pm_len = block_nb << 7; + + memset(ctx->block + ctx->len, 0, pm_len - ctx->len); + ctx->block[ctx->len] = 0x80; + UNPACK32(len_b, ctx->block + pm_len - 4); + + sha512_transf(ctx, ctx->block, block_nb); + +#ifndef UNROLL_LOOPS + for (i = 0 ; i < 8; i++) { + UNPACK64(ctx->h[i], &digest[i << 3]); + } +#else + UNPACK64(ctx->h[0], &digest[ 0]); + UNPACK64(ctx->h[1], &digest[ 8]); + UNPACK64(ctx->h[2], &digest[16]); + UNPACK64(ctx->h[3], &digest[24]); + UNPACK64(ctx->h[4], &digest[32]); + UNPACK64(ctx->h[5], &digest[40]); + UNPACK64(ctx->h[6], &digest[48]); + UNPACK64(ctx->h[7], &digest[56]); +#endif /* !UNROLL_LOOPS */ +} + +/* SHA-384 functions */ + +void sha384(const unsigned char *message, unsigned int len, + unsigned char *digest) +{ + sha384_ctx ctx; + + sha384_init(&ctx); + sha384_update(&ctx, message, len); + sha384_final(&ctx, digest); +} + +void sha384_init(sha384_ctx *ctx) +{ +#ifndef UNROLL_LOOPS + int i; + for (i = 0; i < 8; i++) { + ctx->h[i] = sha384_h0[i]; + } +#else + ctx->h[0] = sha384_h0[0]; ctx->h[1] = sha384_h0[1]; + ctx->h[2] = sha384_h0[2]; ctx->h[3] = sha384_h0[3]; + ctx->h[4] = sha384_h0[4]; ctx->h[5] = sha384_h0[5]; + ctx->h[6] = sha384_h0[6]; ctx->h[7] = sha384_h0[7]; +#endif /* !UNROLL_LOOPS */ + + ctx->len = 0; + ctx->tot_len = 0; +} + +void sha384_update(sha384_ctx *ctx, const unsigned char *message, + unsigned int len) +{ + unsigned int block_nb; + unsigned int new_len, rem_len, tmp_len; + const unsigned char *shifted_message; + + tmp_len = SHA384_BLOCK_SIZE - ctx->len; + rem_len = len < tmp_len ? len : tmp_len; + + memcpy(&ctx->block[ctx->len], message, rem_len); + + if (ctx->len + len < SHA384_BLOCK_SIZE) { + ctx->len += len; + return; + } + + new_len = len - rem_len; + block_nb = new_len / SHA384_BLOCK_SIZE; + + shifted_message = message + rem_len; + + sha512_transf(ctx, ctx->block, 1); + sha512_transf(ctx, shifted_message, block_nb); + + rem_len = new_len % SHA384_BLOCK_SIZE; + + memcpy(ctx->block, &shifted_message[block_nb << 7], + rem_len); + + ctx->len = rem_len; + ctx->tot_len += (block_nb + 1) << 7; +} + +void sha384_final(sha384_ctx *ctx, unsigned char *digest) +{ + unsigned int block_nb; + unsigned int pm_len; + unsigned int len_b; + +#ifndef UNROLL_LOOPS + int i; +#endif + + block_nb = (1 + ((SHA384_BLOCK_SIZE - 17) + < (ctx->len % SHA384_BLOCK_SIZE))); + + len_b = (ctx->tot_len + ctx->len) << 3; + pm_len = block_nb << 7; + + memset(ctx->block + ctx->len, 0, pm_len - ctx->len); + ctx->block[ctx->len] = 0x80; + UNPACK32(len_b, ctx->block + pm_len - 4); + + sha512_transf(ctx, ctx->block, block_nb); + +#ifndef UNROLL_LOOPS + for (i = 0 ; i < 6; i++) { + UNPACK64(ctx->h[i], &digest[i << 3]); + } +#else + UNPACK64(ctx->h[0], &digest[ 0]); + UNPACK64(ctx->h[1], &digest[ 8]); + UNPACK64(ctx->h[2], &digest[16]); + UNPACK64(ctx->h[3], &digest[24]); + UNPACK64(ctx->h[4], &digest[32]); + UNPACK64(ctx->h[5], &digest[40]); +#endif /* !UNROLL_LOOPS */ +} + +/* SHA-224 functions */ + +void sha224(const unsigned char *message, unsigned int len, + unsigned char *digest) +{ + sha224_ctx ctx; + + sha224_init(&ctx); + sha224_update(&ctx, message, len); + sha224_final(&ctx, digest); +} + +void sha224_init(sha224_ctx *ctx) +{ +#ifndef UNROLL_LOOPS + int i; + for (i = 0; i < 8; i++) { + ctx->h[i] = sha224_h0[i]; + } +#else + ctx->h[0] = sha224_h0[0]; ctx->h[1] = sha224_h0[1]; + ctx->h[2] = sha224_h0[2]; ctx->h[3] = sha224_h0[3]; + ctx->h[4] = sha224_h0[4]; ctx->h[5] = sha224_h0[5]; + ctx->h[6] = sha224_h0[6]; ctx->h[7] = sha224_h0[7]; +#endif /* !UNROLL_LOOPS */ + + ctx->len = 0; + ctx->tot_len = 0; +} + +void sha224_update(sha224_ctx *ctx, const unsigned char *message, + unsigned int len) +{ + unsigned int block_nb; + unsigned int new_len, rem_len, tmp_len; + const unsigned char *shifted_message; + + tmp_len = SHA224_BLOCK_SIZE - ctx->len; + rem_len = len < tmp_len ? len : tmp_len; + + memcpy(&ctx->block[ctx->len], message, rem_len); + + if (ctx->len + len < SHA224_BLOCK_SIZE) { + ctx->len += len; + return; + } + + new_len = len - rem_len; + block_nb = new_len / SHA224_BLOCK_SIZE; + + shifted_message = message + rem_len; + + sha256_transf(ctx, ctx->block, 1); + sha256_transf(ctx, shifted_message, block_nb); + + rem_len = new_len % SHA224_BLOCK_SIZE; + + memcpy(ctx->block, &shifted_message[block_nb << 6], + rem_len); + + ctx->len = rem_len; + ctx->tot_len += (block_nb + 1) << 6; +} + +void sha224_final(sha224_ctx *ctx, unsigned char *digest) +{ + unsigned int block_nb; + unsigned int pm_len; + unsigned int len_b; + +#ifndef UNROLL_LOOPS + int i; +#endif + + block_nb = (1 + ((SHA224_BLOCK_SIZE - 9) + < (ctx->len % SHA224_BLOCK_SIZE))); + + len_b = (ctx->tot_len + ctx->len) << 3; + pm_len = block_nb << 6; + + memset(ctx->block + ctx->len, 0, pm_len - ctx->len); + ctx->block[ctx->len] = 0x80; + UNPACK32(len_b, ctx->block + pm_len - 4); + + sha256_transf(ctx, ctx->block, block_nb); + +#ifndef UNROLL_LOOPS + for (i = 0 ; i < 7; i++) { + UNPACK32(ctx->h[i], &digest[i << 2]); + } +#else + UNPACK32(ctx->h[0], &digest[ 0]); + UNPACK32(ctx->h[1], &digest[ 4]); + UNPACK32(ctx->h[2], &digest[ 8]); + UNPACK32(ctx->h[3], &digest[12]); + UNPACK32(ctx->h[4], &digest[16]); + UNPACK32(ctx->h[5], &digest[20]); + UNPACK32(ctx->h[6], &digest[24]); +#endif /* !UNROLL_LOOPS */ +} + +#ifdef TEST_VECTORS + +/* FIPS 180-2 Validation tests */ + +#include +#include + +void test(const unsigned char *vector, unsigned char *digest, + unsigned int digest_size) +{ + unsigned char output[2 * SHA512_DIGEST_SIZE + 1]; + int i; + + output[2 * digest_size] = '\0'; + + for (i = 0; i < (int) digest_size ; i++) { + sprintf((char *) output + 2 * i, "%02x", digest[i]); + } + + printf("H: %s\n", output); + if (strcmp((char *) vector, (char *) output)) { + fprintf(stderr, "Test failed.\n"); + exit(EXIT_FAILURE); + } +} + +int main() +{ + static const unsigned char *vectors[4][3] = + { /* SHA-224 */ + { + "23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7", + "75388b16512776cc5dba5da1fd890150b0c6455cb4f58b1952522525", + "20794655980c91d8bbb4c1ea97618a4bf03f42581948b2ee4ee7ad67", + }, + /* SHA-256 */ + { + "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad", + "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1", + "cdc76e5c9914fb9281a1c7e284d73e67f1809a48a497200e046d39ccc7112cd0", + }, + /* SHA-384 */ + { + "cb00753f45a35e8bb5a03d699ac65007272c32ab0eded1631a8b605a43ff5bed" + "8086072ba1e7cc2358baeca134c825a7", + "09330c33f71147e83d192fc782cd1b4753111b173b3b05d22fa08086e3b0f712" + "fcc7c71a557e2db966c3e9fa91746039", + "9d0e1809716474cb086e834e310a4a1ced149e9c00f248527972cec5704c2a5b" + "07b8b3dc38ecc4ebae97ddd87f3d8985", + }, + /* SHA-512 */ + { + "ddaf35a193617abacc417349ae20413112e6fa4e89a97ea20a9eeee64b55d39a" + "2192992a274fc1a836ba3c23a3feebbd454d4423643ce80e2a9ac94fa54ca49f", + "8e959b75dae313da8cf4f72814fc143f8f7779c6eb9f7fa17299aeadb6889018" + "501d289e4900f7e4331b99dec4b5433ac7d329eeb6dd26545e96e55b874be909", + "e718483d0ce769644e2e42c7bc15b4638e1f98b13b2044285632a803afa973eb" + "de0ff244877ea60a4cb0432ce577c31beb009c5c2c49aa2e4eadb217ad8cc09b" + } + }; + + static const unsigned char message1[] = "abc"; + static const unsigned char message2a[] = "abcdbcdecdefdefgefghfghighijhi" + "jkijkljklmklmnlmnomnopnopq"; + static const unsigned char message2b[] = + "abcdefghbcdefghicdefghijdefghijkefghij" + "klfghijklmghijklmnhijklmnoijklmnopjklm" + "nopqklmnopqrlmnopqrsmnopqrstnopqrstu"; + unsigned char *message3; + unsigned int message3_len = 1000000; + unsigned char digest[SHA512_DIGEST_SIZE]; + + message3 = malloc(message3_len); + if (message3 == NULL) { + fprintf(stderr, "Can't allocate memory\n"); + return -1; + } + memset(message3, 'a', message3_len); + + printf("SHA-2 FIPS 180-2 Validation tests\n\n"); + printf("SHA-224 Test vectors\n"); + + sha224(message1, strlen((char *) message1), digest); + test(vectors[0][0], digest, SHA224_DIGEST_SIZE); + sha224(message2a, strlen((char *) message2a), digest); + test(vectors[0][1], digest, SHA224_DIGEST_SIZE); + sha224(message3, message3_len, digest); + test(vectors[0][2], digest, SHA224_DIGEST_SIZE); + printf("\n"); + + printf("SHA-256 Test vectors\n"); + + sha256(message1, strlen((char *) message1), digest); + test(vectors[1][0], digest, SHA256_DIGEST_SIZE); + sha256(message2a, strlen((char *) message2a), digest); + test(vectors[1][1], digest, SHA256_DIGEST_SIZE); + sha256(message3, message3_len, digest); + test(vectors[1][2], digest, SHA256_DIGEST_SIZE); + printf("\n"); + + printf("SHA-384 Test vectors\n"); + + sha384(message1, strlen((char *) message1), digest); + test(vectors[2][0], digest, SHA384_DIGEST_SIZE); + sha384(message2b, strlen((char *) message2b), digest); + test(vectors[2][1], digest, SHA384_DIGEST_SIZE); + sha384(message3, message3_len, digest); + test(vectors[2][2], digest, SHA384_DIGEST_SIZE); + printf("\n"); + + printf("SHA-512 Test vectors\n"); + + sha512(message1, strlen((char *) message1), digest); + test(vectors[3][0], digest, SHA512_DIGEST_SIZE); + sha512(message2b, strlen((char *) message2b), digest); + test(vectors[3][1], digest, SHA512_DIGEST_SIZE); + sha512(message3, message3_len, digest); + test(vectors[3][2], digest, SHA512_DIGEST_SIZE); + printf("\n"); + + printf("All tests passed.\n"); + + return 0; +} + +#endif /* TEST_VECTORS */ + diff --git a/sha2/sha2.h b/sha2/sha2.h new file mode 100644 index 00000000..60f52e34 --- /dev/null +++ b/sha2/sha2.h @@ -0,0 +1,108 @@ +/* + * FIPS 180-2 SHA-224/256/384/512 implementation + * Last update: 02/02/2007 + * Issue date: 04/30/2005 + * + * Copyright (C) 2005, 2007 Olivier Gay + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the project nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef SHA2_H +#define SHA2_H + +#define SHA224_DIGEST_SIZE ( 224 / 8) +#define SHA256_DIGEST_SIZE ( 256 / 8) +#define SHA384_DIGEST_SIZE ( 384 / 8) +#define SHA512_DIGEST_SIZE ( 512 / 8) + +#define SHA256_BLOCK_SIZE ( 512 / 8) +#define SHA512_BLOCK_SIZE (1024 / 8) +#define SHA384_BLOCK_SIZE SHA512_BLOCK_SIZE +#define SHA224_BLOCK_SIZE SHA256_BLOCK_SIZE + +#ifndef SHA2_TYPES +#define SHA2_TYPES +typedef unsigned char uint8; +typedef unsigned int uint32; +typedef unsigned long long uint64; +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct { + unsigned int tot_len; + unsigned int len; + unsigned char block[2 * SHA256_BLOCK_SIZE]; + uint32 h[8]; +} sha256_ctx; + +typedef struct { + unsigned int tot_len; + unsigned int len; + unsigned char block[2 * SHA512_BLOCK_SIZE]; + uint64 h[8]; +} sha512_ctx; + +typedef sha512_ctx sha384_ctx; +typedef sha256_ctx sha224_ctx; + +void sha224_init(sha224_ctx *ctx); +void sha224_update(sha224_ctx *ctx, const unsigned char *message, + unsigned int len); +void sha224_final(sha224_ctx *ctx, unsigned char *digest); +void sha224(const unsigned char *message, unsigned int len, + unsigned char *digest); + +void sha256_init(sha256_ctx * ctx); +void sha256_update(sha256_ctx *ctx, const unsigned char *message, + unsigned int len); +void sha256_final(sha256_ctx *ctx, unsigned char *digest); +void sha256(const unsigned char *message, unsigned int len, + unsigned char *digest); + +void sha384_init(sha384_ctx *ctx); +void sha384_update(sha384_ctx *ctx, const unsigned char *message, + unsigned int len); +void sha384_final(sha384_ctx *ctx, unsigned char *digest); +void sha384(const unsigned char *message, unsigned int len, + unsigned char *digest); + +void sha512_init(sha512_ctx *ctx); +void sha512_update(sha512_ctx *ctx, const unsigned char *message, + unsigned int len); +void sha512_final(sha512_ctx *ctx, unsigned char *digest); +void sha512(const unsigned char *message, unsigned int len, + unsigned char *digest); + +#ifdef __cplusplus +} +#endif + +#endif /* !SHA2_H */ + diff --git a/sha2/sha2.o b/sha2/sha2.o new file mode 100644 index 00000000..eb7eac09 Binary files /dev/null and b/sha2/sha2.o differ diff --git a/soap/soapC.c b/soap/soapC.c new file mode 100644 index 00000000..e910ebca --- /dev/null +++ b/soap/soapC.c @@ -0,0 +1,11292 @@ +/* soapC.c + Generated by gSOAP 2.8.18 from swad_web_service.h + +Copyright(C) 2000-2014, Robert van Engelen, Genivia Inc. All Rights Reserved. +The generated code is released under one of the following licenses: +GPL or Genivia's license for commercial use. +This program is released under the GPL with the additional exemption that +compiling, linking, and/or using OpenSSL is allowed. +*/ + +#if defined(__BORLANDC__) +#pragma option push -w-8060 +#pragma option push -w-8004 +#endif + +#include "soapH.h" + +#ifdef __cplusplus +extern "C" { +#endif + +SOAP_SOURCE_STAMP("@(#) soapC.c ver 2.8.18 2014-11-18 09:33:58 GMT") + + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 int SOAP_FMAC4 soap_getheader(struct soap *soap) +{ + soap->part = SOAP_IN_HEADER; + soap->header = soap_in_SOAP_ENV__Header(soap, "SOAP-ENV:Header", soap->header, NULL); + soap->part = SOAP_END_HEADER; + return soap->header == NULL; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_putheader(struct soap *soap) +{ + if (soap->version && soap->header) + { soap->part = SOAP_IN_HEADER; + if (soap_out_SOAP_ENV__Header(soap, "SOAP-ENV:Header", 0, soap->header, NULL)) + return soap->error; + soap->part = SOAP_END_HEADER; + } + return SOAP_OK; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serializeheader(struct soap *soap) +{ + if (soap->version && soap->header) + soap_serialize_SOAP_ENV__Header(soap, soap->header); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_header(struct soap *soap) +{ + if (soap->header == NULL) + { if ((soap->header = (struct SOAP_ENV__Header*)soap_malloc(soap, sizeof(struct SOAP_ENV__Header)))) + soap_default_SOAP_ENV__Header(soap, soap->header); + } +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap) +{ + if (soap->fault == NULL) + { soap->fault = (struct SOAP_ENV__Fault*)soap_malloc(soap, sizeof(struct SOAP_ENV__Fault)); + if (soap->fault == NULL) + return; + soap_default_SOAP_ENV__Fault(soap, soap->fault); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Code) + { soap->fault->SOAP_ENV__Code = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code); + } + if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason) + { soap->fault->SOAP_ENV__Reason = (struct SOAP_ENV__Reason*)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason)); + soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason); + } +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap) +{ + if (soap->fault) + soap_serialize_SOAP_ENV__Fault(soap, soap->fault); +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_putfault(struct soap *soap) +{ + if (soap->fault) + return soap_put_SOAP_ENV__Fault(soap, soap->fault, "SOAP-ENV:Fault", NULL); + return SOAP_OK; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_getfault(struct soap *soap) +{ + return (soap->fault = soap_get_SOAP_ENV__Fault(soap, NULL, "SOAP-ENV:Fault", NULL)) == NULL; +} + +SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2 && soap->fault->SOAP_ENV__Code) + return (const char**)(void*)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Value; + return (const char**)(void*)&soap->fault->faultcode; +} + +SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultsubcode(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2) + { if (soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode == NULL) + { soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = (struct SOAP_ENV__Code*)soap_malloc(soap, sizeof(struct SOAP_ENV__Code)); + soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode); + } + return (const char**)(void*)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; + } + return (const char**)(void*)&soap->fault->faultcode; +} + +SOAP_FMAC3 const char * SOAP_FMAC4 soap_check_faultsubcode(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2) + { if (soap->fault->SOAP_ENV__Code && soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode && soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode) + return soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value; + return NULL; + } + return soap->fault->faultcode; +} + +SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultstring(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2) + return (const char**)(void*)&soap->fault->SOAP_ENV__Reason->SOAP_ENV__Text; + return (const char**)(void*)&soap->fault->faultstring; +} + +SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultdetail(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2) + { if (soap->fault->SOAP_ENV__Detail == NULL) + { soap->fault->SOAP_ENV__Detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); + soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail); + } + return (const char**)(void*)&soap->fault->SOAP_ENV__Detail->__any; + } + if (soap->fault->detail == NULL) + { soap->fault->detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail)); + soap_default_SOAP_ENV__Detail(soap, soap->fault->detail); + } + return (const char**)(void*)&soap->fault->detail->__any; +} + +SOAP_FMAC3 const char * SOAP_FMAC4 soap_check_faultdetail(struct soap *soap) +{ + soap_fault(soap); + if (soap->version == 2 && soap->fault->SOAP_ENV__Detail) + return soap->fault->SOAP_ENV__Detail->__any; + if (soap->fault->detail) + return soap->fault->detail->__any; + return NULL; +} + +#endif + +#ifndef WITH_NOIDREF +SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap *soap) +{ + int t; + if (soap->version == 1) + { for (;;) + { if (!soap_getelement(soap, &t)) + if (soap->error || soap_ignore_element(soap)) + break; + } + } + if (soap->error == SOAP_NO_TAG || soap->error == SOAP_EOF) + soap->error = SOAP_OK; + return soap->error; +} +#endif +SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type) +{ (void)type; + if (soap_peek_element(soap)) + return NULL; +#ifndef WITH_NOIDREF + if (!*soap->id || !(*type = soap_lookup_type(soap, soap->id))) + *type = soap_lookup_type(soap, soap->href); + switch (*type) + { + case SOAP_TYPE_byte: + return soap_in_byte(soap, NULL, NULL, "xsd:byte"); + case SOAP_TYPE_int: + return soap_in_int(soap, NULL, NULL, "xsd:int"); + case SOAP_TYPE_long: + return soap_in_long(soap, NULL, NULL, "xsd:long"); + case SOAP_TYPE_swad__sendMessage: + return soap_in_swad__sendMessage(soap, NULL, NULL, "swad:sendMessage"); + case SOAP_TYPE_swad__sendNotice: + return soap_in_swad__sendNotice(soap, NULL, NULL, "swad:sendNotice"); + case SOAP_TYPE_swad__markNotificationsAsRead: + return soap_in_swad__markNotificationsAsRead(soap, NULL, NULL, "swad:markNotificationsAsRead"); + case SOAP_TYPE_swad__getNotifications: + return soap_in_swad__getNotifications(soap, NULL, NULL, "swad:getNotifications"); + case SOAP_TYPE_swad__sendAttendanceUsers: + return soap_in_swad__sendAttendanceUsers(soap, NULL, NULL, "swad:sendAttendanceUsers"); + case SOAP_TYPE_swad__getAttendanceUsers: + return soap_in_swad__getAttendanceUsers(soap, NULL, NULL, "swad:getAttendanceUsers"); + case SOAP_TYPE_swad__sendAttendanceEvent: + return soap_in_swad__sendAttendanceEvent(soap, NULL, NULL, "swad:sendAttendanceEvent"); + case SOAP_TYPE_swad__getAttendanceEvents: + return soap_in_swad__getAttendanceEvents(soap, NULL, NULL, "swad:getAttendanceEvents"); + case SOAP_TYPE_swad__getUsers: + return soap_in_swad__getUsers(soap, NULL, NULL, "swad:getUsers"); + case SOAP_TYPE_swad__getTests: + return soap_in_swad__getTests(soap, NULL, NULL, "swad:getTests"); + case SOAP_TYPE_swad__getTestConfig: + return soap_in_swad__getTestConfig(soap, NULL, NULL, "swad:getTestConfig"); + case SOAP_TYPE_swad__getMarks: + return soap_in_swad__getMarks(soap, NULL, NULL, "swad:getMarks"); + case SOAP_TYPE_swad__getFile: + return soap_in_swad__getFile(soap, NULL, NULL, "swad:getFile"); + case SOAP_TYPE_swad__getDirectoryTree: + return soap_in_swad__getDirectoryTree(soap, NULL, NULL, "swad:getDirectoryTree"); + case SOAP_TYPE_swad__sendMyGroups: + return soap_in_swad__sendMyGroups(soap, NULL, NULL, "swad:sendMyGroups"); + case SOAP_TYPE_swad__getGroups: + return soap_in_swad__getGroups(soap, NULL, NULL, "swad:getGroups"); + case SOAP_TYPE_swad__getGroupTypes: + return soap_in_swad__getGroupTypes(soap, NULL, NULL, "swad:getGroupTypes"); + case SOAP_TYPE_swad__getCourseInfo: + return soap_in_swad__getCourseInfo(soap, NULL, NULL, "swad:getCourseInfo"); + case SOAP_TYPE_swad__getCourses: + return soap_in_swad__getCourses(soap, NULL, NULL, "swad:getCourses"); + case SOAP_TYPE_swad__getNewPassword: + return soap_in_swad__getNewPassword(soap, NULL, NULL, "swad:getNewPassword"); + case SOAP_TYPE_swad__loginBySessionKey: + return soap_in_swad__loginBySessionKey(soap, NULL, NULL, "swad:loginBySessionKey"); + case SOAP_TYPE_swad__loginByUserPasswordKey: + return soap_in_swad__loginByUserPasswordKey(soap, NULL, NULL, "swad:loginByUserPasswordKey"); + case SOAP_TYPE_swad__createAccount: + return soap_in_swad__createAccount(soap, NULL, NULL, "swad:createAccount"); + case SOAP_TYPE_swad__sendMessageOutput: + return soap_in_swad__sendMessageOutput(soap, NULL, NULL, "swad:sendMessageOutput"); + case SOAP_TYPE_swad__sendNoticeOutput: + return soap_in_swad__sendNoticeOutput(soap, NULL, NULL, "swad:sendNoticeOutput"); + case SOAP_TYPE_swad__getMarksOutput: + return soap_in_swad__getMarksOutput(soap, NULL, NULL, "swad:getMarksOutput"); + case SOAP_TYPE_swad__getFileOutput: + return soap_in_swad__getFileOutput(soap, NULL, NULL, "swad:getFileOutput"); + case SOAP_TYPE_swad__getDirectoryTreeOutput: + return soap_in_swad__getDirectoryTreeOutput(soap, NULL, NULL, "swad:getDirectoryTreeOutput"); + case SOAP_TYPE_swad__sendAttendanceUsersOutput: + return soap_in_swad__sendAttendanceUsersOutput(soap, NULL, NULL, "swad:sendAttendanceUsersOutput"); + case SOAP_TYPE_swad__getAttendanceUsersOutput: + return soap_in_swad__getAttendanceUsersOutput(soap, NULL, NULL, "swad:getAttendanceUsersOutput"); + case SOAP_TYPE_swad__attendanceUsersArray: + return soap_in_swad__attendanceUsersArray(soap, NULL, NULL, "swad:attendanceUsersArray"); + case SOAP_TYPE_swad__attendanceUser: + return soap_in_swad__attendanceUser(soap, NULL, NULL, "swad:attendanceUser"); + case SOAP_TYPE_swad__sendAttendanceEventOutput: + return soap_in_swad__sendAttendanceEventOutput(soap, NULL, NULL, "swad:sendAttendanceEventOutput"); + case SOAP_TYPE_swad__getAttendanceEventsOutput: + return soap_in_swad__getAttendanceEventsOutput(soap, NULL, NULL, "swad:getAttendanceEventsOutput"); + case SOAP_TYPE_swad__attendanceEventsArray: + return soap_in_swad__attendanceEventsArray(soap, NULL, NULL, "swad:attendanceEventsArray"); + case SOAP_TYPE_swad__attendanceEvent: + return soap_in_swad__attendanceEvent(soap, NULL, NULL, "swad:attendanceEvent"); + case SOAP_TYPE_swad__getUsersOutput: + return soap_in_swad__getUsersOutput(soap, NULL, NULL, "swad:getUsersOutput"); + case SOAP_TYPE_swad__usersArray: + return soap_in_swad__usersArray(soap, NULL, NULL, "swad:usersArray"); + case SOAP_TYPE_swad__user: + return soap_in_swad__user(soap, NULL, NULL, "swad:user"); + case SOAP_TYPE_swad__getTestsOutput: + return soap_in_swad__getTestsOutput(soap, NULL, NULL, "swad:getTestsOutput"); + case SOAP_TYPE_swad__questionTagsArray: + return soap_in_swad__questionTagsArray(soap, NULL, NULL, "swad:questionTagsArray"); + case SOAP_TYPE_swad__questionTag: + return soap_in_swad__questionTag(soap, NULL, NULL, "swad:questionTag"); + case SOAP_TYPE_swad__answersArray: + return soap_in_swad__answersArray(soap, NULL, NULL, "swad:answersArray"); + case SOAP_TYPE_swad__answer: + return soap_in_swad__answer(soap, NULL, NULL, "swad:answer"); + case SOAP_TYPE_swad__questionsArray: + return soap_in_swad__questionsArray(soap, NULL, NULL, "swad:questionsArray"); + case SOAP_TYPE_swad__question: + return soap_in_swad__question(soap, NULL, NULL, "swad:question"); + case SOAP_TYPE_swad__tagsArray: + return soap_in_swad__tagsArray(soap, NULL, NULL, "swad:tagsArray"); + case SOAP_TYPE_swad__tag: + return soap_in_swad__tag(soap, NULL, NULL, "swad:tag"); + case SOAP_TYPE_swad__getTestConfigOutput: + return soap_in_swad__getTestConfigOutput(soap, NULL, NULL, "swad:getTestConfigOutput"); + case SOAP_TYPE_swad__markNotificationsAsReadOutput: + return soap_in_swad__markNotificationsAsReadOutput(soap, NULL, NULL, "swad:markNotificationsAsReadOutput"); + case SOAP_TYPE_swad__getNotificationsOutput: + return soap_in_swad__getNotificationsOutput(soap, NULL, NULL, "swad:getNotificationsOutput"); + case SOAP_TYPE_swad__notificationsArray: + return soap_in_swad__notificationsArray(soap, NULL, NULL, "swad:notificationsArray"); + case SOAP_TYPE_swad__notification: + return soap_in_swad__notification(soap, NULL, NULL, "swad:notification"); + case SOAP_TYPE_swad__sendMyGroupsOutput: + return soap_in_swad__sendMyGroupsOutput(soap, NULL, NULL, "swad:sendMyGroupsOutput"); + case SOAP_TYPE_swad__getGroupsOutput: + return soap_in_swad__getGroupsOutput(soap, NULL, NULL, "swad:getGroupsOutput"); + case SOAP_TYPE_swad__groupsArray: + return soap_in_swad__groupsArray(soap, NULL, NULL, "swad:groupsArray"); + case SOAP_TYPE_swad__group: + return soap_in_swad__group(soap, NULL, NULL, "swad:group"); + case SOAP_TYPE_swad__getGroupTypesOutput: + return soap_in_swad__getGroupTypesOutput(soap, NULL, NULL, "swad:getGroupTypesOutput"); + case SOAP_TYPE_swad__groupTypesArray: + return soap_in_swad__groupTypesArray(soap, NULL, NULL, "swad:groupTypesArray"); + case SOAP_TYPE_swad__groupType: + return soap_in_swad__groupType(soap, NULL, NULL, "swad:groupType"); + case SOAP_TYPE_swad__getCourseInfoOutput: + return soap_in_swad__getCourseInfoOutput(soap, NULL, NULL, "swad:getCourseInfoOutput"); + case SOAP_TYPE_swad__getCoursesOutput: + return soap_in_swad__getCoursesOutput(soap, NULL, NULL, "swad:getCoursesOutput"); + case SOAP_TYPE_swad__coursesArray: + return soap_in_swad__coursesArray(soap, NULL, NULL, "swad:coursesArray"); + case SOAP_TYPE_swad__course: + return soap_in_swad__course(soap, NULL, NULL, "swad:course"); + case SOAP_TYPE_swad__getNewPasswordOutput: + return soap_in_swad__getNewPasswordOutput(soap, NULL, NULL, "swad:getNewPasswordOutput"); + case SOAP_TYPE_swad__loginByUserPasswordKeyOutput: + return soap_in_swad__loginByUserPasswordKeyOutput(soap, NULL, NULL, "swad:loginByUserPasswordKeyOutput"); + case SOAP_TYPE_swad__loginBySessionKeyOutput: + return soap_in_swad__loginBySessionKeyOutput(soap, NULL, NULL, "swad:loginBySessionKeyOutput"); + case SOAP_TYPE_swad__createAccountOutput: + return soap_in_swad__createAccountOutput(soap, NULL, NULL, "swad:createAccountOutput"); + case SOAP_TYPE_PointerToswad__sendMessageOutput: + return soap_in_PointerToswad__sendMessageOutput(soap, NULL, NULL, "swad:sendMessageOutput"); + case SOAP_TYPE_PointerToswad__sendNoticeOutput: + return soap_in_PointerToswad__sendNoticeOutput(soap, NULL, NULL, "swad:sendNoticeOutput"); + case SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput: + return soap_in_PointerToswad__markNotificationsAsReadOutput(soap, NULL, NULL, "swad:markNotificationsAsReadOutput"); + case SOAP_TYPE_PointerToswad__getNotificationsOutput: + return soap_in_PointerToswad__getNotificationsOutput(soap, NULL, NULL, "swad:getNotificationsOutput"); + case SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput: + return soap_in_PointerToswad__sendAttendanceUsersOutput(soap, NULL, NULL, "swad:sendAttendanceUsersOutput"); + case SOAP_TYPE_PointerToswad__getAttendanceUsersOutput: + return soap_in_PointerToswad__getAttendanceUsersOutput(soap, NULL, NULL, "swad:getAttendanceUsersOutput"); + case SOAP_TYPE_PointerToswad__sendAttendanceEventOutput: + return soap_in_PointerToswad__sendAttendanceEventOutput(soap, NULL, NULL, "swad:sendAttendanceEventOutput"); + case SOAP_TYPE_PointerToswad__getAttendanceEventsOutput: + return soap_in_PointerToswad__getAttendanceEventsOutput(soap, NULL, NULL, "swad:getAttendanceEventsOutput"); + case SOAP_TYPE_PointerToswad__getUsersOutput: + return soap_in_PointerToswad__getUsersOutput(soap, NULL, NULL, "swad:getUsersOutput"); + case SOAP_TYPE_PointerToswad__getTestsOutput: + return soap_in_PointerToswad__getTestsOutput(soap, NULL, NULL, "swad:getTestsOutput"); + case SOAP_TYPE_PointerToswad__getTestConfigOutput: + return soap_in_PointerToswad__getTestConfigOutput(soap, NULL, NULL, "swad:getTestConfigOutput"); + case SOAP_TYPE_PointerToswad__getMarksOutput: + return soap_in_PointerToswad__getMarksOutput(soap, NULL, NULL, "swad:getMarksOutput"); + case SOAP_TYPE_PointerToswad__getFileOutput: + return soap_in_PointerToswad__getFileOutput(soap, NULL, NULL, "swad:getFileOutput"); + case SOAP_TYPE_PointerToswad__getDirectoryTreeOutput: + return soap_in_PointerToswad__getDirectoryTreeOutput(soap, NULL, NULL, "swad:getDirectoryTreeOutput"); + case SOAP_TYPE_PointerToswad__sendMyGroupsOutput: + return soap_in_PointerToswad__sendMyGroupsOutput(soap, NULL, NULL, "swad:sendMyGroupsOutput"); + case SOAP_TYPE_PointerToswad__getGroupsOutput: + return soap_in_PointerToswad__getGroupsOutput(soap, NULL, NULL, "swad:getGroupsOutput"); + case SOAP_TYPE_PointerToswad__getGroupTypesOutput: + return soap_in_PointerToswad__getGroupTypesOutput(soap, NULL, NULL, "swad:getGroupTypesOutput"); + case SOAP_TYPE_PointerToswad__getCourseInfoOutput: + return soap_in_PointerToswad__getCourseInfoOutput(soap, NULL, NULL, "swad:getCourseInfoOutput"); + case SOAP_TYPE_PointerToswad__getCoursesOutput: + return soap_in_PointerToswad__getCoursesOutput(soap, NULL, NULL, "swad:getCoursesOutput"); + case SOAP_TYPE_PointerToswad__getNewPasswordOutput: + return soap_in_PointerToswad__getNewPasswordOutput(soap, NULL, NULL, "swad:getNewPasswordOutput"); + case SOAP_TYPE_PointerToswad__loginBySessionKeyOutput: + return soap_in_PointerToswad__loginBySessionKeyOutput(soap, NULL, NULL, "swad:loginBySessionKeyOutput"); + case SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput: + return soap_in_PointerToswad__loginByUserPasswordKeyOutput(soap, NULL, NULL, "swad:loginByUserPasswordKeyOutput"); + case SOAP_TYPE_PointerToswad__createAccountOutput: + return soap_in_PointerToswad__createAccountOutput(soap, NULL, NULL, "swad:createAccountOutput"); + case SOAP_TYPE_PointerToswad__attendanceUser: + return soap_in_PointerToswad__attendanceUser(soap, NULL, NULL, "swad:attendanceUser"); + case SOAP_TYPE_PointerToswad__attendanceEvent: + return soap_in_PointerToswad__attendanceEvent(soap, NULL, NULL, "swad:attendanceEvent"); + case SOAP_TYPE_PointerToswad__user: + return soap_in_PointerToswad__user(soap, NULL, NULL, "swad:user"); + case SOAP_TYPE_PointerToswad__questionTag: + return soap_in_PointerToswad__questionTag(soap, NULL, NULL, "swad:questionTag"); + case SOAP_TYPE_PointerToswad__answer: + return soap_in_PointerToswad__answer(soap, NULL, NULL, "swad:answer"); + case SOAP_TYPE_PointerToswad__question: + return soap_in_PointerToswad__question(soap, NULL, NULL, "swad:question"); + case SOAP_TYPE_PointerToswad__tag: + return soap_in_PointerToswad__tag(soap, NULL, NULL, "swad:tag"); + case SOAP_TYPE_PointerToswad__notification: + return soap_in_PointerToswad__notification(soap, NULL, NULL, "swad:notification"); + case SOAP_TYPE_PointerToswad__group: + return soap_in_PointerToswad__group(soap, NULL, NULL, "swad:group"); + case SOAP_TYPE_PointerToswad__groupType: + return soap_in_PointerToswad__groupType(soap, NULL, NULL, "swad:groupType"); + case SOAP_TYPE_PointerToswad__course: + return soap_in_PointerToswad__course(soap, NULL, NULL, "swad:course"); + case SOAP_TYPE__QName: + { char **s; + s = soap_in__QName(soap, NULL, NULL, "xsd:QName"); + return s ? *s : NULL; + } + case SOAP_TYPE_string: + { char **s; + s = soap_in_string(soap, NULL, NULL, "xsd:string"); + return s ? *s : NULL; + } + default: +#else + *type = 0; +#endif + { const char *t = soap->type; + if (!*t) + t = soap->tag; + if (!soap_match_tag(soap, t, "xsd:byte")) + { *type = SOAP_TYPE_byte; + return soap_in_byte(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "xsd:int")) + { *type = SOAP_TYPE_int; + return soap_in_int(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "xsd:long")) + { *type = SOAP_TYPE_long; + return soap_in_long(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendMessage")) + { *type = SOAP_TYPE_swad__sendMessage; + return soap_in_swad__sendMessage(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendNotice")) + { *type = SOAP_TYPE_swad__sendNotice; + return soap_in_swad__sendNotice(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:markNotificationsAsRead")) + { *type = SOAP_TYPE_swad__markNotificationsAsRead; + return soap_in_swad__markNotificationsAsRead(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getNotifications")) + { *type = SOAP_TYPE_swad__getNotifications; + return soap_in_swad__getNotifications(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendAttendanceUsers")) + { *type = SOAP_TYPE_swad__sendAttendanceUsers; + return soap_in_swad__sendAttendanceUsers(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getAttendanceUsers")) + { *type = SOAP_TYPE_swad__getAttendanceUsers; + return soap_in_swad__getAttendanceUsers(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendAttendanceEvent")) + { *type = SOAP_TYPE_swad__sendAttendanceEvent; + return soap_in_swad__sendAttendanceEvent(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getAttendanceEvents")) + { *type = SOAP_TYPE_swad__getAttendanceEvents; + return soap_in_swad__getAttendanceEvents(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getUsers")) + { *type = SOAP_TYPE_swad__getUsers; + return soap_in_swad__getUsers(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getTests")) + { *type = SOAP_TYPE_swad__getTests; + return soap_in_swad__getTests(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getTestConfig")) + { *type = SOAP_TYPE_swad__getTestConfig; + return soap_in_swad__getTestConfig(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getMarks")) + { *type = SOAP_TYPE_swad__getMarks; + return soap_in_swad__getMarks(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getFile")) + { *type = SOAP_TYPE_swad__getFile; + return soap_in_swad__getFile(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getDirectoryTree")) + { *type = SOAP_TYPE_swad__getDirectoryTree; + return soap_in_swad__getDirectoryTree(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendMyGroups")) + { *type = SOAP_TYPE_swad__sendMyGroups; + return soap_in_swad__sendMyGroups(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getGroups")) + { *type = SOAP_TYPE_swad__getGroups; + return soap_in_swad__getGroups(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getGroupTypes")) + { *type = SOAP_TYPE_swad__getGroupTypes; + return soap_in_swad__getGroupTypes(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getCourseInfo")) + { *type = SOAP_TYPE_swad__getCourseInfo; + return soap_in_swad__getCourseInfo(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getCourses")) + { *type = SOAP_TYPE_swad__getCourses; + return soap_in_swad__getCourses(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getNewPassword")) + { *type = SOAP_TYPE_swad__getNewPassword; + return soap_in_swad__getNewPassword(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:loginBySessionKey")) + { *type = SOAP_TYPE_swad__loginBySessionKey; + return soap_in_swad__loginBySessionKey(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:loginByUserPasswordKey")) + { *type = SOAP_TYPE_swad__loginByUserPasswordKey; + return soap_in_swad__loginByUserPasswordKey(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:createAccount")) + { *type = SOAP_TYPE_swad__createAccount; + return soap_in_swad__createAccount(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendMessageOutput")) + { *type = SOAP_TYPE_swad__sendMessageOutput; + return soap_in_swad__sendMessageOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendNoticeOutput")) + { *type = SOAP_TYPE_swad__sendNoticeOutput; + return soap_in_swad__sendNoticeOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getMarksOutput")) + { *type = SOAP_TYPE_swad__getMarksOutput; + return soap_in_swad__getMarksOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getFileOutput")) + { *type = SOAP_TYPE_swad__getFileOutput; + return soap_in_swad__getFileOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getDirectoryTreeOutput")) + { *type = SOAP_TYPE_swad__getDirectoryTreeOutput; + return soap_in_swad__getDirectoryTreeOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendAttendanceUsersOutput")) + { *type = SOAP_TYPE_swad__sendAttendanceUsersOutput; + return soap_in_swad__sendAttendanceUsersOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getAttendanceUsersOutput")) + { *type = SOAP_TYPE_swad__getAttendanceUsersOutput; + return soap_in_swad__getAttendanceUsersOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:attendanceUsersArray")) + { *type = SOAP_TYPE_swad__attendanceUsersArray; + return soap_in_swad__attendanceUsersArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:attendanceUser")) + { *type = SOAP_TYPE_swad__attendanceUser; + return soap_in_swad__attendanceUser(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendAttendanceEventOutput")) + { *type = SOAP_TYPE_swad__sendAttendanceEventOutput; + return soap_in_swad__sendAttendanceEventOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getAttendanceEventsOutput")) + { *type = SOAP_TYPE_swad__getAttendanceEventsOutput; + return soap_in_swad__getAttendanceEventsOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:attendanceEventsArray")) + { *type = SOAP_TYPE_swad__attendanceEventsArray; + return soap_in_swad__attendanceEventsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:attendanceEvent")) + { *type = SOAP_TYPE_swad__attendanceEvent; + return soap_in_swad__attendanceEvent(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getUsersOutput")) + { *type = SOAP_TYPE_swad__getUsersOutput; + return soap_in_swad__getUsersOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:usersArray")) + { *type = SOAP_TYPE_swad__usersArray; + return soap_in_swad__usersArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:user")) + { *type = SOAP_TYPE_swad__user; + return soap_in_swad__user(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getTestsOutput")) + { *type = SOAP_TYPE_swad__getTestsOutput; + return soap_in_swad__getTestsOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:questionTagsArray")) + { *type = SOAP_TYPE_swad__questionTagsArray; + return soap_in_swad__questionTagsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:questionTag")) + { *type = SOAP_TYPE_swad__questionTag; + return soap_in_swad__questionTag(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:answersArray")) + { *type = SOAP_TYPE_swad__answersArray; + return soap_in_swad__answersArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:answer")) + { *type = SOAP_TYPE_swad__answer; + return soap_in_swad__answer(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:questionsArray")) + { *type = SOAP_TYPE_swad__questionsArray; + return soap_in_swad__questionsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:question")) + { *type = SOAP_TYPE_swad__question; + return soap_in_swad__question(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:tagsArray")) + { *type = SOAP_TYPE_swad__tagsArray; + return soap_in_swad__tagsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:tag")) + { *type = SOAP_TYPE_swad__tag; + return soap_in_swad__tag(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getTestConfigOutput")) + { *type = SOAP_TYPE_swad__getTestConfigOutput; + return soap_in_swad__getTestConfigOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:markNotificationsAsReadOutput")) + { *type = SOAP_TYPE_swad__markNotificationsAsReadOutput; + return soap_in_swad__markNotificationsAsReadOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getNotificationsOutput")) + { *type = SOAP_TYPE_swad__getNotificationsOutput; + return soap_in_swad__getNotificationsOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:notificationsArray")) + { *type = SOAP_TYPE_swad__notificationsArray; + return soap_in_swad__notificationsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:notification")) + { *type = SOAP_TYPE_swad__notification; + return soap_in_swad__notification(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:sendMyGroupsOutput")) + { *type = SOAP_TYPE_swad__sendMyGroupsOutput; + return soap_in_swad__sendMyGroupsOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getGroupsOutput")) + { *type = SOAP_TYPE_swad__getGroupsOutput; + return soap_in_swad__getGroupsOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:groupsArray")) + { *type = SOAP_TYPE_swad__groupsArray; + return soap_in_swad__groupsArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:group")) + { *type = SOAP_TYPE_swad__group; + return soap_in_swad__group(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getGroupTypesOutput")) + { *type = SOAP_TYPE_swad__getGroupTypesOutput; + return soap_in_swad__getGroupTypesOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:groupTypesArray")) + { *type = SOAP_TYPE_swad__groupTypesArray; + return soap_in_swad__groupTypesArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:groupType")) + { *type = SOAP_TYPE_swad__groupType; + return soap_in_swad__groupType(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getCourseInfoOutput")) + { *type = SOAP_TYPE_swad__getCourseInfoOutput; + return soap_in_swad__getCourseInfoOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getCoursesOutput")) + { *type = SOAP_TYPE_swad__getCoursesOutput; + return soap_in_swad__getCoursesOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:coursesArray")) + { *type = SOAP_TYPE_swad__coursesArray; + return soap_in_swad__coursesArray(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:course")) + { *type = SOAP_TYPE_swad__course; + return soap_in_swad__course(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:getNewPasswordOutput")) + { *type = SOAP_TYPE_swad__getNewPasswordOutput; + return soap_in_swad__getNewPasswordOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:loginByUserPasswordKeyOutput")) + { *type = SOAP_TYPE_swad__loginByUserPasswordKeyOutput; + return soap_in_swad__loginByUserPasswordKeyOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:loginBySessionKeyOutput")) + { *type = SOAP_TYPE_swad__loginBySessionKeyOutput; + return soap_in_swad__loginBySessionKeyOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "swad:createAccountOutput")) + { *type = SOAP_TYPE_swad__createAccountOutput; + return soap_in_swad__createAccountOutput(soap, NULL, NULL, NULL); + } + if (!soap_match_tag(soap, t, "xsd:QName")) + { char **s; + *type = SOAP_TYPE__QName; + s = soap_in__QName(soap, NULL, NULL, NULL); + return s ? *s : NULL; + } + if (!soap_match_tag(soap, t, "xsd:string")) + { char **s; + *type = SOAP_TYPE_string; + s = soap_in_string(soap, NULL, NULL, NULL); + return s ? *s : NULL; + } + t = soap->tag; +#ifndef WITH_NOIDREF + } +#endif + } + soap->error = SOAP_TAG_MISMATCH; + return NULL; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap) +{ + if (!soap_peek_element(soap)) + { int t; + DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unexpected element '%s' in input (level = %u, %d)\n", soap->tag, soap->level, soap->body)); + if (soap->mustUnderstand && !soap->other) + return soap->error = SOAP_MUSTUNDERSTAND; + if (((soap->mode & SOAP_XML_STRICT) && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:")) + { DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag)); + return soap->error = SOAP_TAG_MISMATCH; + } + if (!*soap->id || !soap_getelement(soap, &t)) + { soap->peeked = 0; + if (soap->fignore) + soap->error = soap->fignore(soap, soap->tag); + else + soap->error = SOAP_OK; + DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag)); + if (!soap->error && soap->body) + { soap->level++; + while (!soap_ignore_element(soap)) + ; + if (soap->error == SOAP_NO_TAG) + soap->error = soap_element_end_in(soap, NULL); + } + } + } + return soap->error; +} + +#ifndef WITH_NOIDREF +SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap *soap) +{ + int i; + struct soap_plist *pp; + if (soap->version == 1 && soap->encodingStyle && !(soap->mode & (SOAP_XML_TREE | SOAP_XML_GRAPH))) + for (i = 0; i < SOAP_PTRHASH; i++) + for (pp = soap->pht[i]; pp; pp = pp->next) + if (pp->mark1 == 2 || pp->mark2 == 2) + if (soap_putelement(soap, pp->ptr, SOAP_MULTIREFTAG, pp->id, pp->type)) + return soap->error; + return SOAP_OK; +} +#endif +SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type) +{ (void)tag; + switch (type) + { + case SOAP_TYPE_byte: + return soap_out_byte(soap, tag, id, (const char *)ptr, "xsd:byte"); + case SOAP_TYPE_int: + return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int"); + case SOAP_TYPE_long: + return soap_out_long(soap, tag, id, (const long *)ptr, "xsd:long"); + case SOAP_TYPE_swad__sendMessage: + return soap_out_swad__sendMessage(soap, tag, id, (const struct swad__sendMessage *)ptr, "swad:sendMessage"); + case SOAP_TYPE_swad__sendNotice: + return soap_out_swad__sendNotice(soap, tag, id, (const struct swad__sendNotice *)ptr, "swad:sendNotice"); + case SOAP_TYPE_swad__markNotificationsAsRead: + return soap_out_swad__markNotificationsAsRead(soap, tag, id, (const struct swad__markNotificationsAsRead *)ptr, "swad:markNotificationsAsRead"); + case SOAP_TYPE_swad__getNotifications: + return soap_out_swad__getNotifications(soap, tag, id, (const struct swad__getNotifications *)ptr, "swad:getNotifications"); + case SOAP_TYPE_swad__sendAttendanceUsers: + return soap_out_swad__sendAttendanceUsers(soap, tag, id, (const struct swad__sendAttendanceUsers *)ptr, "swad:sendAttendanceUsers"); + case SOAP_TYPE_swad__getAttendanceUsers: + return soap_out_swad__getAttendanceUsers(soap, tag, id, (const struct swad__getAttendanceUsers *)ptr, "swad:getAttendanceUsers"); + case SOAP_TYPE_swad__sendAttendanceEvent: + return soap_out_swad__sendAttendanceEvent(soap, tag, id, (const struct swad__sendAttendanceEvent *)ptr, "swad:sendAttendanceEvent"); + case SOAP_TYPE_swad__getAttendanceEvents: + return soap_out_swad__getAttendanceEvents(soap, tag, id, (const struct swad__getAttendanceEvents *)ptr, "swad:getAttendanceEvents"); + case SOAP_TYPE_swad__getUsers: + return soap_out_swad__getUsers(soap, tag, id, (const struct swad__getUsers *)ptr, "swad:getUsers"); + case SOAP_TYPE_swad__getTests: + return soap_out_swad__getTests(soap, tag, id, (const struct swad__getTests *)ptr, "swad:getTests"); + case SOAP_TYPE_swad__getTestConfig: + return soap_out_swad__getTestConfig(soap, tag, id, (const struct swad__getTestConfig *)ptr, "swad:getTestConfig"); + case SOAP_TYPE_swad__getMarks: + return soap_out_swad__getMarks(soap, tag, id, (const struct swad__getMarks *)ptr, "swad:getMarks"); + case SOAP_TYPE_swad__getFile: + return soap_out_swad__getFile(soap, tag, id, (const struct swad__getFile *)ptr, "swad:getFile"); + case SOAP_TYPE_swad__getDirectoryTree: + return soap_out_swad__getDirectoryTree(soap, tag, id, (const struct swad__getDirectoryTree *)ptr, "swad:getDirectoryTree"); + case SOAP_TYPE_swad__sendMyGroups: + return soap_out_swad__sendMyGroups(soap, tag, id, (const struct swad__sendMyGroups *)ptr, "swad:sendMyGroups"); + case SOAP_TYPE_swad__getGroups: + return soap_out_swad__getGroups(soap, tag, id, (const struct swad__getGroups *)ptr, "swad:getGroups"); + case SOAP_TYPE_swad__getGroupTypes: + return soap_out_swad__getGroupTypes(soap, tag, id, (const struct swad__getGroupTypes *)ptr, "swad:getGroupTypes"); + case SOAP_TYPE_swad__getCourseInfo: + return soap_out_swad__getCourseInfo(soap, tag, id, (const struct swad__getCourseInfo *)ptr, "swad:getCourseInfo"); + case SOAP_TYPE_swad__getCourses: + return soap_out_swad__getCourses(soap, tag, id, (const struct swad__getCourses *)ptr, "swad:getCourses"); + case SOAP_TYPE_swad__getNewPassword: + return soap_out_swad__getNewPassword(soap, tag, id, (const struct swad__getNewPassword *)ptr, "swad:getNewPassword"); + case SOAP_TYPE_swad__loginBySessionKey: + return soap_out_swad__loginBySessionKey(soap, tag, id, (const struct swad__loginBySessionKey *)ptr, "swad:loginBySessionKey"); + case SOAP_TYPE_swad__loginByUserPasswordKey: + return soap_out_swad__loginByUserPasswordKey(soap, tag, id, (const struct swad__loginByUserPasswordKey *)ptr, "swad:loginByUserPasswordKey"); + case SOAP_TYPE_swad__createAccount: + return soap_out_swad__createAccount(soap, tag, id, (const struct swad__createAccount *)ptr, "swad:createAccount"); + case SOAP_TYPE_swad__sendMessageOutput: + return soap_out_swad__sendMessageOutput(soap, tag, id, (const struct swad__sendMessageOutput *)ptr, "swad:sendMessageOutput"); + case SOAP_TYPE_swad__sendNoticeOutput: + return soap_out_swad__sendNoticeOutput(soap, tag, id, (const struct swad__sendNoticeOutput *)ptr, "swad:sendNoticeOutput"); + case SOAP_TYPE_swad__getMarksOutput: + return soap_out_swad__getMarksOutput(soap, tag, id, (const struct swad__getMarksOutput *)ptr, "swad:getMarksOutput"); + case SOAP_TYPE_swad__getFileOutput: + return soap_out_swad__getFileOutput(soap, tag, id, (const struct swad__getFileOutput *)ptr, "swad:getFileOutput"); + case SOAP_TYPE_swad__getDirectoryTreeOutput: + return soap_out_swad__getDirectoryTreeOutput(soap, tag, id, (const struct swad__getDirectoryTreeOutput *)ptr, "swad:getDirectoryTreeOutput"); + case SOAP_TYPE_swad__sendAttendanceUsersOutput: + return soap_out_swad__sendAttendanceUsersOutput(soap, tag, id, (const struct swad__sendAttendanceUsersOutput *)ptr, "swad:sendAttendanceUsersOutput"); + case SOAP_TYPE_swad__getAttendanceUsersOutput: + return soap_out_swad__getAttendanceUsersOutput(soap, tag, id, (const struct swad__getAttendanceUsersOutput *)ptr, "swad:getAttendanceUsersOutput"); + case SOAP_TYPE_swad__attendanceUsersArray: + return soap_out_swad__attendanceUsersArray(soap, tag, id, (const struct swad__attendanceUsersArray *)ptr, "swad:attendanceUsersArray"); + case SOAP_TYPE_swad__attendanceUser: + return soap_out_swad__attendanceUser(soap, tag, id, (const struct swad__attendanceUser *)ptr, "swad:attendanceUser"); + case SOAP_TYPE_swad__sendAttendanceEventOutput: + return soap_out_swad__sendAttendanceEventOutput(soap, tag, id, (const struct swad__sendAttendanceEventOutput *)ptr, "swad:sendAttendanceEventOutput"); + case SOAP_TYPE_swad__getAttendanceEventsOutput: + return soap_out_swad__getAttendanceEventsOutput(soap, tag, id, (const struct swad__getAttendanceEventsOutput *)ptr, "swad:getAttendanceEventsOutput"); + case SOAP_TYPE_swad__attendanceEventsArray: + return soap_out_swad__attendanceEventsArray(soap, tag, id, (const struct swad__attendanceEventsArray *)ptr, "swad:attendanceEventsArray"); + case SOAP_TYPE_swad__attendanceEvent: + return soap_out_swad__attendanceEvent(soap, tag, id, (const struct swad__attendanceEvent *)ptr, "swad:attendanceEvent"); + case SOAP_TYPE_swad__getUsersOutput: + return soap_out_swad__getUsersOutput(soap, tag, id, (const struct swad__getUsersOutput *)ptr, "swad:getUsersOutput"); + case SOAP_TYPE_swad__usersArray: + return soap_out_swad__usersArray(soap, tag, id, (const struct swad__usersArray *)ptr, "swad:usersArray"); + case SOAP_TYPE_swad__user: + return soap_out_swad__user(soap, tag, id, (const struct swad__user *)ptr, "swad:user"); + case SOAP_TYPE_swad__getTestsOutput: + return soap_out_swad__getTestsOutput(soap, tag, id, (const struct swad__getTestsOutput *)ptr, "swad:getTestsOutput"); + case SOAP_TYPE_swad__questionTagsArray: + return soap_out_swad__questionTagsArray(soap, tag, id, (const struct swad__questionTagsArray *)ptr, "swad:questionTagsArray"); + case SOAP_TYPE_swad__questionTag: + return soap_out_swad__questionTag(soap, tag, id, (const struct swad__questionTag *)ptr, "swad:questionTag"); + case SOAP_TYPE_swad__answersArray: + return soap_out_swad__answersArray(soap, tag, id, (const struct swad__answersArray *)ptr, "swad:answersArray"); + case SOAP_TYPE_swad__answer: + return soap_out_swad__answer(soap, tag, id, (const struct swad__answer *)ptr, "swad:answer"); + case SOAP_TYPE_swad__questionsArray: + return soap_out_swad__questionsArray(soap, tag, id, (const struct swad__questionsArray *)ptr, "swad:questionsArray"); + case SOAP_TYPE_swad__question: + return soap_out_swad__question(soap, tag, id, (const struct swad__question *)ptr, "swad:question"); + case SOAP_TYPE_swad__tagsArray: + return soap_out_swad__tagsArray(soap, tag, id, (const struct swad__tagsArray *)ptr, "swad:tagsArray"); + case SOAP_TYPE_swad__tag: + return soap_out_swad__tag(soap, tag, id, (const struct swad__tag *)ptr, "swad:tag"); + case SOAP_TYPE_swad__getTestConfigOutput: + return soap_out_swad__getTestConfigOutput(soap, tag, id, (const struct swad__getTestConfigOutput *)ptr, "swad:getTestConfigOutput"); + case SOAP_TYPE_swad__markNotificationsAsReadOutput: + return soap_out_swad__markNotificationsAsReadOutput(soap, tag, id, (const struct swad__markNotificationsAsReadOutput *)ptr, "swad:markNotificationsAsReadOutput"); + case SOAP_TYPE_swad__getNotificationsOutput: + return soap_out_swad__getNotificationsOutput(soap, tag, id, (const struct swad__getNotificationsOutput *)ptr, "swad:getNotificationsOutput"); + case SOAP_TYPE_swad__notificationsArray: + return soap_out_swad__notificationsArray(soap, tag, id, (const struct swad__notificationsArray *)ptr, "swad:notificationsArray"); + case SOAP_TYPE_swad__notification: + return soap_out_swad__notification(soap, tag, id, (const struct swad__notification *)ptr, "swad:notification"); + case SOAP_TYPE_swad__sendMyGroupsOutput: + return soap_out_swad__sendMyGroupsOutput(soap, tag, id, (const struct swad__sendMyGroupsOutput *)ptr, "swad:sendMyGroupsOutput"); + case SOAP_TYPE_swad__getGroupsOutput: + return soap_out_swad__getGroupsOutput(soap, tag, id, (const struct swad__getGroupsOutput *)ptr, "swad:getGroupsOutput"); + case SOAP_TYPE_swad__groupsArray: + return soap_out_swad__groupsArray(soap, tag, id, (const struct swad__groupsArray *)ptr, "swad:groupsArray"); + case SOAP_TYPE_swad__group: + return soap_out_swad__group(soap, tag, id, (const struct swad__group *)ptr, "swad:group"); + case SOAP_TYPE_swad__getGroupTypesOutput: + return soap_out_swad__getGroupTypesOutput(soap, tag, id, (const struct swad__getGroupTypesOutput *)ptr, "swad:getGroupTypesOutput"); + case SOAP_TYPE_swad__groupTypesArray: + return soap_out_swad__groupTypesArray(soap, tag, id, (const struct swad__groupTypesArray *)ptr, "swad:groupTypesArray"); + case SOAP_TYPE_swad__groupType: + return soap_out_swad__groupType(soap, tag, id, (const struct swad__groupType *)ptr, "swad:groupType"); + case SOAP_TYPE_swad__getCourseInfoOutput: + return soap_out_swad__getCourseInfoOutput(soap, tag, id, (const struct swad__getCourseInfoOutput *)ptr, "swad:getCourseInfoOutput"); + case SOAP_TYPE_swad__getCoursesOutput: + return soap_out_swad__getCoursesOutput(soap, tag, id, (const struct swad__getCoursesOutput *)ptr, "swad:getCoursesOutput"); + case SOAP_TYPE_swad__coursesArray: + return soap_out_swad__coursesArray(soap, tag, id, (const struct swad__coursesArray *)ptr, "swad:coursesArray"); + case SOAP_TYPE_swad__course: + return soap_out_swad__course(soap, tag, id, (const struct swad__course *)ptr, "swad:course"); + case SOAP_TYPE_swad__getNewPasswordOutput: + return soap_out_swad__getNewPasswordOutput(soap, tag, id, (const struct swad__getNewPasswordOutput *)ptr, "swad:getNewPasswordOutput"); + case SOAP_TYPE_swad__loginByUserPasswordKeyOutput: + return soap_out_swad__loginByUserPasswordKeyOutput(soap, tag, id, (const struct swad__loginByUserPasswordKeyOutput *)ptr, "swad:loginByUserPasswordKeyOutput"); + case SOAP_TYPE_swad__loginBySessionKeyOutput: + return soap_out_swad__loginBySessionKeyOutput(soap, tag, id, (const struct swad__loginBySessionKeyOutput *)ptr, "swad:loginBySessionKeyOutput"); + case SOAP_TYPE_swad__createAccountOutput: + return soap_out_swad__createAccountOutput(soap, tag, id, (const struct swad__createAccountOutput *)ptr, "swad:createAccountOutput"); + case SOAP_TYPE_PointerToswad__sendMessageOutput: + return soap_out_PointerToswad__sendMessageOutput(soap, tag, id, (struct swad__sendMessageOutput *const*)ptr, "swad:sendMessageOutput"); + case SOAP_TYPE_PointerToswad__sendNoticeOutput: + return soap_out_PointerToswad__sendNoticeOutput(soap, tag, id, (struct swad__sendNoticeOutput *const*)ptr, "swad:sendNoticeOutput"); + case SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput: + return soap_out_PointerToswad__markNotificationsAsReadOutput(soap, tag, id, (struct swad__markNotificationsAsReadOutput *const*)ptr, "swad:markNotificationsAsReadOutput"); + case SOAP_TYPE_PointerToswad__getNotificationsOutput: + return soap_out_PointerToswad__getNotificationsOutput(soap, tag, id, (struct swad__getNotificationsOutput *const*)ptr, "swad:getNotificationsOutput"); + case SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput: + return soap_out_PointerToswad__sendAttendanceUsersOutput(soap, tag, id, (struct swad__sendAttendanceUsersOutput *const*)ptr, "swad:sendAttendanceUsersOutput"); + case SOAP_TYPE_PointerToswad__getAttendanceUsersOutput: + return soap_out_PointerToswad__getAttendanceUsersOutput(soap, tag, id, (struct swad__getAttendanceUsersOutput *const*)ptr, "swad:getAttendanceUsersOutput"); + case SOAP_TYPE_PointerToswad__sendAttendanceEventOutput: + return soap_out_PointerToswad__sendAttendanceEventOutput(soap, tag, id, (struct swad__sendAttendanceEventOutput *const*)ptr, "swad:sendAttendanceEventOutput"); + case SOAP_TYPE_PointerToswad__getAttendanceEventsOutput: + return soap_out_PointerToswad__getAttendanceEventsOutput(soap, tag, id, (struct swad__getAttendanceEventsOutput *const*)ptr, "swad:getAttendanceEventsOutput"); + case SOAP_TYPE_PointerToswad__getUsersOutput: + return soap_out_PointerToswad__getUsersOutput(soap, tag, id, (struct swad__getUsersOutput *const*)ptr, "swad:getUsersOutput"); + case SOAP_TYPE_PointerToswad__getTestsOutput: + return soap_out_PointerToswad__getTestsOutput(soap, tag, id, (struct swad__getTestsOutput *const*)ptr, "swad:getTestsOutput"); + case SOAP_TYPE_PointerToswad__getTestConfigOutput: + return soap_out_PointerToswad__getTestConfigOutput(soap, tag, id, (struct swad__getTestConfigOutput *const*)ptr, "swad:getTestConfigOutput"); + case SOAP_TYPE_PointerToswad__getMarksOutput: + return soap_out_PointerToswad__getMarksOutput(soap, tag, id, (struct swad__getMarksOutput *const*)ptr, "swad:getMarksOutput"); + case SOAP_TYPE_PointerToswad__getFileOutput: + return soap_out_PointerToswad__getFileOutput(soap, tag, id, (struct swad__getFileOutput *const*)ptr, "swad:getFileOutput"); + case SOAP_TYPE_PointerToswad__getDirectoryTreeOutput: + return soap_out_PointerToswad__getDirectoryTreeOutput(soap, tag, id, (struct swad__getDirectoryTreeOutput *const*)ptr, "swad:getDirectoryTreeOutput"); + case SOAP_TYPE_PointerToswad__sendMyGroupsOutput: + return soap_out_PointerToswad__sendMyGroupsOutput(soap, tag, id, (struct swad__sendMyGroupsOutput *const*)ptr, "swad:sendMyGroupsOutput"); + case SOAP_TYPE_PointerToswad__getGroupsOutput: + return soap_out_PointerToswad__getGroupsOutput(soap, tag, id, (struct swad__getGroupsOutput *const*)ptr, "swad:getGroupsOutput"); + case SOAP_TYPE_PointerToswad__getGroupTypesOutput: + return soap_out_PointerToswad__getGroupTypesOutput(soap, tag, id, (struct swad__getGroupTypesOutput *const*)ptr, "swad:getGroupTypesOutput"); + case SOAP_TYPE_PointerToswad__getCourseInfoOutput: + return soap_out_PointerToswad__getCourseInfoOutput(soap, tag, id, (struct swad__getCourseInfoOutput *const*)ptr, "swad:getCourseInfoOutput"); + case SOAP_TYPE_PointerToswad__getCoursesOutput: + return soap_out_PointerToswad__getCoursesOutput(soap, tag, id, (struct swad__getCoursesOutput *const*)ptr, "swad:getCoursesOutput"); + case SOAP_TYPE_PointerToswad__getNewPasswordOutput: + return soap_out_PointerToswad__getNewPasswordOutput(soap, tag, id, (struct swad__getNewPasswordOutput *const*)ptr, "swad:getNewPasswordOutput"); + case SOAP_TYPE_PointerToswad__loginBySessionKeyOutput: + return soap_out_PointerToswad__loginBySessionKeyOutput(soap, tag, id, (struct swad__loginBySessionKeyOutput *const*)ptr, "swad:loginBySessionKeyOutput"); + case SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput: + return soap_out_PointerToswad__loginByUserPasswordKeyOutput(soap, tag, id, (struct swad__loginByUserPasswordKeyOutput *const*)ptr, "swad:loginByUserPasswordKeyOutput"); + case SOAP_TYPE_PointerToswad__createAccountOutput: + return soap_out_PointerToswad__createAccountOutput(soap, tag, id, (struct swad__createAccountOutput *const*)ptr, "swad:createAccountOutput"); + case SOAP_TYPE_PointerToswad__attendanceUser: + return soap_out_PointerToswad__attendanceUser(soap, tag, id, (struct swad__attendanceUser *const*)ptr, "swad:attendanceUser"); + case SOAP_TYPE_PointerToswad__attendanceEvent: + return soap_out_PointerToswad__attendanceEvent(soap, tag, id, (struct swad__attendanceEvent *const*)ptr, "swad:attendanceEvent"); + case SOAP_TYPE_PointerToswad__user: + return soap_out_PointerToswad__user(soap, tag, id, (struct swad__user *const*)ptr, "swad:user"); + case SOAP_TYPE_PointerToswad__questionTag: + return soap_out_PointerToswad__questionTag(soap, tag, id, (struct swad__questionTag *const*)ptr, "swad:questionTag"); + case SOAP_TYPE_PointerToswad__answer: + return soap_out_PointerToswad__answer(soap, tag, id, (struct swad__answer *const*)ptr, "swad:answer"); + case SOAP_TYPE_PointerToswad__question: + return soap_out_PointerToswad__question(soap, tag, id, (struct swad__question *const*)ptr, "swad:question"); + case SOAP_TYPE_PointerToswad__tag: + return soap_out_PointerToswad__tag(soap, tag, id, (struct swad__tag *const*)ptr, "swad:tag"); + case SOAP_TYPE_PointerToswad__notification: + return soap_out_PointerToswad__notification(soap, tag, id, (struct swad__notification *const*)ptr, "swad:notification"); + case SOAP_TYPE_PointerToswad__group: + return soap_out_PointerToswad__group(soap, tag, id, (struct swad__group *const*)ptr, "swad:group"); + case SOAP_TYPE_PointerToswad__groupType: + return soap_out_PointerToswad__groupType(soap, tag, id, (struct swad__groupType *const*)ptr, "swad:groupType"); + case SOAP_TYPE_PointerToswad__course: + return soap_out_PointerToswad__course(soap, tag, id, (struct swad__course *const*)ptr, "swad:course"); + case SOAP_TYPE__QName: + return soap_out_string(soap, tag, id, (char*const*)(void*)&ptr, "xsd:QName"); + case SOAP_TYPE_string: + return soap_out_string(soap, tag, id, (char*const*)(void*)&ptr, "xsd:string"); + } + return SOAP_OK; +} + +#ifndef WITH_NOIDREF +SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type) +{ + (void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */ + switch (type) + { + case SOAP_TYPE_swad__sendMessage: + soap_serialize_swad__sendMessage(soap, (const struct swad__sendMessage *)ptr); + break; + case SOAP_TYPE_swad__sendNotice: + soap_serialize_swad__sendNotice(soap, (const struct swad__sendNotice *)ptr); + break; + case SOAP_TYPE_swad__markNotificationsAsRead: + soap_serialize_swad__markNotificationsAsRead(soap, (const struct swad__markNotificationsAsRead *)ptr); + break; + case SOAP_TYPE_swad__getNotifications: + soap_serialize_swad__getNotifications(soap, (const struct swad__getNotifications *)ptr); + break; + case SOAP_TYPE_swad__sendAttendanceUsers: + soap_serialize_swad__sendAttendanceUsers(soap, (const struct swad__sendAttendanceUsers *)ptr); + break; + case SOAP_TYPE_swad__getAttendanceUsers: + soap_serialize_swad__getAttendanceUsers(soap, (const struct swad__getAttendanceUsers *)ptr); + break; + case SOAP_TYPE_swad__sendAttendanceEvent: + soap_serialize_swad__sendAttendanceEvent(soap, (const struct swad__sendAttendanceEvent *)ptr); + break; + case SOAP_TYPE_swad__getAttendanceEvents: + soap_serialize_swad__getAttendanceEvents(soap, (const struct swad__getAttendanceEvents *)ptr); + break; + case SOAP_TYPE_swad__getUsers: + soap_serialize_swad__getUsers(soap, (const struct swad__getUsers *)ptr); + break; + case SOAP_TYPE_swad__getTests: + soap_serialize_swad__getTests(soap, (const struct swad__getTests *)ptr); + break; + case SOAP_TYPE_swad__getTestConfig: + soap_serialize_swad__getTestConfig(soap, (const struct swad__getTestConfig *)ptr); + break; + case SOAP_TYPE_swad__getMarks: + soap_serialize_swad__getMarks(soap, (const struct swad__getMarks *)ptr); + break; + case SOAP_TYPE_swad__getFile: + soap_serialize_swad__getFile(soap, (const struct swad__getFile *)ptr); + break; + case SOAP_TYPE_swad__getDirectoryTree: + soap_serialize_swad__getDirectoryTree(soap, (const struct swad__getDirectoryTree *)ptr); + break; + case SOAP_TYPE_swad__sendMyGroups: + soap_serialize_swad__sendMyGroups(soap, (const struct swad__sendMyGroups *)ptr); + break; + case SOAP_TYPE_swad__getGroups: + soap_serialize_swad__getGroups(soap, (const struct swad__getGroups *)ptr); + break; + case SOAP_TYPE_swad__getGroupTypes: + soap_serialize_swad__getGroupTypes(soap, (const struct swad__getGroupTypes *)ptr); + break; + case SOAP_TYPE_swad__getCourseInfo: + soap_serialize_swad__getCourseInfo(soap, (const struct swad__getCourseInfo *)ptr); + break; + case SOAP_TYPE_swad__getCourses: + soap_serialize_swad__getCourses(soap, (const struct swad__getCourses *)ptr); + break; + case SOAP_TYPE_swad__getNewPassword: + soap_serialize_swad__getNewPassword(soap, (const struct swad__getNewPassword *)ptr); + break; + case SOAP_TYPE_swad__loginBySessionKey: + soap_serialize_swad__loginBySessionKey(soap, (const struct swad__loginBySessionKey *)ptr); + break; + case SOAP_TYPE_swad__loginByUserPasswordKey: + soap_serialize_swad__loginByUserPasswordKey(soap, (const struct swad__loginByUserPasswordKey *)ptr); + break; + case SOAP_TYPE_swad__createAccount: + soap_serialize_swad__createAccount(soap, (const struct swad__createAccount *)ptr); + break; + case SOAP_TYPE_swad__sendMessageOutput: + soap_serialize_swad__sendMessageOutput(soap, (const struct swad__sendMessageOutput *)ptr); + break; + case SOAP_TYPE_swad__sendNoticeOutput: + soap_serialize_swad__sendNoticeOutput(soap, (const struct swad__sendNoticeOutput *)ptr); + break; + case SOAP_TYPE_swad__getMarksOutput: + soap_serialize_swad__getMarksOutput(soap, (const struct swad__getMarksOutput *)ptr); + break; + case SOAP_TYPE_swad__getFileOutput: + soap_serialize_swad__getFileOutput(soap, (const struct swad__getFileOutput *)ptr); + break; + case SOAP_TYPE_swad__getDirectoryTreeOutput: + soap_serialize_swad__getDirectoryTreeOutput(soap, (const struct swad__getDirectoryTreeOutput *)ptr); + break; + case SOAP_TYPE_swad__sendAttendanceUsersOutput: + soap_serialize_swad__sendAttendanceUsersOutput(soap, (const struct swad__sendAttendanceUsersOutput *)ptr); + break; + case SOAP_TYPE_swad__getAttendanceUsersOutput: + soap_serialize_swad__getAttendanceUsersOutput(soap, (const struct swad__getAttendanceUsersOutput *)ptr); + break; + case SOAP_TYPE_swad__attendanceUsersArray: + soap_serialize_swad__attendanceUsersArray(soap, (const struct swad__attendanceUsersArray *)ptr); + break; + case SOAP_TYPE_swad__attendanceUser: + soap_serialize_swad__attendanceUser(soap, (const struct swad__attendanceUser *)ptr); + break; + case SOAP_TYPE_swad__sendAttendanceEventOutput: + soap_serialize_swad__sendAttendanceEventOutput(soap, (const struct swad__sendAttendanceEventOutput *)ptr); + break; + case SOAP_TYPE_swad__getAttendanceEventsOutput: + soap_serialize_swad__getAttendanceEventsOutput(soap, (const struct swad__getAttendanceEventsOutput *)ptr); + break; + case SOAP_TYPE_swad__attendanceEventsArray: + soap_serialize_swad__attendanceEventsArray(soap, (const struct swad__attendanceEventsArray *)ptr); + break; + case SOAP_TYPE_swad__attendanceEvent: + soap_serialize_swad__attendanceEvent(soap, (const struct swad__attendanceEvent *)ptr); + break; + case SOAP_TYPE_swad__getUsersOutput: + soap_serialize_swad__getUsersOutput(soap, (const struct swad__getUsersOutput *)ptr); + break; + case SOAP_TYPE_swad__usersArray: + soap_serialize_swad__usersArray(soap, (const struct swad__usersArray *)ptr); + break; + case SOAP_TYPE_swad__user: + soap_serialize_swad__user(soap, (const struct swad__user *)ptr); + break; + case SOAP_TYPE_swad__getTestsOutput: + soap_serialize_swad__getTestsOutput(soap, (const struct swad__getTestsOutput *)ptr); + break; + case SOAP_TYPE_swad__questionTagsArray: + soap_serialize_swad__questionTagsArray(soap, (const struct swad__questionTagsArray *)ptr); + break; + case SOAP_TYPE_swad__questionTag: + soap_serialize_swad__questionTag(soap, (const struct swad__questionTag *)ptr); + break; + case SOAP_TYPE_swad__answersArray: + soap_serialize_swad__answersArray(soap, (const struct swad__answersArray *)ptr); + break; + case SOAP_TYPE_swad__answer: + soap_serialize_swad__answer(soap, (const struct swad__answer *)ptr); + break; + case SOAP_TYPE_swad__questionsArray: + soap_serialize_swad__questionsArray(soap, (const struct swad__questionsArray *)ptr); + break; + case SOAP_TYPE_swad__question: + soap_serialize_swad__question(soap, (const struct swad__question *)ptr); + break; + case SOAP_TYPE_swad__tagsArray: + soap_serialize_swad__tagsArray(soap, (const struct swad__tagsArray *)ptr); + break; + case SOAP_TYPE_swad__tag: + soap_serialize_swad__tag(soap, (const struct swad__tag *)ptr); + break; + case SOAP_TYPE_swad__getTestConfigOutput: + soap_serialize_swad__getTestConfigOutput(soap, (const struct swad__getTestConfigOutput *)ptr); + break; + case SOAP_TYPE_swad__markNotificationsAsReadOutput: + soap_serialize_swad__markNotificationsAsReadOutput(soap, (const struct swad__markNotificationsAsReadOutput *)ptr); + break; + case SOAP_TYPE_swad__getNotificationsOutput: + soap_serialize_swad__getNotificationsOutput(soap, (const struct swad__getNotificationsOutput *)ptr); + break; + case SOAP_TYPE_swad__notificationsArray: + soap_serialize_swad__notificationsArray(soap, (const struct swad__notificationsArray *)ptr); + break; + case SOAP_TYPE_swad__notification: + soap_serialize_swad__notification(soap, (const struct swad__notification *)ptr); + break; + case SOAP_TYPE_swad__sendMyGroupsOutput: + soap_serialize_swad__sendMyGroupsOutput(soap, (const struct swad__sendMyGroupsOutput *)ptr); + break; + case SOAP_TYPE_swad__getGroupsOutput: + soap_serialize_swad__getGroupsOutput(soap, (const struct swad__getGroupsOutput *)ptr); + break; + case SOAP_TYPE_swad__groupsArray: + soap_serialize_swad__groupsArray(soap, (const struct swad__groupsArray *)ptr); + break; + case SOAP_TYPE_swad__group: + soap_serialize_swad__group(soap, (const struct swad__group *)ptr); + break; + case SOAP_TYPE_swad__getGroupTypesOutput: + soap_serialize_swad__getGroupTypesOutput(soap, (const struct swad__getGroupTypesOutput *)ptr); + break; + case SOAP_TYPE_swad__groupTypesArray: + soap_serialize_swad__groupTypesArray(soap, (const struct swad__groupTypesArray *)ptr); + break; + case SOAP_TYPE_swad__groupType: + soap_serialize_swad__groupType(soap, (const struct swad__groupType *)ptr); + break; + case SOAP_TYPE_swad__getCourseInfoOutput: + soap_serialize_swad__getCourseInfoOutput(soap, (const struct swad__getCourseInfoOutput *)ptr); + break; + case SOAP_TYPE_swad__getCoursesOutput: + soap_serialize_swad__getCoursesOutput(soap, (const struct swad__getCoursesOutput *)ptr); + break; + case SOAP_TYPE_swad__coursesArray: + soap_serialize_swad__coursesArray(soap, (const struct swad__coursesArray *)ptr); + break; + case SOAP_TYPE_swad__course: + soap_serialize_swad__course(soap, (const struct swad__course *)ptr); + break; + case SOAP_TYPE_swad__getNewPasswordOutput: + soap_serialize_swad__getNewPasswordOutput(soap, (const struct swad__getNewPasswordOutput *)ptr); + break; + case SOAP_TYPE_swad__loginByUserPasswordKeyOutput: + soap_serialize_swad__loginByUserPasswordKeyOutput(soap, (const struct swad__loginByUserPasswordKeyOutput *)ptr); + break; + case SOAP_TYPE_swad__loginBySessionKeyOutput: + soap_serialize_swad__loginBySessionKeyOutput(soap, (const struct swad__loginBySessionKeyOutput *)ptr); + break; + case SOAP_TYPE_swad__createAccountOutput: + soap_serialize_swad__createAccountOutput(soap, (const struct swad__createAccountOutput *)ptr); + break; + case SOAP_TYPE_PointerToswad__sendMessageOutput: + soap_serialize_PointerToswad__sendMessageOutput(soap, (struct swad__sendMessageOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__sendNoticeOutput: + soap_serialize_PointerToswad__sendNoticeOutput(soap, (struct swad__sendNoticeOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput: + soap_serialize_PointerToswad__markNotificationsAsReadOutput(soap, (struct swad__markNotificationsAsReadOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getNotificationsOutput: + soap_serialize_PointerToswad__getNotificationsOutput(soap, (struct swad__getNotificationsOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput: + soap_serialize_PointerToswad__sendAttendanceUsersOutput(soap, (struct swad__sendAttendanceUsersOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getAttendanceUsersOutput: + soap_serialize_PointerToswad__getAttendanceUsersOutput(soap, (struct swad__getAttendanceUsersOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__sendAttendanceEventOutput: + soap_serialize_PointerToswad__sendAttendanceEventOutput(soap, (struct swad__sendAttendanceEventOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getAttendanceEventsOutput: + soap_serialize_PointerToswad__getAttendanceEventsOutput(soap, (struct swad__getAttendanceEventsOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getUsersOutput: + soap_serialize_PointerToswad__getUsersOutput(soap, (struct swad__getUsersOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getTestsOutput: + soap_serialize_PointerToswad__getTestsOutput(soap, (struct swad__getTestsOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getTestConfigOutput: + soap_serialize_PointerToswad__getTestConfigOutput(soap, (struct swad__getTestConfigOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getMarksOutput: + soap_serialize_PointerToswad__getMarksOutput(soap, (struct swad__getMarksOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getFileOutput: + soap_serialize_PointerToswad__getFileOutput(soap, (struct swad__getFileOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getDirectoryTreeOutput: + soap_serialize_PointerToswad__getDirectoryTreeOutput(soap, (struct swad__getDirectoryTreeOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__sendMyGroupsOutput: + soap_serialize_PointerToswad__sendMyGroupsOutput(soap, (struct swad__sendMyGroupsOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getGroupsOutput: + soap_serialize_PointerToswad__getGroupsOutput(soap, (struct swad__getGroupsOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getGroupTypesOutput: + soap_serialize_PointerToswad__getGroupTypesOutput(soap, (struct swad__getGroupTypesOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getCourseInfoOutput: + soap_serialize_PointerToswad__getCourseInfoOutput(soap, (struct swad__getCourseInfoOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getCoursesOutput: + soap_serialize_PointerToswad__getCoursesOutput(soap, (struct swad__getCoursesOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__getNewPasswordOutput: + soap_serialize_PointerToswad__getNewPasswordOutput(soap, (struct swad__getNewPasswordOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__loginBySessionKeyOutput: + soap_serialize_PointerToswad__loginBySessionKeyOutput(soap, (struct swad__loginBySessionKeyOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput: + soap_serialize_PointerToswad__loginByUserPasswordKeyOutput(soap, (struct swad__loginByUserPasswordKeyOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__createAccountOutput: + soap_serialize_PointerToswad__createAccountOutput(soap, (struct swad__createAccountOutput *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__attendanceUser: + soap_serialize_PointerToswad__attendanceUser(soap, (struct swad__attendanceUser *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__attendanceEvent: + soap_serialize_PointerToswad__attendanceEvent(soap, (struct swad__attendanceEvent *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__user: + soap_serialize_PointerToswad__user(soap, (struct swad__user *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__questionTag: + soap_serialize_PointerToswad__questionTag(soap, (struct swad__questionTag *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__answer: + soap_serialize_PointerToswad__answer(soap, (struct swad__answer *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__question: + soap_serialize_PointerToswad__question(soap, (struct swad__question *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__tag: + soap_serialize_PointerToswad__tag(soap, (struct swad__tag *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__notification: + soap_serialize_PointerToswad__notification(soap, (struct swad__notification *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__group: + soap_serialize_PointerToswad__group(soap, (struct swad__group *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__groupType: + soap_serialize_PointerToswad__groupType(soap, (struct swad__groupType *const*)ptr); + break; + case SOAP_TYPE_PointerToswad__course: + soap_serialize_PointerToswad__course(soap, (struct swad__course *const*)ptr); + break; + case SOAP_TYPE__QName: + soap_serialize_string(soap, (char*const*)(void*)&ptr); + break; + case SOAP_TYPE_string: + soap_serialize_string(soap, (char*const*)(void*)&ptr); + break; + } +} +#endif + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_byte(struct soap *soap, char *a) +{ + (void)soap; /* appease -Wall -Werror */ +#ifdef SOAP_DEFAULT_byte + *a = SOAP_DEFAULT_byte; +#else + *a = (char)0; +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap *soap, const char *tag, int id, const char *a, const char *type) +{ + return soap_outbyte(soap, tag, id, a, type, SOAP_TYPE_byte); +} + +SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap *soap, const char *tag, char *a, const char *type) +{ char *p; + p = soap_inbyte(soap, tag, a, type, SOAP_TYPE_byte); + return p; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap *soap, const char *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_byte); + if (soap_out_byte(soap, tag?tag:"byte", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap *soap, char *p, const char *tag, const char *type) +{ + if ((p = soap_in_byte(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_int(struct soap *soap, int *a) +{ + (void)soap; /* appease -Wall -Werror */ +#ifdef SOAP_DEFAULT_int + *a = SOAP_DEFAULT_int; +#else + *a = (int)0; +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap *soap, const char *tag, int id, const int *a, const char *type) +{ + return soap_outint(soap, tag, id, a, type, SOAP_TYPE_int); +} + +SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap *soap, const char *tag, int *a, const char *type) +{ int *p; + p = soap_inint(soap, tag, a, type, SOAP_TYPE_int); + return p; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap *soap, const int *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_int); + if (soap_out_int(soap, tag?tag:"int", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap *soap, int *p, const char *tag, const char *type) +{ + if ((p = soap_in_int(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_long(struct soap *soap, long *a) +{ + (void)soap; /* appease -Wall -Werror */ +#ifdef SOAP_DEFAULT_long + *a = SOAP_DEFAULT_long; +#else + *a = (long)0; +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_long(struct soap *soap, const char *tag, int id, const long *a, const char *type) +{ + return soap_outlong(soap, tag, id, a, type, SOAP_TYPE_long); +} + +SOAP_FMAC3 long * SOAP_FMAC4 soap_in_long(struct soap *soap, const char *tag, long *a, const char *type) +{ long *p; + p = soap_inlong(soap, tag, a, type, SOAP_TYPE_long); + return p; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_long(struct soap *soap, const long *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_long); + if (soap_out_long(soap, tag?tag:"long", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 long * SOAP_FMAC4 soap_get_long(struct soap *soap, long *p, const char *tag, const char *type) +{ + if ((p = soap_in_long(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default__QName(soap, &a->faultcode); + soap_default_string(soap, &a->faultstring); + soap_default_string(soap, &a->faultactor); + a->detail = NULL; + a->SOAP_ENV__Code = NULL; + a->SOAP_ENV__Reason = NULL; + soap_default_string(soap, &a->SOAP_ENV__Node); + soap_default_string(soap, &a->SOAP_ENV__Role); + a->SOAP_ENV__Detail = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize__QName(soap, &a->faultcode); + soap_serialize_string(soap, &a->faultstring); + soap_serialize_string(soap, &a->faultactor); + soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail); + soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code); + soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason); + soap_serialize_string(soap, &a->SOAP_ENV__Node); + soap_serialize_string(soap, &a->SOAP_ENV__Role); + soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type) +{ + const char *soap_tmp_faultcode = soap_QName2s(soap, a->faultcode); + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type)) + return soap->error; + if (soap_out__QName(soap, "faultcode", -1, (char*const*)(void*)&soap_tmp_faultcode, "")) + return soap->error; + if (soap_out_string(soap, "faultstring", -1, &a->faultstring, "")) + return soap->error; + if (soap_out_string(soap, "faultactor", -1, &a->faultactor, "")) + return soap->error; + if (soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, "")) + return soap->error; + if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, "")) + return soap->error; + if (soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, "")) + return soap->error; + if (soap_out_string(soap, "SOAP-ENV:Node", -1, &a->SOAP_ENV__Node, "")) + return soap->error; + if (soap_out_string(soap, "SOAP-ENV:Role", -1, &a->SOAP_ENV__Role, "")) + return soap->error; + if (soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap *soap, const char *tag, struct SOAP_ENV__Fault *a, const char *type) +{ + size_t soap_flag_faultcode = 1; + size_t soap_flag_faultstring = 1; + size_t soap_flag_faultactor = 1; + size_t soap_flag_detail = 1; + size_t soap_flag_SOAP_ENV__Code = 1; + size_t soap_flag_SOAP_ENV__Reason = 1; + size_t soap_flag_SOAP_ENV__Node = 1; + size_t soap_flag_SOAP_ENV__Role = 1; + size_t soap_flag_SOAP_ENV__Detail = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct SOAP_ENV__Fault *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_SOAP_ENV__Fault(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_faultcode && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in__QName(soap, "faultcode", &a->faultcode, "")) + { soap_flag_faultcode--; + continue; + } + if (soap_flag_faultstring && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "faultstring", &a->faultstring, "xsd:string")) + { soap_flag_faultstring--; + continue; + } + if (soap_flag_faultactor && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "faultactor", &a->faultactor, "xsd:string")) + { soap_flag_faultactor--; + continue; + } + if (soap_flag_detail && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_PointerToSOAP_ENV__Detail(soap, "detail", &a->detail, "")) + { soap_flag_detail--; + continue; + } + if (soap_flag_SOAP_ENV__Code && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", &a->SOAP_ENV__Code, "")) + { soap_flag_SOAP_ENV__Code--; + continue; + } + if (soap_flag_SOAP_ENV__Reason && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", &a->SOAP_ENV__Reason, "")) + { soap_flag_SOAP_ENV__Reason--; + continue; + } + if (soap_flag_SOAP_ENV__Node && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "SOAP-ENV:Node", &a->SOAP_ENV__Node, "xsd:string")) + { soap_flag_SOAP_ENV__Node--; + continue; + } + if (soap_flag_SOAP_ENV__Role && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "SOAP-ENV:Role", &a->SOAP_ENV__Role, "xsd:string")) + { soap_flag_SOAP_ENV__Role--; + continue; + } + if (soap_flag_SOAP_ENV__Detail && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", &a->SOAP_ENV__Detail, "")) + { soap_flag_SOAP_ENV__Detail--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault); + if (soap_out_SOAP_ENV__Fault(soap, tag?tag:"SOAP-ENV:Fault", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *p, const char *tag, const char *type) +{ + if ((p = soap_in_SOAP_ENV__Fault(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->SOAP_ENV__Text); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->SOAP_ENV__Text); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Reason *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Reason), type)) + return soap->error; + if (soap->lang) + soap_set_attr(soap, "xml:lang", soap->lang, 1); + if (soap_out_string(soap, "SOAP-ENV:Text", -1, &a->SOAP_ENV__Text, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason *a, const char *type) +{ + size_t soap_flag_SOAP_ENV__Text = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct SOAP_ENV__Reason *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_SOAP_ENV__Reason(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_SOAP_ENV__Text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "SOAP-ENV:Text", &a->SOAP_ENV__Text, "xsd:string")) + { soap_flag_SOAP_ENV__Text--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Reason); + if (soap_out_SOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *p, const char *tag, const char *type) +{ + if ((p = soap_in_SOAP_ENV__Reason(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + a->__any = NULL; + a->__type = 0; + a->fault = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_markelement(soap, a->fault, a->__type); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Detail *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Detail), type)) + return soap->error; + soap_outliteral(soap, "-any", &a->__any, NULL); + if (soap_putelement(soap, a->fault, "fault", -1, a->__type)) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail *a, const char *type) +{ + size_t soap_flag___any = 1; + size_t soap_flag_fault = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct SOAP_ENV__Detail *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_SOAP_ENV__Detail(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_fault && soap->error == SOAP_TAG_MISMATCH) + if ((a->fault = soap_getelement(soap, &a->__type))) + { soap_flag_fault = 0; + continue; + } + if (soap_flag___any && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_inliteral(soap, "-any", &a->__any)) + { soap_flag___any--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail); + if (soap_out_SOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *p, const char *tag, const char *type) +{ + if ((p = soap_in_SOAP_ENV__Detail(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default__QName(soap, &a->SOAP_ENV__Value); + a->SOAP_ENV__Subcode = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize__QName(soap, &a->SOAP_ENV__Value); + soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Code *a, const char *type) +{ + const char *soap_tmp_SOAP_ENV__Value = soap_QName2s(soap, a->SOAP_ENV__Value); + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Code), type)) + return soap->error; + if (soap_out__QName(soap, "SOAP-ENV:Value", -1, (char*const*)(void*)&soap_tmp_SOAP_ENV__Value, "")) + return soap->error; + if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", -1, &a->SOAP_ENV__Subcode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code *a, const char *type) +{ + size_t soap_flag_SOAP_ENV__Value = 1; + size_t soap_flag_SOAP_ENV__Subcode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct SOAP_ENV__Code *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_SOAP_ENV__Code(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_SOAP_ENV__Value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in__QName(soap, "SOAP-ENV:Value", &a->SOAP_ENV__Value, "")) + { soap_flag_SOAP_ENV__Value--; + continue; + } + if (soap_flag_SOAP_ENV__Subcode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", &a->SOAP_ENV__Subcode, "")) + { soap_flag_SOAP_ENV__Subcode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Code); + if (soap_out_SOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *p, const char *tag, const char *type) +{ + if ((p = soap_in_SOAP_ENV__Code(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Header *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Header), type)) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap *soap, const char *tag, struct SOAP_ENV__Header *a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct SOAP_ENV__Header *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_SOAP_ENV__Header(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Header); + if (soap_out_SOAP_ENV__Header(soap, tag?tag:"SOAP-ENV:Header", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *p, const char *tag, const char *type) +{ + if ((p = soap_in_SOAP_ENV__Header(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMessage(struct soap *soap, struct swad__sendMessage *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->messageCode); + soap_default_string(soap, &a->to); + soap_default_string(soap, &a->subject); + soap_default_string(soap, &a->body); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMessage(struct soap *soap, const struct swad__sendMessage *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->to); + soap_serialize_string(soap, &a->subject); + soap_serialize_string(soap, &a->body); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMessage(struct soap *soap, const char *tag, int id, const struct swad__sendMessage *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendMessage), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "messageCode", -1, &a->messageCode, "")) + return soap->error; + if (soap_out_string(soap, "to", -1, &a->to, "")) + return soap->error; + if (soap_out_string(soap, "subject", -1, &a->subject, "")) + return soap->error; + if (soap_out_string(soap, "body", -1, &a->body, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendMessage * SOAP_FMAC4 soap_in_swad__sendMessage(struct soap *soap, const char *tag, struct swad__sendMessage *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_messageCode = 1; + size_t soap_flag_to = 1; + size_t soap_flag_subject = 1; + size_t soap_flag_body = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendMessage *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendMessage, sizeof(struct swad__sendMessage), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendMessage(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_messageCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "messageCode", &a->messageCode, "xsd:int")) + { soap_flag_messageCode--; + continue; + } + if (soap_flag_to && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "to", &a->to, "xsd:string")) + { soap_flag_to--; + continue; + } + if (soap_flag_subject && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "subject", &a->subject, "xsd:string")) + { soap_flag_subject--; + continue; + } + if (soap_flag_body && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "body", &a->body, "xsd:string")) + { soap_flag_body--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendMessage *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendMessage, 0, sizeof(struct swad__sendMessage), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_messageCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMessage(struct soap *soap, const struct swad__sendMessage *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendMessage); + if (soap_out_swad__sendMessage(soap, tag?tag:"swad:sendMessage", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMessage * SOAP_FMAC4 soap_get_swad__sendMessage(struct soap *soap, struct swad__sendMessage *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendMessage(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendNotice(struct soap *soap, struct swad__sendNotice *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_string(soap, &a->body); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendNotice(struct soap *soap, const struct swad__sendNotice *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->body); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendNotice(struct soap *soap, const char *tag, int id, const struct swad__sendNotice *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendNotice), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_string(soap, "body", -1, &a->body, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendNotice * SOAP_FMAC4 soap_in_swad__sendNotice(struct soap *soap, const char *tag, struct swad__sendNotice *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_body = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendNotice *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendNotice, sizeof(struct swad__sendNotice), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendNotice(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_body && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "body", &a->body, "xsd:string")) + { soap_flag_body--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendNotice *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendNotice, 0, sizeof(struct swad__sendNotice), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendNotice(struct soap *soap, const struct swad__sendNotice *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendNotice); + if (soap_out_swad__sendNotice(soap, tag?tag:"swad:sendNotice", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendNotice * SOAP_FMAC4 soap_get_swad__sendNotice(struct soap *soap, struct swad__sendNotice *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendNotice(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__markNotificationsAsRead(struct soap *soap, struct swad__markNotificationsAsRead *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_string(soap, &a->notifications); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__markNotificationsAsRead(struct soap *soap, const struct swad__markNotificationsAsRead *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->notifications); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__markNotificationsAsRead(struct soap *soap, const char *tag, int id, const struct swad__markNotificationsAsRead *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__markNotificationsAsRead), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_string(soap, "notifications", -1, &a->notifications, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__markNotificationsAsRead * SOAP_FMAC4 soap_in_swad__markNotificationsAsRead(struct soap *soap, const char *tag, struct swad__markNotificationsAsRead *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_notifications = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__markNotificationsAsRead *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__markNotificationsAsRead, sizeof(struct swad__markNotificationsAsRead), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__markNotificationsAsRead(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_notifications && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "notifications", &a->notifications, "xsd:string")) + { soap_flag_notifications--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__markNotificationsAsRead *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__markNotificationsAsRead, 0, sizeof(struct swad__markNotificationsAsRead), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__markNotificationsAsRead(struct soap *soap, const struct swad__markNotificationsAsRead *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__markNotificationsAsRead); + if (soap_out_swad__markNotificationsAsRead(soap, tag?tag:"swad:markNotificationsAsRead", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__markNotificationsAsRead * SOAP_FMAC4 soap_get_swad__markNotificationsAsRead(struct soap *soap, struct swad__markNotificationsAsRead *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__markNotificationsAsRead(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNotifications(struct soap *soap, struct swad__getNotifications *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_long(soap, &a->beginTime); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNotifications(struct soap *soap, const struct swad__getNotifications *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNotifications(struct soap *soap, const char *tag, int id, const struct swad__getNotifications *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getNotifications), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_long(soap, "beginTime", -1, &a->beginTime, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getNotifications * SOAP_FMAC4 soap_in_swad__getNotifications(struct soap *soap, const char *tag, struct swad__getNotifications *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_beginTime = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getNotifications *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getNotifications, sizeof(struct swad__getNotifications), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getNotifications(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_beginTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_long(soap, "beginTime", &a->beginTime, "xsd:long")) + { soap_flag_beginTime--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getNotifications *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getNotifications, 0, sizeof(struct swad__getNotifications), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_beginTime > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNotifications(struct soap *soap, const struct swad__getNotifications *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getNotifications); + if (soap_out_swad__getNotifications(soap, tag?tag:"swad:getNotifications", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNotifications * SOAP_FMAC4 soap_get_swad__getNotifications(struct soap *soap, struct swad__getNotifications *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getNotifications(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceUsers(struct soap *soap, struct swad__sendAttendanceUsers *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->attendanceEventCode); + soap_default_string(soap, &a->users); + soap_default_int(soap, &a->setOthersAsAbsent); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceUsers(struct soap *soap, const struct swad__sendAttendanceUsers *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->users); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceUsers(struct soap *soap, const char *tag, int id, const struct swad__sendAttendanceUsers *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendAttendanceUsers), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "attendanceEventCode", -1, &a->attendanceEventCode, "")) + return soap->error; + if (soap_out_string(soap, "users", -1, &a->users, "")) + return soap->error; + if (soap_out_int(soap, "setOthersAsAbsent", -1, &a->setOthersAsAbsent, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsers * SOAP_FMAC4 soap_in_swad__sendAttendanceUsers(struct soap *soap, const char *tag, struct swad__sendAttendanceUsers *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_attendanceEventCode = 1; + size_t soap_flag_users = 1; + size_t soap_flag_setOthersAsAbsent = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendAttendanceUsers *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendAttendanceUsers, sizeof(struct swad__sendAttendanceUsers), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendAttendanceUsers(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_attendanceEventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "attendanceEventCode", &a->attendanceEventCode, "xsd:int")) + { soap_flag_attendanceEventCode--; + continue; + } + if (soap_flag_users && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "users", &a->users, "xsd:string")) + { soap_flag_users--; + continue; + } + if (soap_flag_setOthersAsAbsent && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "setOthersAsAbsent", &a->setOthersAsAbsent, "xsd:int")) + { soap_flag_setOthersAsAbsent--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendAttendanceUsers *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendAttendanceUsers, 0, sizeof(struct swad__sendAttendanceUsers), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_attendanceEventCode > 0 || soap_flag_setOthersAsAbsent > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceUsers(struct soap *soap, const struct swad__sendAttendanceUsers *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendAttendanceUsers); + if (soap_out_swad__sendAttendanceUsers(soap, tag?tag:"swad:sendAttendanceUsers", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsers * SOAP_FMAC4 soap_get_swad__sendAttendanceUsers(struct soap *soap, struct swad__sendAttendanceUsers *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendAttendanceUsers(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceUsers(struct soap *soap, struct swad__getAttendanceUsers *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->attendanceEventCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceUsers(struct soap *soap, const struct swad__getAttendanceUsers *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceUsers(struct soap *soap, const char *tag, int id, const struct swad__getAttendanceUsers *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getAttendanceUsers), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "attendanceEventCode", -1, &a->attendanceEventCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getAttendanceUsers * SOAP_FMAC4 soap_in_swad__getAttendanceUsers(struct soap *soap, const char *tag, struct swad__getAttendanceUsers *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_attendanceEventCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getAttendanceUsers *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getAttendanceUsers, sizeof(struct swad__getAttendanceUsers), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getAttendanceUsers(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_attendanceEventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "attendanceEventCode", &a->attendanceEventCode, "xsd:int")) + { soap_flag_attendanceEventCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getAttendanceUsers *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getAttendanceUsers, 0, sizeof(struct swad__getAttendanceUsers), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_attendanceEventCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceUsers(struct soap *soap, const struct swad__getAttendanceUsers *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getAttendanceUsers); + if (soap_out_swad__getAttendanceUsers(soap, tag?tag:"swad:getAttendanceUsers", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceUsers * SOAP_FMAC4 soap_get_swad__getAttendanceUsers(struct soap *soap, struct swad__getAttendanceUsers *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getAttendanceUsers(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceEvent(struct soap *soap, struct swad__sendAttendanceEvent *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->attendanceEventCode); + soap_default_int(soap, &a->courseCode); + soap_default_int(soap, &a->hidden); + soap_default_int(soap, &a->startTime); + soap_default_int(soap, &a->endTime); + soap_default_int(soap, &a->commentsTeachersVisible); + soap_default_string(soap, &a->title); + soap_default_string(soap, &a->text); + soap_default_string(soap, &a->groups); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceEvent(struct soap *soap, const struct swad__sendAttendanceEvent *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->title); + soap_serialize_string(soap, &a->text); + soap_serialize_string(soap, &a->groups); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceEvent(struct soap *soap, const char *tag, int id, const struct swad__sendAttendanceEvent *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendAttendanceEvent), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "attendanceEventCode", -1, &a->attendanceEventCode, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_int(soap, "hidden", -1, &a->hidden, "")) + return soap->error; + if (soap_out_int(soap, "startTime", -1, &a->startTime, "")) + return soap->error; + if (soap_out_int(soap, "endTime", -1, &a->endTime, "")) + return soap->error; + if (soap_out_int(soap, "commentsTeachersVisible", -1, &a->commentsTeachersVisible, "")) + return soap->error; + if (soap_out_string(soap, "title", -1, &a->title, "")) + return soap->error; + if (soap_out_string(soap, "text", -1, &a->text, "")) + return soap->error; + if (soap_out_string(soap, "groups", -1, &a->groups, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendAttendanceEvent * SOAP_FMAC4 soap_in_swad__sendAttendanceEvent(struct soap *soap, const char *tag, struct swad__sendAttendanceEvent *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_attendanceEventCode = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_hidden = 1; + size_t soap_flag_startTime = 1; + size_t soap_flag_endTime = 1; + size_t soap_flag_commentsTeachersVisible = 1; + size_t soap_flag_title = 1; + size_t soap_flag_text = 1; + size_t soap_flag_groups = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendAttendanceEvent *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendAttendanceEvent, sizeof(struct swad__sendAttendanceEvent), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendAttendanceEvent(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_attendanceEventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "attendanceEventCode", &a->attendanceEventCode, "xsd:int")) + { soap_flag_attendanceEventCode--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_hidden && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "hidden", &a->hidden, "xsd:int")) + { soap_flag_hidden--; + continue; + } + if (soap_flag_startTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "startTime", &a->startTime, "xsd:int")) + { soap_flag_startTime--; + continue; + } + if (soap_flag_endTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "endTime", &a->endTime, "xsd:int")) + { soap_flag_endTime--; + continue; + } + if (soap_flag_commentsTeachersVisible && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "commentsTeachersVisible", &a->commentsTeachersVisible, "xsd:int")) + { soap_flag_commentsTeachersVisible--; + continue; + } + if (soap_flag_title && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "title", &a->title, "xsd:string")) + { soap_flag_title--; + continue; + } + if (soap_flag_text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "text", &a->text, "xsd:string")) + { soap_flag_text--; + continue; + } + if (soap_flag_groups && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "groups", &a->groups, "xsd:string")) + { soap_flag_groups--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendAttendanceEvent *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendAttendanceEvent, 0, sizeof(struct swad__sendAttendanceEvent), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_attendanceEventCode > 0 || soap_flag_courseCode > 0 || soap_flag_hidden > 0 || soap_flag_startTime > 0 || soap_flag_endTime > 0 || soap_flag_commentsTeachersVisible > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceEvent(struct soap *soap, const struct swad__sendAttendanceEvent *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendAttendanceEvent); + if (soap_out_swad__sendAttendanceEvent(soap, tag?tag:"swad:sendAttendanceEvent", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceEvent * SOAP_FMAC4 soap_get_swad__sendAttendanceEvent(struct soap *soap, struct swad__sendAttendanceEvent *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendAttendanceEvent(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceEvents(struct soap *soap, struct swad__getAttendanceEvents *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceEvents(struct soap *soap, const struct swad__getAttendanceEvents *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceEvents(struct soap *soap, const char *tag, int id, const struct swad__getAttendanceEvents *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getAttendanceEvents), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getAttendanceEvents * SOAP_FMAC4 soap_in_swad__getAttendanceEvents(struct soap *soap, const char *tag, struct swad__getAttendanceEvents *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getAttendanceEvents *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getAttendanceEvents, sizeof(struct swad__getAttendanceEvents), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getAttendanceEvents(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getAttendanceEvents *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getAttendanceEvents, 0, sizeof(struct swad__getAttendanceEvents), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceEvents(struct soap *soap, const struct swad__getAttendanceEvents *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getAttendanceEvents); + if (soap_out_swad__getAttendanceEvents(soap, tag?tag:"swad:getAttendanceEvents", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceEvents * SOAP_FMAC4 soap_get_swad__getAttendanceEvents(struct soap *soap, struct swad__getAttendanceEvents *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getAttendanceEvents(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getUsers(struct soap *soap, struct swad__getUsers *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_int(soap, &a->groupCode); + soap_default_int(soap, &a->userRole); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getUsers(struct soap *soap, const struct swad__getUsers *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getUsers(struct soap *soap, const char *tag, int id, const struct swad__getUsers *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getUsers), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_int(soap, "groupCode", -1, &a->groupCode, "")) + return soap->error; + if (soap_out_int(soap, "userRole", -1, &a->userRole, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getUsers * SOAP_FMAC4 soap_in_swad__getUsers(struct soap *soap, const char *tag, struct swad__getUsers *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_groupCode = 1; + size_t soap_flag_userRole = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getUsers *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getUsers, sizeof(struct swad__getUsers), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getUsers(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_groupCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "groupCode", &a->groupCode, "xsd:int")) + { soap_flag_groupCode--; + continue; + } + if (soap_flag_userRole && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userRole", &a->userRole, "xsd:int")) + { soap_flag_userRole--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getUsers *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getUsers, 0, sizeof(struct swad__getUsers), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0 || soap_flag_groupCode > 0 || soap_flag_userRole > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getUsers(struct soap *soap, const struct swad__getUsers *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getUsers); + if (soap_out_swad__getUsers(soap, tag?tag:"swad:getUsers", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getUsers * SOAP_FMAC4 soap_get_swad__getUsers(struct soap *soap, struct swad__getUsers *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getUsers(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTests(struct soap *soap, struct swad__getTests *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_long(soap, &a->beginTime); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTests(struct soap *soap, const struct swad__getTests *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTests(struct soap *soap, const char *tag, int id, const struct swad__getTests *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getTests), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_long(soap, "beginTime", -1, &a->beginTime, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getTests * SOAP_FMAC4 soap_in_swad__getTests(struct soap *soap, const char *tag, struct swad__getTests *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_beginTime = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getTests *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getTests, sizeof(struct swad__getTests), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getTests(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_beginTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_long(soap, "beginTime", &a->beginTime, "xsd:long")) + { soap_flag_beginTime--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getTests *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getTests, 0, sizeof(struct swad__getTests), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0 || soap_flag_beginTime > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTests(struct soap *soap, const struct swad__getTests *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getTests); + if (soap_out_swad__getTests(soap, tag?tag:"swad:getTests", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTests * SOAP_FMAC4 soap_get_swad__getTests(struct soap *soap, struct swad__getTests *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getTests(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestConfig(struct soap *soap, struct swad__getTestConfig *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestConfig(struct soap *soap, const struct swad__getTestConfig *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestConfig(struct soap *soap, const char *tag, int id, const struct swad__getTestConfig *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getTestConfig), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getTestConfig * SOAP_FMAC4 soap_in_swad__getTestConfig(struct soap *soap, const char *tag, struct swad__getTestConfig *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getTestConfig *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getTestConfig, sizeof(struct swad__getTestConfig), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getTestConfig(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getTestConfig *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getTestConfig, 0, sizeof(struct swad__getTestConfig), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestConfig(struct soap *soap, const struct swad__getTestConfig *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getTestConfig); + if (soap_out_swad__getTestConfig(soap, tag?tag:"swad:getTestConfig", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTestConfig * SOAP_FMAC4 soap_get_swad__getTestConfig(struct soap *soap, struct swad__getTestConfig *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getTestConfig(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getMarks(struct soap *soap, struct swad__getMarks *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->fileCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getMarks(struct soap *soap, const struct swad__getMarks *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getMarks(struct soap *soap, const char *tag, int id, const struct swad__getMarks *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getMarks), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "fileCode", -1, &a->fileCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getMarks * SOAP_FMAC4 soap_in_swad__getMarks(struct soap *soap, const char *tag, struct swad__getMarks *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_fileCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getMarks *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getMarks, sizeof(struct swad__getMarks), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getMarks(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_fileCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "fileCode", &a->fileCode, "xsd:int")) + { soap_flag_fileCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getMarks *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getMarks, 0, sizeof(struct swad__getMarks), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fileCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getMarks(struct soap *soap, const struct swad__getMarks *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getMarks); + if (soap_out_swad__getMarks(soap, tag?tag:"swad:getMarks", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getMarks * SOAP_FMAC4 soap_get_swad__getMarks(struct soap *soap, struct swad__getMarks *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getMarks(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getFile(struct soap *soap, struct swad__getFile *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->fileCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getFile(struct soap *soap, const struct swad__getFile *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getFile(struct soap *soap, const char *tag, int id, const struct swad__getFile *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getFile), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "fileCode", -1, &a->fileCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getFile * SOAP_FMAC4 soap_in_swad__getFile(struct soap *soap, const char *tag, struct swad__getFile *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_fileCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getFile *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getFile, sizeof(struct swad__getFile), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getFile(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_fileCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "fileCode", &a->fileCode, "xsd:int")) + { soap_flag_fileCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getFile, 0, sizeof(struct swad__getFile), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fileCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getFile(struct soap *soap, const struct swad__getFile *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getFile); + if (soap_out_swad__getFile(soap, tag?tag:"swad:getFile", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getFile * SOAP_FMAC4 soap_get_swad__getFile(struct soap *soap, struct swad__getFile *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getFile(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getDirectoryTree(struct soap *soap, struct swad__getDirectoryTree *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_int(soap, &a->groupCode); + soap_default_int(soap, &a->treeCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getDirectoryTree(struct soap *soap, const struct swad__getDirectoryTree *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getDirectoryTree(struct soap *soap, const char *tag, int id, const struct swad__getDirectoryTree *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getDirectoryTree), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_int(soap, "groupCode", -1, &a->groupCode, "")) + return soap->error; + if (soap_out_int(soap, "treeCode", -1, &a->treeCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getDirectoryTree * SOAP_FMAC4 soap_in_swad__getDirectoryTree(struct soap *soap, const char *tag, struct swad__getDirectoryTree *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_groupCode = 1; + size_t soap_flag_treeCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getDirectoryTree *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getDirectoryTree, sizeof(struct swad__getDirectoryTree), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getDirectoryTree(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_groupCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "groupCode", &a->groupCode, "xsd:int")) + { soap_flag_groupCode--; + continue; + } + if (soap_flag_treeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "treeCode", &a->treeCode, "xsd:int")) + { soap_flag_treeCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getDirectoryTree *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getDirectoryTree, 0, sizeof(struct swad__getDirectoryTree), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0 || soap_flag_groupCode > 0 || soap_flag_treeCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getDirectoryTree(struct soap *soap, const struct swad__getDirectoryTree *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getDirectoryTree); + if (soap_out_swad__getDirectoryTree(soap, tag?tag:"swad:getDirectoryTree", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getDirectoryTree * SOAP_FMAC4 soap_get_swad__getDirectoryTree(struct soap *soap, struct swad__getDirectoryTree *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getDirectoryTree(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMyGroups(struct soap *soap, struct swad__sendMyGroups *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_string(soap, &a->myGroups); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMyGroups(struct soap *soap, const struct swad__sendMyGroups *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->myGroups); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMyGroups(struct soap *soap, const char *tag, int id, const struct swad__sendMyGroups *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendMyGroups), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_string(soap, "myGroups", -1, &a->myGroups, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendMyGroups * SOAP_FMAC4 soap_in_swad__sendMyGroups(struct soap *soap, const char *tag, struct swad__sendMyGroups *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_myGroups = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendMyGroups *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendMyGroups, sizeof(struct swad__sendMyGroups), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendMyGroups(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_myGroups && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "myGroups", &a->myGroups, "xsd:string")) + { soap_flag_myGroups--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendMyGroups *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendMyGroups, 0, sizeof(struct swad__sendMyGroups), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMyGroups(struct soap *soap, const struct swad__sendMyGroups *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendMyGroups); + if (soap_out_swad__sendMyGroups(soap, tag?tag:"swad:sendMyGroups", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMyGroups * SOAP_FMAC4 soap_get_swad__sendMyGroups(struct soap *soap, struct swad__sendMyGroups *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendMyGroups(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroups(struct soap *soap, struct swad__getGroups *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroups(struct soap *soap, const struct swad__getGroups *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroups(struct soap *soap, const char *tag, int id, const struct swad__getGroups *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getGroups), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getGroups * SOAP_FMAC4 soap_in_swad__getGroups(struct soap *soap, const char *tag, struct swad__getGroups *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getGroups *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getGroups, sizeof(struct swad__getGroups), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getGroups(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getGroups *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getGroups, 0, sizeof(struct swad__getGroups), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroups(struct soap *soap, const struct swad__getGroups *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getGroups); + if (soap_out_swad__getGroups(soap, tag?tag:"swad:getGroups", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroups * SOAP_FMAC4 soap_get_swad__getGroups(struct soap *soap, struct swad__getGroups *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getGroups(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupTypes(struct soap *soap, struct swad__getGroupTypes *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupTypes(struct soap *soap, const struct swad__getGroupTypes *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupTypes(struct soap *soap, const char *tag, int id, const struct swad__getGroupTypes *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getGroupTypes), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getGroupTypes * SOAP_FMAC4 soap_in_swad__getGroupTypes(struct soap *soap, const char *tag, struct swad__getGroupTypes *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getGroupTypes *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getGroupTypes, sizeof(struct swad__getGroupTypes), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getGroupTypes(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getGroupTypes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getGroupTypes, 0, sizeof(struct swad__getGroupTypes), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupTypes(struct soap *soap, const struct swad__getGroupTypes *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getGroupTypes); + if (soap_out_swad__getGroupTypes(soap, tag?tag:"swad:getGroupTypes", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroupTypes * SOAP_FMAC4 soap_get_swad__getGroupTypes(struct soap *soap, struct swad__getGroupTypes *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getGroupTypes(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourseInfo(struct soap *soap, struct swad__getCourseInfo *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); + soap_default_int(soap, &a->courseCode); + soap_default_string(soap, &a->infoType); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourseInfo(struct soap *soap, const struct swad__getCourseInfo *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->infoType); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourseInfo(struct soap *soap, const char *tag, int id, const struct swad__getCourseInfo *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getCourseInfo), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_string(soap, "infoType", -1, &a->infoType, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getCourseInfo * SOAP_FMAC4 soap_in_swad__getCourseInfo(struct soap *soap, const char *tag, struct swad__getCourseInfo *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_infoType = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getCourseInfo *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getCourseInfo, sizeof(struct swad__getCourseInfo), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getCourseInfo(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_infoType && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "infoType", &a->infoType, "xsd:string")) + { soap_flag_infoType--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getCourseInfo *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getCourseInfo, 0, sizeof(struct swad__getCourseInfo), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourseInfo(struct soap *soap, const struct swad__getCourseInfo *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getCourseInfo); + if (soap_out_swad__getCourseInfo(soap, tag?tag:"swad:getCourseInfo", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCourseInfo * SOAP_FMAC4 soap_get_swad__getCourseInfo(struct soap *soap, struct swad__getCourseInfo *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getCourseInfo(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourses(struct soap *soap, struct swad__getCourses *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->wsKey); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourses(struct soap *soap, const struct swad__getCourses *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourses(struct soap *soap, const char *tag, int id, const struct swad__getCourses *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getCourses), type)) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getCourses * SOAP_FMAC4 soap_in_swad__getCourses(struct soap *soap, const char *tag, struct swad__getCourses *a, const char *type) +{ + size_t soap_flag_wsKey = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getCourses *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getCourses, sizeof(struct swad__getCourses), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getCourses(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getCourses *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getCourses, 0, sizeof(struct swad__getCourses), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourses(struct soap *soap, const struct swad__getCourses *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getCourses); + if (soap_out_swad__getCourses(soap, tag?tag:"swad:getCourses", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCourses * SOAP_FMAC4 soap_get_swad__getCourses(struct soap *soap, struct swad__getCourses *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getCourses(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNewPassword(struct soap *soap, struct swad__getNewPassword *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->appKey); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNewPassword(struct soap *soap, const struct swad__getNewPassword *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->appKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNewPassword(struct soap *soap, const char *tag, int id, const struct swad__getNewPassword *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getNewPassword), type)) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "appKey", -1, &a->appKey, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getNewPassword * SOAP_FMAC4 soap_in_swad__getNewPassword(struct soap *soap, const char *tag, struct swad__getNewPassword *a, const char *type) +{ + size_t soap_flag_userID = 1; + size_t soap_flag_appKey = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getNewPassword *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getNewPassword, sizeof(struct swad__getNewPassword), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getNewPassword(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_appKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "appKey", &a->appKey, "xsd:string")) + { soap_flag_appKey--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getNewPassword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getNewPassword, 0, sizeof(struct swad__getNewPassword), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNewPassword(struct soap *soap, const struct swad__getNewPassword *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getNewPassword); + if (soap_out_swad__getNewPassword(soap, tag?tag:"swad:getNewPassword", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNewPassword * SOAP_FMAC4 soap_get_swad__getNewPassword(struct soap *soap, struct swad__getNewPassword *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getNewPassword(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginBySessionKey(struct soap *soap, struct swad__loginBySessionKey *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->sessionID); + soap_default_string(soap, &a->appKey); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginBySessionKey(struct soap *soap, const struct swad__loginBySessionKey *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->sessionID); + soap_serialize_string(soap, &a->appKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginBySessionKey(struct soap *soap, const char *tag, int id, const struct swad__loginBySessionKey *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__loginBySessionKey), type)) + return soap->error; + if (soap_out_string(soap, "sessionID", -1, &a->sessionID, "")) + return soap->error; + if (soap_out_string(soap, "appKey", -1, &a->appKey, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__loginBySessionKey * SOAP_FMAC4 soap_in_swad__loginBySessionKey(struct soap *soap, const char *tag, struct swad__loginBySessionKey *a, const char *type) +{ + size_t soap_flag_sessionID = 1; + size_t soap_flag_appKey = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__loginBySessionKey *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__loginBySessionKey, sizeof(struct swad__loginBySessionKey), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__loginBySessionKey(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_sessionID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "sessionID", &a->sessionID, "xsd:string")) + { soap_flag_sessionID--; + continue; + } + if (soap_flag_appKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "appKey", &a->appKey, "xsd:string")) + { soap_flag_appKey--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__loginBySessionKey *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__loginBySessionKey, 0, sizeof(struct swad__loginBySessionKey), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginBySessionKey(struct soap *soap, const struct swad__loginBySessionKey *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__loginBySessionKey); + if (soap_out_swad__loginBySessionKey(soap, tag?tag:"swad:loginBySessionKey", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginBySessionKey * SOAP_FMAC4 soap_get_swad__loginBySessionKey(struct soap *soap, struct swad__loginBySessionKey *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__loginBySessionKey(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginByUserPasswordKey(struct soap *soap, struct swad__loginByUserPasswordKey *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userPassword); + soap_default_string(soap, &a->appKey); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginByUserPasswordKey(struct soap *soap, const struct swad__loginByUserPasswordKey *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userPassword); + soap_serialize_string(soap, &a->appKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginByUserPasswordKey(struct soap *soap, const char *tag, int id, const struct swad__loginByUserPasswordKey *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__loginByUserPasswordKey), type)) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userPassword", -1, &a->userPassword, "")) + return soap->error; + if (soap_out_string(soap, "appKey", -1, &a->appKey, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKey * SOAP_FMAC4 soap_in_swad__loginByUserPasswordKey(struct soap *soap, const char *tag, struct swad__loginByUserPasswordKey *a, const char *type) +{ + size_t soap_flag_userID = 1; + size_t soap_flag_userPassword = 1; + size_t soap_flag_appKey = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__loginByUserPasswordKey *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__loginByUserPasswordKey, sizeof(struct swad__loginByUserPasswordKey), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__loginByUserPasswordKey(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userPassword && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPassword", &a->userPassword, "xsd:string")) + { soap_flag_userPassword--; + continue; + } + if (soap_flag_appKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "appKey", &a->appKey, "xsd:string")) + { soap_flag_appKey--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__loginByUserPasswordKey *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__loginByUserPasswordKey, 0, sizeof(struct swad__loginByUserPasswordKey), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginByUserPasswordKey(struct soap *soap, const struct swad__loginByUserPasswordKey *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__loginByUserPasswordKey); + if (soap_out_swad__loginByUserPasswordKey(soap, tag?tag:"swad:loginByUserPasswordKey", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKey * SOAP_FMAC4 soap_get_swad__loginByUserPasswordKey(struct soap *soap, struct swad__loginByUserPasswordKey *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__loginByUserPasswordKey(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__createAccount(struct soap *soap, struct swad__createAccount *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userEmail); + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userPassword); + soap_default_string(soap, &a->appKey); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__createAccount(struct soap *soap, const struct swad__createAccount *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userEmail); + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userPassword); + soap_serialize_string(soap, &a->appKey); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__createAccount(struct soap *soap, const char *tag, int id, const struct swad__createAccount *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__createAccount), type)) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userEmail", -1, &a->userEmail, "")) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userPassword", -1, &a->userPassword, "")) + return soap->error; + if (soap_out_string(soap, "appKey", -1, &a->appKey, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__createAccount * SOAP_FMAC4 soap_in_swad__createAccount(struct soap *soap, const char *tag, struct swad__createAccount *a, const char *type) +{ + size_t soap_flag_userNickname = 1; + size_t soap_flag_userEmail = 1; + size_t soap_flag_userID = 1; + size_t soap_flag_userPassword = 1; + size_t soap_flag_appKey = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__createAccount *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__createAccount, sizeof(struct swad__createAccount), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__createAccount(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userEmail && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userEmail", &a->userEmail, "xsd:string")) + { soap_flag_userEmail--; + continue; + } + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userPassword && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPassword", &a->userPassword, "xsd:string")) + { soap_flag_userPassword--; + continue; + } + if (soap_flag_appKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "appKey", &a->appKey, "xsd:string")) + { soap_flag_appKey--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__createAccount *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__createAccount, 0, sizeof(struct swad__createAccount), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__createAccount(struct soap *soap, const struct swad__createAccount *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__createAccount); + if (soap_out_swad__createAccount(soap, tag?tag:"swad:createAccount", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__createAccount * SOAP_FMAC4 soap_get_swad__createAccount(struct soap *soap, struct swad__createAccount *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__createAccount(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMessageOutput(struct soap *soap, struct swad__sendMessageOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numUsers); + soap_default_swad__usersArray(soap, &a->usersArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMessageOutput(struct soap *soap, const struct swad__sendMessageOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__usersArray(soap, &a->usersArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMessageOutput(struct soap *soap, const char *tag, int id, const struct swad__sendMessageOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendMessageOutput), type)) + return soap->error; + if (soap_out_int(soap, "numUsers", -1, &a->numUsers, "")) + return soap->error; + if (soap_out_swad__usersArray(soap, "usersArray", -1, &a->usersArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendMessageOutput * SOAP_FMAC4 soap_in_swad__sendMessageOutput(struct soap *soap, const char *tag, struct swad__sendMessageOutput *a, const char *type) +{ + size_t soap_flag_numUsers = 1; + size_t soap_flag_usersArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendMessageOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendMessageOutput, sizeof(struct swad__sendMessageOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendMessageOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numUsers && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numUsers", &a->numUsers, "xsd:int")) + { soap_flag_numUsers--; + continue; + } + if (soap_flag_usersArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__usersArray(soap, "usersArray", &a->usersArray, "swad:usersArray")) + { soap_flag_usersArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendMessageOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendMessageOutput, 0, sizeof(struct swad__sendMessageOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numUsers > 0 || soap_flag_usersArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMessageOutput(struct soap *soap, const struct swad__sendMessageOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendMessageOutput); + if (soap_out_swad__sendMessageOutput(soap, tag?tag:"swad:sendMessageOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMessageOutput * SOAP_FMAC4 soap_get_swad__sendMessageOutput(struct soap *soap, struct swad__sendMessageOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendMessageOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendNoticeOutput(struct soap *soap, struct swad__sendNoticeOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->noticeCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendNoticeOutput(struct soap *soap, const struct swad__sendNoticeOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendNoticeOutput(struct soap *soap, const char *tag, int id, const struct swad__sendNoticeOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendNoticeOutput), type)) + return soap->error; + if (soap_out_int(soap, "noticeCode", -1, &a->noticeCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendNoticeOutput * SOAP_FMAC4 soap_in_swad__sendNoticeOutput(struct soap *soap, const char *tag, struct swad__sendNoticeOutput *a, const char *type) +{ + size_t soap_flag_noticeCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendNoticeOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendNoticeOutput, sizeof(struct swad__sendNoticeOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendNoticeOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_noticeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "noticeCode", &a->noticeCode, "xsd:int")) + { soap_flag_noticeCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendNoticeOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendNoticeOutput, 0, sizeof(struct swad__sendNoticeOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_noticeCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendNoticeOutput(struct soap *soap, const struct swad__sendNoticeOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendNoticeOutput); + if (soap_out_swad__sendNoticeOutput(soap, tag?tag:"swad:sendNoticeOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendNoticeOutput * SOAP_FMAC4 soap_get_swad__sendNoticeOutput(struct soap *soap, struct swad__sendNoticeOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendNoticeOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getMarksOutput(struct soap *soap, struct swad__getMarksOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->content); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getMarksOutput(struct soap *soap, const struct swad__getMarksOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->content); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getMarksOutput(struct soap *soap, const char *tag, int id, const struct swad__getMarksOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getMarksOutput), type)) + return soap->error; + if (soap_out_string(soap, "content", -1, &a->content, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getMarksOutput * SOAP_FMAC4 soap_in_swad__getMarksOutput(struct soap *soap, const char *tag, struct swad__getMarksOutput *a, const char *type) +{ + size_t soap_flag_content = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getMarksOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getMarksOutput, sizeof(struct swad__getMarksOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getMarksOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_content && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "content", &a->content, "xsd:string")) + { soap_flag_content--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getMarksOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getMarksOutput, 0, sizeof(struct swad__getMarksOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getMarksOutput(struct soap *soap, const struct swad__getMarksOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getMarksOutput); + if (soap_out_swad__getMarksOutput(soap, tag?tag:"swad:getMarksOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getMarksOutput * SOAP_FMAC4 soap_get_swad__getMarksOutput(struct soap *soap, struct swad__getMarksOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getMarksOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getFileOutput(struct soap *soap, struct swad__getFileOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->fileName); + soap_default_string(soap, &a->URL); + soap_default_int(soap, &a->size); + soap_default_int(soap, &a->time); + soap_default_string(soap, &a->license); + soap_default_string(soap, &a->publisherName); + soap_default_string(soap, &a->publisherPhoto); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getFileOutput(struct soap *soap, const struct swad__getFileOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->fileName); + soap_serialize_string(soap, &a->URL); + soap_serialize_string(soap, &a->license); + soap_serialize_string(soap, &a->publisherName); + soap_serialize_string(soap, &a->publisherPhoto); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getFileOutput(struct soap *soap, const char *tag, int id, const struct swad__getFileOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getFileOutput), type)) + return soap->error; + if (soap_out_string(soap, "fileName", -1, &a->fileName, "")) + return soap->error; + if (soap_out_string(soap, "URL", -1, &a->URL, "")) + return soap->error; + if (soap_out_int(soap, "size", -1, &a->size, "")) + return soap->error; + if (soap_out_int(soap, "time", -1, &a->time, "")) + return soap->error; + if (soap_out_string(soap, "license", -1, &a->license, "")) + return soap->error; + if (soap_out_string(soap, "publisherName", -1, &a->publisherName, "")) + return soap->error; + if (soap_out_string(soap, "publisherPhoto", -1, &a->publisherPhoto, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getFileOutput * SOAP_FMAC4 soap_in_swad__getFileOutput(struct soap *soap, const char *tag, struct swad__getFileOutput *a, const char *type) +{ + size_t soap_flag_fileName = 1; + size_t soap_flag_URL = 1; + size_t soap_flag_size = 1; + size_t soap_flag_time = 1; + size_t soap_flag_license = 1; + size_t soap_flag_publisherName = 1; + size_t soap_flag_publisherPhoto = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getFileOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getFileOutput, sizeof(struct swad__getFileOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getFileOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_fileName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "fileName", &a->fileName, "xsd:string")) + { soap_flag_fileName--; + continue; + } + if (soap_flag_URL && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "URL", &a->URL, "xsd:string")) + { soap_flag_URL--; + continue; + } + if (soap_flag_size && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "size", &a->size, "xsd:int")) + { soap_flag_size--; + continue; + } + if (soap_flag_time && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "time", &a->time, "xsd:int")) + { soap_flag_time--; + continue; + } + if (soap_flag_license && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "license", &a->license, "xsd:string")) + { soap_flag_license--; + continue; + } + if (soap_flag_publisherName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "publisherName", &a->publisherName, "xsd:string")) + { soap_flag_publisherName--; + continue; + } + if (soap_flag_publisherPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "publisherPhoto", &a->publisherPhoto, "xsd:string")) + { soap_flag_publisherPhoto--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getFileOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getFileOutput, 0, sizeof(struct swad__getFileOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_size > 0 || soap_flag_time > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getFileOutput(struct soap *soap, const struct swad__getFileOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getFileOutput); + if (soap_out_swad__getFileOutput(soap, tag?tag:"swad:getFileOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getFileOutput * SOAP_FMAC4 soap_get_swad__getFileOutput(struct soap *soap, struct swad__getFileOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getFileOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getDirectoryTreeOutput(struct soap *soap, struct swad__getDirectoryTreeOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->tree); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getDirectoryTreeOutput(struct soap *soap, const struct swad__getDirectoryTreeOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->tree); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getDirectoryTreeOutput(struct soap *soap, const char *tag, int id, const struct swad__getDirectoryTreeOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getDirectoryTreeOutput), type)) + return soap->error; + if (soap_out_string(soap, "tree", -1, &a->tree, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput * SOAP_FMAC4 soap_in_swad__getDirectoryTreeOutput(struct soap *soap, const char *tag, struct swad__getDirectoryTreeOutput *a, const char *type) +{ + size_t soap_flag_tree = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getDirectoryTreeOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getDirectoryTreeOutput, sizeof(struct swad__getDirectoryTreeOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getDirectoryTreeOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_tree && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "tree", &a->tree, "xsd:string")) + { soap_flag_tree--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getDirectoryTreeOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getDirectoryTreeOutput, 0, sizeof(struct swad__getDirectoryTreeOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getDirectoryTreeOutput(struct soap *soap, const struct swad__getDirectoryTreeOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getDirectoryTreeOutput); + if (soap_out_swad__getDirectoryTreeOutput(soap, tag?tag:"swad:getDirectoryTreeOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput * SOAP_FMAC4 soap_get_swad__getDirectoryTreeOutput(struct soap *soap, struct swad__getDirectoryTreeOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getDirectoryTreeOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceUsersOutput(struct soap *soap, struct swad__sendAttendanceUsersOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->success); + soap_default_int(soap, &a->numUsers); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceUsersOutput(struct soap *soap, const struct swad__sendAttendanceUsersOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceUsersOutput(struct soap *soap, const char *tag, int id, const struct swad__sendAttendanceUsersOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendAttendanceUsersOutput), type)) + return soap->error; + if (soap_out_int(soap, "success", -1, &a->success, "")) + return soap->error; + if (soap_out_int(soap, "numUsers", -1, &a->numUsers, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput * SOAP_FMAC4 soap_in_swad__sendAttendanceUsersOutput(struct soap *soap, const char *tag, struct swad__sendAttendanceUsersOutput *a, const char *type) +{ + size_t soap_flag_success = 1; + size_t soap_flag_numUsers = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendAttendanceUsersOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendAttendanceUsersOutput, sizeof(struct swad__sendAttendanceUsersOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendAttendanceUsersOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_success && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "success", &a->success, "xsd:int")) + { soap_flag_success--; + continue; + } + if (soap_flag_numUsers && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numUsers", &a->numUsers, "xsd:int")) + { soap_flag_numUsers--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendAttendanceUsersOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendAttendanceUsersOutput, 0, sizeof(struct swad__sendAttendanceUsersOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_success > 0 || soap_flag_numUsers > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceUsersOutput(struct soap *soap, const struct swad__sendAttendanceUsersOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendAttendanceUsersOutput); + if (soap_out_swad__sendAttendanceUsersOutput(soap, tag?tag:"swad:sendAttendanceUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput * SOAP_FMAC4 soap_get_swad__sendAttendanceUsersOutput(struct soap *soap, struct swad__sendAttendanceUsersOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendAttendanceUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceUsersOutput(struct soap *soap, struct swad__getAttendanceUsersOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numUsers); + soap_default_swad__attendanceUsersArray(soap, &a->usersArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceUsersOutput(struct soap *soap, const struct swad__getAttendanceUsersOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__attendanceUsersArray(soap, &a->usersArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceUsersOutput(struct soap *soap, const char *tag, int id, const struct swad__getAttendanceUsersOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getAttendanceUsersOutput), type)) + return soap->error; + if (soap_out_int(soap, "numUsers", -1, &a->numUsers, "")) + return soap->error; + if (soap_out_swad__attendanceUsersArray(soap, "usersArray", -1, &a->usersArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput * SOAP_FMAC4 soap_in_swad__getAttendanceUsersOutput(struct soap *soap, const char *tag, struct swad__getAttendanceUsersOutput *a, const char *type) +{ + size_t soap_flag_numUsers = 1; + size_t soap_flag_usersArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getAttendanceUsersOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getAttendanceUsersOutput, sizeof(struct swad__getAttendanceUsersOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getAttendanceUsersOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numUsers && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numUsers", &a->numUsers, "xsd:int")) + { soap_flag_numUsers--; + continue; + } + if (soap_flag_usersArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__attendanceUsersArray(soap, "usersArray", &a->usersArray, "swad:attendanceUsersArray")) + { soap_flag_usersArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getAttendanceUsersOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getAttendanceUsersOutput, 0, sizeof(struct swad__getAttendanceUsersOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numUsers > 0 || soap_flag_usersArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceUsersOutput(struct soap *soap, const struct swad__getAttendanceUsersOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getAttendanceUsersOutput); + if (soap_out_swad__getAttendanceUsersOutput(soap, tag?tag:"swad:getAttendanceUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput * SOAP_FMAC4 soap_get_swad__getAttendanceUsersOutput(struct soap *soap, struct swad__getAttendanceUsersOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getAttendanceUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceUsersArray(struct soap *soap, struct swad__attendanceUsersArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceUsersArray(struct soap *soap, struct swad__attendanceUsersArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__attendanceUsersArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__attendanceUser); + soap_serialize_swad__attendanceUser(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceUsersArray(struct soap *soap, const char *tag, int id, const struct swad__attendanceUsersArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__attendanceUsersArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__attendanceUser(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__attendanceUsersArray * SOAP_FMAC4 soap_in_swad__attendanceUsersArray(struct soap *soap, const char *tag, struct swad__attendanceUsersArray *a, const char *type) +{ int i, j; + struct swad__attendanceUser *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:attendanceUser") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__attendanceUsersArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__attendanceUsersArray, sizeof(struct swad__attendanceUsersArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__attendanceUsersArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__attendanceUser *)soap_malloc(soap, sizeof(struct swad__attendanceUser) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__attendanceUser(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__attendanceUser(soap, NULL, a->__ptr + i, "swad:attendanceUser")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__attendanceUser *)soap_push_block(soap, NULL, sizeof(struct swad__attendanceUser)); + if (!p) + return NULL; + soap_default_swad__attendanceUser(soap, p); + if (!soap_in_swad__attendanceUser(soap, NULL, p, "swad:attendanceUser")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__attendanceUser *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__attendanceUsersArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__attendanceUsersArray, 0, sizeof(struct swad__attendanceUsersArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceUsersArray(struct soap *soap, const struct swad__attendanceUsersArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__attendanceUsersArray); + if (soap_out_swad__attendanceUsersArray(soap, tag?tag:"swad:attendanceUsersArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceUsersArray * SOAP_FMAC4 soap_get_swad__attendanceUsersArray(struct soap *soap, struct swad__attendanceUsersArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__attendanceUsersArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceUser(struct soap *soap, struct swad__attendanceUser *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->userCode); + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); + soap_default_int(soap, &a->present); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceUser(struct soap *soap, const struct swad__attendanceUser *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceUser(struct soap *soap, const char *tag, int id, const struct swad__attendanceUser *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__attendanceUser), type)) + return soap->error; + if (soap_out_int(soap, "userCode", -1, &a->userCode, "")) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + if (soap_out_int(soap, "present", -1, &a->present, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__attendanceUser * SOAP_FMAC4 soap_in_swad__attendanceUser(struct soap *soap, const char *tag, struct swad__attendanceUser *a, const char *type) +{ + size_t soap_flag_userCode = 1; + size_t soap_flag_userNickname = 1; + size_t soap_flag_userID = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + size_t soap_flag_present = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__attendanceUser *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__attendanceUser, sizeof(struct swad__attendanceUser), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__attendanceUser(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userCode", &a->userCode, "xsd:int")) + { soap_flag_userCode--; + continue; + } + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap_flag_present && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "present", &a->present, "xsd:int")) + { soap_flag_present--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__attendanceUser *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__attendanceUser, 0, sizeof(struct swad__attendanceUser), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_userCode > 0 || soap_flag_present > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceUser(struct soap *soap, const struct swad__attendanceUser *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__attendanceUser); + if (soap_out_swad__attendanceUser(soap, tag?tag:"swad:attendanceUser", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceUser * SOAP_FMAC4 soap_get_swad__attendanceUser(struct soap *soap, struct swad__attendanceUser *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__attendanceUser(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceEventOutput(struct soap *soap, struct swad__sendAttendanceEventOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->attendanceEventCode); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceEventOutput(struct soap *soap, const struct swad__sendAttendanceEventOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceEventOutput(struct soap *soap, const char *tag, int id, const struct swad__sendAttendanceEventOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendAttendanceEventOutput), type)) + return soap->error; + if (soap_out_int(soap, "attendanceEventCode", -1, &a->attendanceEventCode, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput * SOAP_FMAC4 soap_in_swad__sendAttendanceEventOutput(struct soap *soap, const char *tag, struct swad__sendAttendanceEventOutput *a, const char *type) +{ + size_t soap_flag_attendanceEventCode = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendAttendanceEventOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendAttendanceEventOutput, sizeof(struct swad__sendAttendanceEventOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendAttendanceEventOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_attendanceEventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "attendanceEventCode", &a->attendanceEventCode, "xsd:int")) + { soap_flag_attendanceEventCode--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendAttendanceEventOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendAttendanceEventOutput, 0, sizeof(struct swad__sendAttendanceEventOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_attendanceEventCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceEventOutput(struct soap *soap, const struct swad__sendAttendanceEventOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendAttendanceEventOutput); + if (soap_out_swad__sendAttendanceEventOutput(soap, tag?tag:"swad:sendAttendanceEventOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput * SOAP_FMAC4 soap_get_swad__sendAttendanceEventOutput(struct soap *soap, struct swad__sendAttendanceEventOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendAttendanceEventOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceEventsOutput(struct soap *soap, struct swad__getAttendanceEventsOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numEvents); + soap_default_swad__attendanceEventsArray(soap, &a->eventsArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceEventsOutput(struct soap *soap, const struct swad__getAttendanceEventsOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__attendanceEventsArray(soap, &a->eventsArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceEventsOutput(struct soap *soap, const char *tag, int id, const struct swad__getAttendanceEventsOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getAttendanceEventsOutput), type)) + return soap->error; + if (soap_out_int(soap, "numEvents", -1, &a->numEvents, "")) + return soap->error; + if (soap_out_swad__attendanceEventsArray(soap, "eventsArray", -1, &a->eventsArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput * SOAP_FMAC4 soap_in_swad__getAttendanceEventsOutput(struct soap *soap, const char *tag, struct swad__getAttendanceEventsOutput *a, const char *type) +{ + size_t soap_flag_numEvents = 1; + size_t soap_flag_eventsArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getAttendanceEventsOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getAttendanceEventsOutput, sizeof(struct swad__getAttendanceEventsOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getAttendanceEventsOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numEvents && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numEvents", &a->numEvents, "xsd:int")) + { soap_flag_numEvents--; + continue; + } + if (soap_flag_eventsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__attendanceEventsArray(soap, "eventsArray", &a->eventsArray, "swad:attendanceEventsArray")) + { soap_flag_eventsArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getAttendanceEventsOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getAttendanceEventsOutput, 0, sizeof(struct swad__getAttendanceEventsOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numEvents > 0 || soap_flag_eventsArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceEventsOutput(struct soap *soap, const struct swad__getAttendanceEventsOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getAttendanceEventsOutput); + if (soap_out_swad__getAttendanceEventsOutput(soap, tag?tag:"swad:getAttendanceEventsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput * SOAP_FMAC4 soap_get_swad__getAttendanceEventsOutput(struct soap *soap, struct swad__getAttendanceEventsOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getAttendanceEventsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceEventsArray(struct soap *soap, struct swad__attendanceEventsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceEventsArray(struct soap *soap, struct swad__attendanceEventsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__attendanceEventsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__attendanceEvent); + soap_serialize_swad__attendanceEvent(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceEventsArray(struct soap *soap, const char *tag, int id, const struct swad__attendanceEventsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__attendanceEventsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__attendanceEvent(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__attendanceEventsArray * SOAP_FMAC4 soap_in_swad__attendanceEventsArray(struct soap *soap, const char *tag, struct swad__attendanceEventsArray *a, const char *type) +{ int i, j; + struct swad__attendanceEvent *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:attendanceEvent") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__attendanceEventsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__attendanceEventsArray, sizeof(struct swad__attendanceEventsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__attendanceEventsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__attendanceEvent *)soap_malloc(soap, sizeof(struct swad__attendanceEvent) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__attendanceEvent(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__attendanceEvent(soap, NULL, a->__ptr + i, "swad:attendanceEvent")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__attendanceEvent *)soap_push_block(soap, NULL, sizeof(struct swad__attendanceEvent)); + if (!p) + return NULL; + soap_default_swad__attendanceEvent(soap, p); + if (!soap_in_swad__attendanceEvent(soap, NULL, p, "swad:attendanceEvent")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__attendanceEvent *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__attendanceEventsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__attendanceEventsArray, 0, sizeof(struct swad__attendanceEventsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceEventsArray(struct soap *soap, const struct swad__attendanceEventsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__attendanceEventsArray); + if (soap_out_swad__attendanceEventsArray(soap, tag?tag:"swad:attendanceEventsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceEventsArray * SOAP_FMAC4 soap_get_swad__attendanceEventsArray(struct soap *soap, struct swad__attendanceEventsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__attendanceEventsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceEvent(struct soap *soap, struct swad__attendanceEvent *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->attendanceEventCode); + soap_default_int(soap, &a->hidden); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); + soap_default_int(soap, &a->startTime); + soap_default_int(soap, &a->endTime); + soap_default_int(soap, &a->commentsTeachersVisible); + soap_default_string(soap, &a->title); + soap_default_string(soap, &a->text); + soap_default_string(soap, &a->groups); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceEvent(struct soap *soap, const struct swad__attendanceEvent *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); + soap_serialize_string(soap, &a->title); + soap_serialize_string(soap, &a->text); + soap_serialize_string(soap, &a->groups); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceEvent(struct soap *soap, const char *tag, int id, const struct swad__attendanceEvent *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__attendanceEvent), type)) + return soap->error; + if (soap_out_int(soap, "attendanceEventCode", -1, &a->attendanceEventCode, "")) + return soap->error; + if (soap_out_int(soap, "hidden", -1, &a->hidden, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + if (soap_out_int(soap, "startTime", -1, &a->startTime, "")) + return soap->error; + if (soap_out_int(soap, "endTime", -1, &a->endTime, "")) + return soap->error; + if (soap_out_int(soap, "commentsTeachersVisible", -1, &a->commentsTeachersVisible, "")) + return soap->error; + if (soap_out_string(soap, "title", -1, &a->title, "")) + return soap->error; + if (soap_out_string(soap, "text", -1, &a->text, "")) + return soap->error; + if (soap_out_string(soap, "groups", -1, &a->groups, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__attendanceEvent * SOAP_FMAC4 soap_in_swad__attendanceEvent(struct soap *soap, const char *tag, struct swad__attendanceEvent *a, const char *type) +{ + size_t soap_flag_attendanceEventCode = 1; + size_t soap_flag_hidden = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + size_t soap_flag_startTime = 1; + size_t soap_flag_endTime = 1; + size_t soap_flag_commentsTeachersVisible = 1; + size_t soap_flag_title = 1; + size_t soap_flag_text = 1; + size_t soap_flag_groups = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__attendanceEvent *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__attendanceEvent, sizeof(struct swad__attendanceEvent), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__attendanceEvent(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_attendanceEventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "attendanceEventCode", &a->attendanceEventCode, "xsd:int")) + { soap_flag_attendanceEventCode--; + continue; + } + if (soap_flag_hidden && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "hidden", &a->hidden, "xsd:int")) + { soap_flag_hidden--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap_flag_startTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "startTime", &a->startTime, "xsd:int")) + { soap_flag_startTime--; + continue; + } + if (soap_flag_endTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "endTime", &a->endTime, "xsd:int")) + { soap_flag_endTime--; + continue; + } + if (soap_flag_commentsTeachersVisible && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "commentsTeachersVisible", &a->commentsTeachersVisible, "xsd:int")) + { soap_flag_commentsTeachersVisible--; + continue; + } + if (soap_flag_title && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "title", &a->title, "xsd:string")) + { soap_flag_title--; + continue; + } + if (soap_flag_text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "text", &a->text, "xsd:string")) + { soap_flag_text--; + continue; + } + if (soap_flag_groups && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "groups", &a->groups, "xsd:string")) + { soap_flag_groups--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__attendanceEvent *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__attendanceEvent, 0, sizeof(struct swad__attendanceEvent), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_attendanceEventCode > 0 || soap_flag_hidden > 0 || soap_flag_startTime > 0 || soap_flag_endTime > 0 || soap_flag_commentsTeachersVisible > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceEvent(struct soap *soap, const struct swad__attendanceEvent *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__attendanceEvent); + if (soap_out_swad__attendanceEvent(soap, tag?tag:"swad:attendanceEvent", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceEvent * SOAP_FMAC4 soap_get_swad__attendanceEvent(struct soap *soap, struct swad__attendanceEvent *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__attendanceEvent(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getUsersOutput(struct soap *soap, struct swad__getUsersOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numUsers); + soap_default_swad__usersArray(soap, &a->usersArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getUsersOutput(struct soap *soap, const struct swad__getUsersOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__usersArray(soap, &a->usersArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getUsersOutput(struct soap *soap, const char *tag, int id, const struct swad__getUsersOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getUsersOutput), type)) + return soap->error; + if (soap_out_int(soap, "numUsers", -1, &a->numUsers, "")) + return soap->error; + if (soap_out_swad__usersArray(soap, "usersArray", -1, &a->usersArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getUsersOutput * SOAP_FMAC4 soap_in_swad__getUsersOutput(struct soap *soap, const char *tag, struct swad__getUsersOutput *a, const char *type) +{ + size_t soap_flag_numUsers = 1; + size_t soap_flag_usersArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getUsersOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getUsersOutput, sizeof(struct swad__getUsersOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getUsersOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numUsers && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numUsers", &a->numUsers, "xsd:int")) + { soap_flag_numUsers--; + continue; + } + if (soap_flag_usersArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__usersArray(soap, "usersArray", &a->usersArray, "swad:usersArray")) + { soap_flag_usersArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getUsersOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getUsersOutput, 0, sizeof(struct swad__getUsersOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numUsers > 0 || soap_flag_usersArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getUsersOutput(struct soap *soap, const struct swad__getUsersOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getUsersOutput); + if (soap_out_swad__getUsersOutput(soap, tag?tag:"swad:getUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getUsersOutput * SOAP_FMAC4 soap_get_swad__getUsersOutput(struct soap *soap, struct swad__getUsersOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__usersArray(struct soap *soap, struct swad__usersArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__usersArray(struct soap *soap, struct swad__usersArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__usersArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__user); + soap_serialize_swad__user(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__usersArray(struct soap *soap, const char *tag, int id, const struct swad__usersArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__usersArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__user(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__usersArray * SOAP_FMAC4 soap_in_swad__usersArray(struct soap *soap, const char *tag, struct swad__usersArray *a, const char *type) +{ int i, j; + struct swad__user *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:user") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__usersArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__usersArray, sizeof(struct swad__usersArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__usersArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__user *)soap_malloc(soap, sizeof(struct swad__user) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__user(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__user(soap, NULL, a->__ptr + i, "swad:user")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__user *)soap_push_block(soap, NULL, sizeof(struct swad__user)); + if (!p) + return NULL; + soap_default_swad__user(soap, p); + if (!soap_in_swad__user(soap, NULL, p, "swad:user")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__user *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__usersArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__usersArray, 0, sizeof(struct swad__usersArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__usersArray(struct soap *soap, const struct swad__usersArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__usersArray); + if (soap_out_swad__usersArray(soap, tag?tag:"swad:usersArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__usersArray * SOAP_FMAC4 soap_get_swad__usersArray(struct soap *soap, struct swad__usersArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__usersArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__user(struct soap *soap, struct swad__user *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->userCode); + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__user(struct soap *soap, const struct swad__user *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__user(struct soap *soap, const char *tag, int id, const struct swad__user *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__user), type)) + return soap->error; + if (soap_out_int(soap, "userCode", -1, &a->userCode, "")) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__user * SOAP_FMAC4 soap_in_swad__user(struct soap *soap, const char *tag, struct swad__user *a, const char *type) +{ + size_t soap_flag_userCode = 1; + size_t soap_flag_userNickname = 1; + size_t soap_flag_userID = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__user *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__user, sizeof(struct swad__user), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__user(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userCode", &a->userCode, "xsd:int")) + { soap_flag_userCode--; + continue; + } + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__user *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__user, 0, sizeof(struct swad__user), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_userCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__user(struct soap *soap, const struct swad__user *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__user); + if (soap_out_swad__user(soap, tag?tag:"swad:user", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__user * SOAP_FMAC4 soap_get_swad__user(struct soap *soap, struct swad__user *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__user(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestsOutput(struct soap *soap, struct swad__getTestsOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_swad__tagsArray(soap, &a->tagsArray); + soap_default_swad__questionsArray(soap, &a->questionsArray); + soap_default_swad__answersArray(soap, &a->answersArray); + soap_default_swad__questionTagsArray(soap, &a->questionTagsArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestsOutput(struct soap *soap, const struct swad__getTestsOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__tagsArray(soap, &a->tagsArray); + soap_serialize_swad__questionsArray(soap, &a->questionsArray); + soap_serialize_swad__answersArray(soap, &a->answersArray); + soap_serialize_swad__questionTagsArray(soap, &a->questionTagsArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestsOutput(struct soap *soap, const char *tag, int id, const struct swad__getTestsOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getTestsOutput), type)) + return soap->error; + if (soap_out_swad__tagsArray(soap, "tagsArray", -1, &a->tagsArray, "")) + return soap->error; + if (soap_out_swad__questionsArray(soap, "questionsArray", -1, &a->questionsArray, "")) + return soap->error; + if (soap_out_swad__answersArray(soap, "answersArray", -1, &a->answersArray, "")) + return soap->error; + if (soap_out_swad__questionTagsArray(soap, "questionTagsArray", -1, &a->questionTagsArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getTestsOutput * SOAP_FMAC4 soap_in_swad__getTestsOutput(struct soap *soap, const char *tag, struct swad__getTestsOutput *a, const char *type) +{ + size_t soap_flag_tagsArray = 1; + size_t soap_flag_questionsArray = 1; + size_t soap_flag_answersArray = 1; + size_t soap_flag_questionTagsArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getTestsOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getTestsOutput, sizeof(struct swad__getTestsOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getTestsOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_tagsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__tagsArray(soap, "tagsArray", &a->tagsArray, "swad:tagsArray")) + { soap_flag_tagsArray--; + continue; + } + if (soap_flag_questionsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__questionsArray(soap, "questionsArray", &a->questionsArray, "swad:questionsArray")) + { soap_flag_questionsArray--; + continue; + } + if (soap_flag_answersArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__answersArray(soap, "answersArray", &a->answersArray, "swad:answersArray")) + { soap_flag_answersArray--; + continue; + } + if (soap_flag_questionTagsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__questionTagsArray(soap, "questionTagsArray", &a->questionTagsArray, "swad:questionTagsArray")) + { soap_flag_questionTagsArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getTestsOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getTestsOutput, 0, sizeof(struct swad__getTestsOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_tagsArray > 0 || soap_flag_questionsArray > 0 || soap_flag_answersArray > 0 || soap_flag_questionTagsArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestsOutput(struct soap *soap, const struct swad__getTestsOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getTestsOutput); + if (soap_out_swad__getTestsOutput(soap, tag?tag:"swad:getTestsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTestsOutput * SOAP_FMAC4 soap_get_swad__getTestsOutput(struct soap *soap, struct swad__getTestsOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getTestsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionTagsArray(struct soap *soap, struct swad__questionTagsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionTagsArray(struct soap *soap, struct swad__questionTagsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__questionTagsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__questionTag); + soap_serialize_swad__questionTag(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionTagsArray(struct soap *soap, const char *tag, int id, const struct swad__questionTagsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__questionTagsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__questionTag(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__questionTagsArray * SOAP_FMAC4 soap_in_swad__questionTagsArray(struct soap *soap, const char *tag, struct swad__questionTagsArray *a, const char *type) +{ int i, j; + struct swad__questionTag *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:questionTag") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__questionTagsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__questionTagsArray, sizeof(struct swad__questionTagsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__questionTagsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__questionTag *)soap_malloc(soap, sizeof(struct swad__questionTag) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__questionTag(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__questionTag(soap, NULL, a->__ptr + i, "swad:questionTag")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__questionTag *)soap_push_block(soap, NULL, sizeof(struct swad__questionTag)); + if (!p) + return NULL; + soap_default_swad__questionTag(soap, p); + if (!soap_in_swad__questionTag(soap, NULL, p, "swad:questionTag")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__questionTag *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__questionTagsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__questionTagsArray, 0, sizeof(struct swad__questionTagsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionTagsArray(struct soap *soap, const struct swad__questionTagsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__questionTagsArray); + if (soap_out_swad__questionTagsArray(soap, tag?tag:"swad:questionTagsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__questionTagsArray * SOAP_FMAC4 soap_get_swad__questionTagsArray(struct soap *soap, struct swad__questionTagsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__questionTagsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionTag(struct soap *soap, struct swad__questionTag *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->questionCode); + soap_default_int(soap, &a->tagCode); + soap_default_int(soap, &a->tagIndex); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionTag(struct soap *soap, const struct swad__questionTag *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionTag(struct soap *soap, const char *tag, int id, const struct swad__questionTag *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__questionTag), type)) + return soap->error; + if (soap_out_int(soap, "questionCode", -1, &a->questionCode, "")) + return soap->error; + if (soap_out_int(soap, "tagCode", -1, &a->tagCode, "")) + return soap->error; + if (soap_out_int(soap, "tagIndex", -1, &a->tagIndex, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__questionTag * SOAP_FMAC4 soap_in_swad__questionTag(struct soap *soap, const char *tag, struct swad__questionTag *a, const char *type) +{ + size_t soap_flag_questionCode = 1; + size_t soap_flag_tagCode = 1; + size_t soap_flag_tagIndex = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__questionTag *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__questionTag, sizeof(struct swad__questionTag), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__questionTag(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_questionCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "questionCode", &a->questionCode, "xsd:int")) + { soap_flag_questionCode--; + continue; + } + if (soap_flag_tagCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "tagCode", &a->tagCode, "xsd:int")) + { soap_flag_tagCode--; + continue; + } + if (soap_flag_tagIndex && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "tagIndex", &a->tagIndex, "xsd:int")) + { soap_flag_tagIndex--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__questionTag *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__questionTag, 0, sizeof(struct swad__questionTag), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_questionCode > 0 || soap_flag_tagCode > 0 || soap_flag_tagIndex > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionTag(struct soap *soap, const struct swad__questionTag *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__questionTag); + if (soap_out_swad__questionTag(soap, tag?tag:"swad:questionTag", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__questionTag * SOAP_FMAC4 soap_get_swad__questionTag(struct soap *soap, struct swad__questionTag *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__questionTag(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__answersArray(struct soap *soap, struct swad__answersArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__answersArray(struct soap *soap, struct swad__answersArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__answersArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__answer); + soap_serialize_swad__answer(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__answersArray(struct soap *soap, const char *tag, int id, const struct swad__answersArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__answersArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__answer(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__answersArray * SOAP_FMAC4 soap_in_swad__answersArray(struct soap *soap, const char *tag, struct swad__answersArray *a, const char *type) +{ int i, j; + struct swad__answer *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:answer") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__answersArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__answersArray, sizeof(struct swad__answersArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__answersArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__answer *)soap_malloc(soap, sizeof(struct swad__answer) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__answer(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__answer(soap, NULL, a->__ptr + i, "swad:answer")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__answer *)soap_push_block(soap, NULL, sizeof(struct swad__answer)); + if (!p) + return NULL; + soap_default_swad__answer(soap, p); + if (!soap_in_swad__answer(soap, NULL, p, "swad:answer")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__answer *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__answersArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__answersArray, 0, sizeof(struct swad__answersArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__answersArray(struct soap *soap, const struct swad__answersArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__answersArray); + if (soap_out_swad__answersArray(soap, tag?tag:"swad:answersArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__answersArray * SOAP_FMAC4 soap_get_swad__answersArray(struct soap *soap, struct swad__answersArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__answersArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__answer(struct soap *soap, struct swad__answer *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->questionCode); + soap_default_int(soap, &a->answerIndex); + soap_default_int(soap, &a->correct); + soap_default_string(soap, &a->answerText); + soap_default_string(soap, &a->answerFeedback); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__answer(struct soap *soap, const struct swad__answer *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->answerText); + soap_serialize_string(soap, &a->answerFeedback); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__answer(struct soap *soap, const char *tag, int id, const struct swad__answer *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__answer), type)) + return soap->error; + if (soap_out_int(soap, "questionCode", -1, &a->questionCode, "")) + return soap->error; + if (soap_out_int(soap, "answerIndex", -1, &a->answerIndex, "")) + return soap->error; + if (soap_out_int(soap, "correct", -1, &a->correct, "")) + return soap->error; + if (soap_out_string(soap, "answerText", -1, &a->answerText, "")) + return soap->error; + if (soap_out_string(soap, "answerFeedback", -1, &a->answerFeedback, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__answer * SOAP_FMAC4 soap_in_swad__answer(struct soap *soap, const char *tag, struct swad__answer *a, const char *type) +{ + size_t soap_flag_questionCode = 1; + size_t soap_flag_answerIndex = 1; + size_t soap_flag_correct = 1; + size_t soap_flag_answerText = 1; + size_t soap_flag_answerFeedback = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__answer *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__answer, sizeof(struct swad__answer), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__answer(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_questionCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "questionCode", &a->questionCode, "xsd:int")) + { soap_flag_questionCode--; + continue; + } + if (soap_flag_answerIndex && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "answerIndex", &a->answerIndex, "xsd:int")) + { soap_flag_answerIndex--; + continue; + } + if (soap_flag_correct && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "correct", &a->correct, "xsd:int")) + { soap_flag_correct--; + continue; + } + if (soap_flag_answerText && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "answerText", &a->answerText, "xsd:string")) + { soap_flag_answerText--; + continue; + } + if (soap_flag_answerFeedback && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "answerFeedback", &a->answerFeedback, "xsd:string")) + { soap_flag_answerFeedback--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__answer *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__answer, 0, sizeof(struct swad__answer), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_questionCode > 0 || soap_flag_answerIndex > 0 || soap_flag_correct > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__answer(struct soap *soap, const struct swad__answer *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__answer); + if (soap_out_swad__answer(soap, tag?tag:"swad:answer", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__answer * SOAP_FMAC4 soap_get_swad__answer(struct soap *soap, struct swad__answer *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__answer(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionsArray(struct soap *soap, struct swad__questionsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionsArray(struct soap *soap, struct swad__questionsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__questionsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__question); + soap_serialize_swad__question(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionsArray(struct soap *soap, const char *tag, int id, const struct swad__questionsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__questionsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__question(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__questionsArray * SOAP_FMAC4 soap_in_swad__questionsArray(struct soap *soap, const char *tag, struct swad__questionsArray *a, const char *type) +{ int i, j; + struct swad__question *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:question") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__questionsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__questionsArray, sizeof(struct swad__questionsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__questionsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__question *)soap_malloc(soap, sizeof(struct swad__question) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__question(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__question(soap, NULL, a->__ptr + i, "swad:question")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__question *)soap_push_block(soap, NULL, sizeof(struct swad__question)); + if (!p) + return NULL; + soap_default_swad__question(soap, p); + if (!soap_in_swad__question(soap, NULL, p, "swad:question")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__question *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__questionsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__questionsArray, 0, sizeof(struct swad__questionsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionsArray(struct soap *soap, const struct swad__questionsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__questionsArray); + if (soap_out_swad__questionsArray(soap, tag?tag:"swad:questionsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__questionsArray * SOAP_FMAC4 soap_get_swad__questionsArray(struct soap *soap, struct swad__questionsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__questionsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__question(struct soap *soap, struct swad__question *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->questionCode); + soap_default_string(soap, &a->answerType); + soap_default_int(soap, &a->shuffle); + soap_default_string(soap, &a->stem); + soap_default_string(soap, &a->feedback); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__question(struct soap *soap, const struct swad__question *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->answerType); + soap_serialize_string(soap, &a->stem); + soap_serialize_string(soap, &a->feedback); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__question(struct soap *soap, const char *tag, int id, const struct swad__question *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__question), type)) + return soap->error; + if (soap_out_int(soap, "questionCode", -1, &a->questionCode, "")) + return soap->error; + if (soap_out_string(soap, "answerType", -1, &a->answerType, "")) + return soap->error; + if (soap_out_int(soap, "shuffle", -1, &a->shuffle, "")) + return soap->error; + if (soap_out_string(soap, "stem", -1, &a->stem, "")) + return soap->error; + if (soap_out_string(soap, "feedback", -1, &a->feedback, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__question * SOAP_FMAC4 soap_in_swad__question(struct soap *soap, const char *tag, struct swad__question *a, const char *type) +{ + size_t soap_flag_questionCode = 1; + size_t soap_flag_answerType = 1; + size_t soap_flag_shuffle = 1; + size_t soap_flag_stem = 1; + size_t soap_flag_feedback = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__question *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__question, sizeof(struct swad__question), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__question(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_questionCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "questionCode", &a->questionCode, "xsd:int")) + { soap_flag_questionCode--; + continue; + } + if (soap_flag_answerType && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "answerType", &a->answerType, "xsd:string")) + { soap_flag_answerType--; + continue; + } + if (soap_flag_shuffle && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "shuffle", &a->shuffle, "xsd:int")) + { soap_flag_shuffle--; + continue; + } + if (soap_flag_stem && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "stem", &a->stem, "xsd:string")) + { soap_flag_stem--; + continue; + } + if (soap_flag_feedback && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "feedback", &a->feedback, "xsd:string")) + { soap_flag_feedback--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__question *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__question, 0, sizeof(struct swad__question), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_questionCode > 0 || soap_flag_shuffle > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__question(struct soap *soap, const struct swad__question *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__question); + if (soap_out_swad__question(soap, tag?tag:"swad:question", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__question * SOAP_FMAC4 soap_get_swad__question(struct soap *soap, struct swad__question *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__question(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__tagsArray(struct soap *soap, struct swad__tagsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__tagsArray(struct soap *soap, struct swad__tagsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__tagsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__tag); + soap_serialize_swad__tag(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__tagsArray(struct soap *soap, const char *tag, int id, const struct swad__tagsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__tagsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__tag(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__tagsArray * SOAP_FMAC4 soap_in_swad__tagsArray(struct soap *soap, const char *tag, struct swad__tagsArray *a, const char *type) +{ int i, j; + struct swad__tag *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:tag") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__tagsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__tagsArray, sizeof(struct swad__tagsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__tagsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__tag *)soap_malloc(soap, sizeof(struct swad__tag) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__tag(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__tag(soap, NULL, a->__ptr + i, "swad:tag")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__tag *)soap_push_block(soap, NULL, sizeof(struct swad__tag)); + if (!p) + return NULL; + soap_default_swad__tag(soap, p); + if (!soap_in_swad__tag(soap, NULL, p, "swad:tag")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__tag *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__tagsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__tagsArray, 0, sizeof(struct swad__tagsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__tagsArray(struct soap *soap, const struct swad__tagsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__tagsArray); + if (soap_out_swad__tagsArray(soap, tag?tag:"swad:tagsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__tagsArray * SOAP_FMAC4 soap_get_swad__tagsArray(struct soap *soap, struct swad__tagsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__tagsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__tag(struct soap *soap, struct swad__tag *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->tagCode); + soap_default_string(soap, &a->tagText); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__tag(struct soap *soap, const struct swad__tag *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->tagText); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__tag(struct soap *soap, const char *tag, int id, const struct swad__tag *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__tag), type)) + return soap->error; + if (soap_out_int(soap, "tagCode", -1, &a->tagCode, "")) + return soap->error; + if (soap_out_string(soap, "tagText", -1, &a->tagText, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__tag * SOAP_FMAC4 soap_in_swad__tag(struct soap *soap, const char *tag, struct swad__tag *a, const char *type) +{ + size_t soap_flag_tagCode = 1; + size_t soap_flag_tagText = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__tag *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__tag, sizeof(struct swad__tag), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__tag(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_tagCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "tagCode", &a->tagCode, "xsd:int")) + { soap_flag_tagCode--; + continue; + } + if (soap_flag_tagText && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "tagText", &a->tagText, "xsd:string")) + { soap_flag_tagText--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__tag *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__tag, 0, sizeof(struct swad__tag), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_tagCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__tag(struct soap *soap, const struct swad__tag *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__tag); + if (soap_out_swad__tag(soap, tag?tag:"swad:tag", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__tag * SOAP_FMAC4 soap_get_swad__tag(struct soap *soap, struct swad__tag *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__tag(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestConfigOutput(struct soap *soap, struct swad__getTestConfigOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->pluggable); + soap_default_int(soap, &a->numQuestions); + soap_default_int(soap, &a->minQuestions); + soap_default_int(soap, &a->defQuestions); + soap_default_int(soap, &a->maxQuestions); + soap_default_string(soap, &a->feedback); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestConfigOutput(struct soap *soap, const struct swad__getTestConfigOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->feedback); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestConfigOutput(struct soap *soap, const char *tag, int id, const struct swad__getTestConfigOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getTestConfigOutput), type)) + return soap->error; + if (soap_out_int(soap, "pluggable", -1, &a->pluggable, "")) + return soap->error; + if (soap_out_int(soap, "numQuestions", -1, &a->numQuestions, "")) + return soap->error; + if (soap_out_int(soap, "minQuestions", -1, &a->minQuestions, "")) + return soap->error; + if (soap_out_int(soap, "defQuestions", -1, &a->defQuestions, "")) + return soap->error; + if (soap_out_int(soap, "maxQuestions", -1, &a->maxQuestions, "")) + return soap->error; + if (soap_out_string(soap, "feedback", -1, &a->feedback, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getTestConfigOutput * SOAP_FMAC4 soap_in_swad__getTestConfigOutput(struct soap *soap, const char *tag, struct swad__getTestConfigOutput *a, const char *type) +{ + size_t soap_flag_pluggable = 1; + size_t soap_flag_numQuestions = 1; + size_t soap_flag_minQuestions = 1; + size_t soap_flag_defQuestions = 1; + size_t soap_flag_maxQuestions = 1; + size_t soap_flag_feedback = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getTestConfigOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getTestConfigOutput, sizeof(struct swad__getTestConfigOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getTestConfigOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_pluggable && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "pluggable", &a->pluggable, "xsd:int")) + { soap_flag_pluggable--; + continue; + } + if (soap_flag_numQuestions && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numQuestions", &a->numQuestions, "xsd:int")) + { soap_flag_numQuestions--; + continue; + } + if (soap_flag_minQuestions && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "minQuestions", &a->minQuestions, "xsd:int")) + { soap_flag_minQuestions--; + continue; + } + if (soap_flag_defQuestions && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "defQuestions", &a->defQuestions, "xsd:int")) + { soap_flag_defQuestions--; + continue; + } + if (soap_flag_maxQuestions && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "maxQuestions", &a->maxQuestions, "xsd:int")) + { soap_flag_maxQuestions--; + continue; + } + if (soap_flag_feedback && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "feedback", &a->feedback, "xsd:string")) + { soap_flag_feedback--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getTestConfigOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getTestConfigOutput, 0, sizeof(struct swad__getTestConfigOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_pluggable > 0 || soap_flag_numQuestions > 0 || soap_flag_minQuestions > 0 || soap_flag_defQuestions > 0 || soap_flag_maxQuestions > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestConfigOutput(struct soap *soap, const struct swad__getTestConfigOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getTestConfigOutput); + if (soap_out_swad__getTestConfigOutput(soap, tag?tag:"swad:getTestConfigOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTestConfigOutput * SOAP_FMAC4 soap_get_swad__getTestConfigOutput(struct soap *soap, struct swad__getTestConfigOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getTestConfigOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__markNotificationsAsReadOutput(struct soap *soap, struct swad__markNotificationsAsReadOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numNotifications); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__markNotificationsAsReadOutput(struct soap *soap, const struct swad__markNotificationsAsReadOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__markNotificationsAsReadOutput(struct soap *soap, const char *tag, int id, const struct swad__markNotificationsAsReadOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__markNotificationsAsReadOutput), type)) + return soap->error; + if (soap_out_int(soap, "numNotifications", -1, &a->numNotifications, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput * SOAP_FMAC4 soap_in_swad__markNotificationsAsReadOutput(struct soap *soap, const char *tag, struct swad__markNotificationsAsReadOutput *a, const char *type) +{ + size_t soap_flag_numNotifications = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__markNotificationsAsReadOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__markNotificationsAsReadOutput, sizeof(struct swad__markNotificationsAsReadOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__markNotificationsAsReadOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numNotifications && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numNotifications", &a->numNotifications, "xsd:int")) + { soap_flag_numNotifications--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__markNotificationsAsReadOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__markNotificationsAsReadOutput, 0, sizeof(struct swad__markNotificationsAsReadOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numNotifications > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__markNotificationsAsReadOutput(struct soap *soap, const struct swad__markNotificationsAsReadOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__markNotificationsAsReadOutput); + if (soap_out_swad__markNotificationsAsReadOutput(soap, tag?tag:"swad:markNotificationsAsReadOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput * SOAP_FMAC4 soap_get_swad__markNotificationsAsReadOutput(struct soap *soap, struct swad__markNotificationsAsReadOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__markNotificationsAsReadOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNotificationsOutput(struct soap *soap, struct swad__getNotificationsOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numNotifications); + soap_default_swad__notificationsArray(soap, &a->notificationsArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNotificationsOutput(struct soap *soap, const struct swad__getNotificationsOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__notificationsArray(soap, &a->notificationsArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNotificationsOutput(struct soap *soap, const char *tag, int id, const struct swad__getNotificationsOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getNotificationsOutput), type)) + return soap->error; + if (soap_out_int(soap, "numNotifications", -1, &a->numNotifications, "")) + return soap->error; + if (soap_out_swad__notificationsArray(soap, "notificationsArray", -1, &a->notificationsArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getNotificationsOutput * SOAP_FMAC4 soap_in_swad__getNotificationsOutput(struct soap *soap, const char *tag, struct swad__getNotificationsOutput *a, const char *type) +{ + size_t soap_flag_numNotifications = 1; + size_t soap_flag_notificationsArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getNotificationsOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getNotificationsOutput, sizeof(struct swad__getNotificationsOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getNotificationsOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numNotifications && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numNotifications", &a->numNotifications, "xsd:int")) + { soap_flag_numNotifications--; + continue; + } + if (soap_flag_notificationsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__notificationsArray(soap, "notificationsArray", &a->notificationsArray, "swad:notificationsArray")) + { soap_flag_notificationsArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getNotificationsOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getNotificationsOutput, 0, sizeof(struct swad__getNotificationsOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numNotifications > 0 || soap_flag_notificationsArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNotificationsOutput(struct soap *soap, const struct swad__getNotificationsOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getNotificationsOutput); + if (soap_out_swad__getNotificationsOutput(soap, tag?tag:"swad:getNotificationsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNotificationsOutput * SOAP_FMAC4 soap_get_swad__getNotificationsOutput(struct soap *soap, struct swad__getNotificationsOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getNotificationsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__notificationsArray(struct soap *soap, struct swad__notificationsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__notificationsArray(struct soap *soap, struct swad__notificationsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__notificationsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__notification); + soap_serialize_swad__notification(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__notificationsArray(struct soap *soap, const char *tag, int id, const struct swad__notificationsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__notificationsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__notification(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__notificationsArray * SOAP_FMAC4 soap_in_swad__notificationsArray(struct soap *soap, const char *tag, struct swad__notificationsArray *a, const char *type) +{ int i, j; + struct swad__notification *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:notification") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__notificationsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__notificationsArray, sizeof(struct swad__notificationsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__notificationsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__notification *)soap_malloc(soap, sizeof(struct swad__notification) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__notification(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__notification(soap, NULL, a->__ptr + i, "swad:notification")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__notification *)soap_push_block(soap, NULL, sizeof(struct swad__notification)); + if (!p) + return NULL; + soap_default_swad__notification(soap, p); + if (!soap_in_swad__notification(soap, NULL, p, "swad:notification")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__notification *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__notificationsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__notificationsArray, 0, sizeof(struct swad__notificationsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__notificationsArray(struct soap *soap, const struct swad__notificationsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__notificationsArray); + if (soap_out_swad__notificationsArray(soap, tag?tag:"swad:notificationsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__notificationsArray * SOAP_FMAC4 soap_get_swad__notificationsArray(struct soap *soap, struct swad__notificationsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__notificationsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__notification(struct soap *soap, struct swad__notification *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->notifCode); + soap_default_string(soap, &a->eventType); + soap_default_int(soap, &a->eventCode); + soap_default_long(soap, &a->eventTime); + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); + soap_default_string(soap, &a->location); + soap_default_int(soap, &a->status); + soap_default_string(soap, &a->summary); + soap_default_string(soap, &a->content); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__notification(struct soap *soap, const struct swad__notification *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->eventType); + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); + soap_serialize_string(soap, &a->location); + soap_serialize_string(soap, &a->summary); + soap_serialize_string(soap, &a->content); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__notification(struct soap *soap, const char *tag, int id, const struct swad__notification *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__notification), type)) + return soap->error; + if (soap_out_int(soap, "notifCode", -1, &a->notifCode, "")) + return soap->error; + if (soap_out_string(soap, "eventType", -1, &a->eventType, "")) + return soap->error; + if (soap_out_int(soap, "eventCode", -1, &a->eventCode, "")) + return soap->error; + if (soap_out_long(soap, "eventTime", -1, &a->eventTime, "")) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + if (soap_out_string(soap, "location", -1, &a->location, "")) + return soap->error; + if (soap_out_int(soap, "status", -1, &a->status, "")) + return soap->error; + if (soap_out_string(soap, "summary", -1, &a->summary, "")) + return soap->error; + if (soap_out_string(soap, "content", -1, &a->content, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__notification * SOAP_FMAC4 soap_in_swad__notification(struct soap *soap, const char *tag, struct swad__notification *a, const char *type) +{ + size_t soap_flag_notifCode = 1; + size_t soap_flag_eventType = 1; + size_t soap_flag_eventCode = 1; + size_t soap_flag_eventTime = 1; + size_t soap_flag_userNickname = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + size_t soap_flag_location = 1; + size_t soap_flag_status = 1; + size_t soap_flag_summary = 1; + size_t soap_flag_content = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__notification *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__notification, sizeof(struct swad__notification), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__notification(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_notifCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "notifCode", &a->notifCode, "xsd:int")) + { soap_flag_notifCode--; + continue; + } + if (soap_flag_eventType && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "eventType", &a->eventType, "xsd:string")) + { soap_flag_eventType--; + continue; + } + if (soap_flag_eventCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "eventCode", &a->eventCode, "xsd:int")) + { soap_flag_eventCode--; + continue; + } + if (soap_flag_eventTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_long(soap, "eventTime", &a->eventTime, "xsd:long")) + { soap_flag_eventTime--; + continue; + } + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap_flag_location && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "location", &a->location, "xsd:string")) + { soap_flag_location--; + continue; + } + if (soap_flag_status && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "status", &a->status, "xsd:int")) + { soap_flag_status--; + continue; + } + if (soap_flag_summary && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "summary", &a->summary, "xsd:string")) + { soap_flag_summary--; + continue; + } + if (soap_flag_content && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "content", &a->content, "xsd:string")) + { soap_flag_content--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__notification *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__notification, 0, sizeof(struct swad__notification), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_notifCode > 0 || soap_flag_eventCode > 0 || soap_flag_eventTime > 0 || soap_flag_status > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__notification(struct soap *soap, const struct swad__notification *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__notification); + if (soap_out_swad__notification(soap, tag?tag:"swad:notification", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__notification * SOAP_FMAC4 soap_get_swad__notification(struct soap *soap, struct swad__notification *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__notification(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMyGroupsOutput(struct soap *soap, struct swad__sendMyGroupsOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->success); + soap_default_int(soap, &a->numGroups); + soap_default_swad__groupsArray(soap, &a->groupsArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMyGroupsOutput(struct soap *soap, const struct swad__sendMyGroupsOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__groupsArray(soap, &a->groupsArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMyGroupsOutput(struct soap *soap, const char *tag, int id, const struct swad__sendMyGroupsOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__sendMyGroupsOutput), type)) + return soap->error; + if (soap_out_int(soap, "success", -1, &a->success, "")) + return soap->error; + if (soap_out_int(soap, "numGroups", -1, &a->numGroups, "")) + return soap->error; + if (soap_out_swad__groupsArray(soap, "groupsArray", -1, &a->groupsArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__sendMyGroupsOutput * SOAP_FMAC4 soap_in_swad__sendMyGroupsOutput(struct soap *soap, const char *tag, struct swad__sendMyGroupsOutput *a, const char *type) +{ + size_t soap_flag_success = 1; + size_t soap_flag_numGroups = 1; + size_t soap_flag_groupsArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__sendMyGroupsOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__sendMyGroupsOutput, sizeof(struct swad__sendMyGroupsOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__sendMyGroupsOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_success && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "success", &a->success, "xsd:int")) + { soap_flag_success--; + continue; + } + if (soap_flag_numGroups && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numGroups", &a->numGroups, "xsd:int")) + { soap_flag_numGroups--; + continue; + } + if (soap_flag_groupsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__groupsArray(soap, "groupsArray", &a->groupsArray, "swad:groupsArray")) + { soap_flag_groupsArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__sendMyGroupsOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__sendMyGroupsOutput, 0, sizeof(struct swad__sendMyGroupsOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_success > 0 || soap_flag_numGroups > 0 || soap_flag_groupsArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMyGroupsOutput(struct soap *soap, const struct swad__sendMyGroupsOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__sendMyGroupsOutput); + if (soap_out_swad__sendMyGroupsOutput(soap, tag?tag:"swad:sendMyGroupsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMyGroupsOutput * SOAP_FMAC4 soap_get_swad__sendMyGroupsOutput(struct soap *soap, struct swad__sendMyGroupsOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__sendMyGroupsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupsOutput(struct soap *soap, struct swad__getGroupsOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numGroups); + soap_default_swad__groupsArray(soap, &a->groupsArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupsOutput(struct soap *soap, const struct swad__getGroupsOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__groupsArray(soap, &a->groupsArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupsOutput(struct soap *soap, const char *tag, int id, const struct swad__getGroupsOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getGroupsOutput), type)) + return soap->error; + if (soap_out_int(soap, "numGroups", -1, &a->numGroups, "")) + return soap->error; + if (soap_out_swad__groupsArray(soap, "groupsArray", -1, &a->groupsArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getGroupsOutput * SOAP_FMAC4 soap_in_swad__getGroupsOutput(struct soap *soap, const char *tag, struct swad__getGroupsOutput *a, const char *type) +{ + size_t soap_flag_numGroups = 1; + size_t soap_flag_groupsArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getGroupsOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getGroupsOutput, sizeof(struct swad__getGroupsOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getGroupsOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numGroups && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numGroups", &a->numGroups, "xsd:int")) + { soap_flag_numGroups--; + continue; + } + if (soap_flag_groupsArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__groupsArray(soap, "groupsArray", &a->groupsArray, "swad:groupsArray")) + { soap_flag_groupsArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getGroupsOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getGroupsOutput, 0, sizeof(struct swad__getGroupsOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numGroups > 0 || soap_flag_groupsArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupsOutput(struct soap *soap, const struct swad__getGroupsOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getGroupsOutput); + if (soap_out_swad__getGroupsOutput(soap, tag?tag:"swad:getGroupsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroupsOutput * SOAP_FMAC4 soap_get_swad__getGroupsOutput(struct soap *soap, struct swad__getGroupsOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getGroupsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupsArray(struct soap *soap, struct swad__groupsArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupsArray(struct soap *soap, struct swad__groupsArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__groupsArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__group); + soap_serialize_swad__group(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupsArray(struct soap *soap, const char *tag, int id, const struct swad__groupsArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__groupsArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__group(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__groupsArray * SOAP_FMAC4 soap_in_swad__groupsArray(struct soap *soap, const char *tag, struct swad__groupsArray *a, const char *type) +{ int i, j; + struct swad__group *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:group") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__groupsArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__groupsArray, sizeof(struct swad__groupsArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__groupsArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__group *)soap_malloc(soap, sizeof(struct swad__group) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__group(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__group(soap, NULL, a->__ptr + i, "swad:group")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__group *)soap_push_block(soap, NULL, sizeof(struct swad__group)); + if (!p) + return NULL; + soap_default_swad__group(soap, p); + if (!soap_in_swad__group(soap, NULL, p, "swad:group")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__group *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__groupsArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__groupsArray, 0, sizeof(struct swad__groupsArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupsArray(struct soap *soap, const struct swad__groupsArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__groupsArray); + if (soap_out_swad__groupsArray(soap, tag?tag:"swad:groupsArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__groupsArray * SOAP_FMAC4 soap_get_swad__groupsArray(struct soap *soap, struct swad__groupsArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__groupsArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__group(struct soap *soap, struct swad__group *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->groupCode); + soap_default_string(soap, &a->groupName); + soap_default_int(soap, &a->groupTypeCode); + soap_default_string(soap, &a->groupTypeName); + soap_default_int(soap, &a->open); + soap_default_int(soap, &a->maxStudents); + soap_default_int(soap, &a->numStudents); + soap_default_int(soap, &a->fileZones); + soap_default_int(soap, &a->member); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__group(struct soap *soap, const struct swad__group *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->groupName); + soap_serialize_string(soap, &a->groupTypeName); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__group(struct soap *soap, const char *tag, int id, const struct swad__group *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__group), type)) + return soap->error; + if (soap_out_int(soap, "groupCode", -1, &a->groupCode, "")) + return soap->error; + if (soap_out_string(soap, "groupName", -1, &a->groupName, "")) + return soap->error; + if (soap_out_int(soap, "groupTypeCode", -1, &a->groupTypeCode, "")) + return soap->error; + if (soap_out_string(soap, "groupTypeName", -1, &a->groupTypeName, "")) + return soap->error; + if (soap_out_int(soap, "open", -1, &a->open, "")) + return soap->error; + if (soap_out_int(soap, "maxStudents", -1, &a->maxStudents, "")) + return soap->error; + if (soap_out_int(soap, "numStudents", -1, &a->numStudents, "")) + return soap->error; + if (soap_out_int(soap, "fileZones", -1, &a->fileZones, "")) + return soap->error; + if (soap_out_int(soap, "member", -1, &a->member, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__group * SOAP_FMAC4 soap_in_swad__group(struct soap *soap, const char *tag, struct swad__group *a, const char *type) +{ + size_t soap_flag_groupCode = 1; + size_t soap_flag_groupName = 1; + size_t soap_flag_groupTypeCode = 1; + size_t soap_flag_groupTypeName = 1; + size_t soap_flag_open = 1; + size_t soap_flag_maxStudents = 1; + size_t soap_flag_numStudents = 1; + size_t soap_flag_fileZones = 1; + size_t soap_flag_member = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__group *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__group, sizeof(struct swad__group), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__group(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_groupCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "groupCode", &a->groupCode, "xsd:int")) + { soap_flag_groupCode--; + continue; + } + if (soap_flag_groupName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "groupName", &a->groupName, "xsd:string")) + { soap_flag_groupName--; + continue; + } + if (soap_flag_groupTypeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "groupTypeCode", &a->groupTypeCode, "xsd:int")) + { soap_flag_groupTypeCode--; + continue; + } + if (soap_flag_groupTypeName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "groupTypeName", &a->groupTypeName, "xsd:string")) + { soap_flag_groupTypeName--; + continue; + } + if (soap_flag_open && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "open", &a->open, "xsd:int")) + { soap_flag_open--; + continue; + } + if (soap_flag_maxStudents && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "maxStudents", &a->maxStudents, "xsd:int")) + { soap_flag_maxStudents--; + continue; + } + if (soap_flag_numStudents && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numStudents", &a->numStudents, "xsd:int")) + { soap_flag_numStudents--; + continue; + } + if (soap_flag_fileZones && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "fileZones", &a->fileZones, "xsd:int")) + { soap_flag_fileZones--; + continue; + } + if (soap_flag_member && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "member", &a->member, "xsd:int")) + { soap_flag_member--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__group *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__group, 0, sizeof(struct swad__group), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_groupCode > 0 || soap_flag_groupTypeCode > 0 || soap_flag_open > 0 || soap_flag_maxStudents > 0 || soap_flag_numStudents > 0 || soap_flag_fileZones > 0 || soap_flag_member > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__group(struct soap *soap, const struct swad__group *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__group); + if (soap_out_swad__group(soap, tag?tag:"swad:group", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__group * SOAP_FMAC4 soap_get_swad__group(struct soap *soap, struct swad__group *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__group(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupTypesOutput(struct soap *soap, struct swad__getGroupTypesOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numGroupTypes); + soap_default_swad__groupTypesArray(soap, &a->groupTypesArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupTypesOutput(struct soap *soap, const struct swad__getGroupTypesOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__groupTypesArray(soap, &a->groupTypesArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupTypesOutput(struct soap *soap, const char *tag, int id, const struct swad__getGroupTypesOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getGroupTypesOutput), type)) + return soap->error; + if (soap_out_int(soap, "numGroupTypes", -1, &a->numGroupTypes, "")) + return soap->error; + if (soap_out_swad__groupTypesArray(soap, "groupTypesArray", -1, &a->groupTypesArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getGroupTypesOutput * SOAP_FMAC4 soap_in_swad__getGroupTypesOutput(struct soap *soap, const char *tag, struct swad__getGroupTypesOutput *a, const char *type) +{ + size_t soap_flag_numGroupTypes = 1; + size_t soap_flag_groupTypesArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getGroupTypesOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getGroupTypesOutput, sizeof(struct swad__getGroupTypesOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getGroupTypesOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numGroupTypes && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numGroupTypes", &a->numGroupTypes, "xsd:int")) + { soap_flag_numGroupTypes--; + continue; + } + if (soap_flag_groupTypesArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__groupTypesArray(soap, "groupTypesArray", &a->groupTypesArray, "swad:groupTypesArray")) + { soap_flag_groupTypesArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getGroupTypesOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getGroupTypesOutput, 0, sizeof(struct swad__getGroupTypesOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numGroupTypes > 0 || soap_flag_groupTypesArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupTypesOutput(struct soap *soap, const struct swad__getGroupTypesOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getGroupTypesOutput); + if (soap_out_swad__getGroupTypesOutput(soap, tag?tag:"swad:getGroupTypesOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroupTypesOutput * SOAP_FMAC4 soap_get_swad__getGroupTypesOutput(struct soap *soap, struct swad__getGroupTypesOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getGroupTypesOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupTypesArray(struct soap *soap, struct swad__groupTypesArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupTypesArray(struct soap *soap, struct swad__groupTypesArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__groupTypesArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__groupType); + soap_serialize_swad__groupType(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupTypesArray(struct soap *soap, const char *tag, int id, const struct swad__groupTypesArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__groupTypesArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__groupType(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__groupTypesArray * SOAP_FMAC4 soap_in_swad__groupTypesArray(struct soap *soap, const char *tag, struct swad__groupTypesArray *a, const char *type) +{ int i, j; + struct swad__groupType *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:groupType") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__groupTypesArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__groupTypesArray, sizeof(struct swad__groupTypesArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__groupTypesArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__groupType *)soap_malloc(soap, sizeof(struct swad__groupType) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__groupType(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__groupType(soap, NULL, a->__ptr + i, "swad:groupType")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__groupType *)soap_push_block(soap, NULL, sizeof(struct swad__groupType)); + if (!p) + return NULL; + soap_default_swad__groupType(soap, p); + if (!soap_in_swad__groupType(soap, NULL, p, "swad:groupType")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__groupType *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__groupTypesArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__groupTypesArray, 0, sizeof(struct swad__groupTypesArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupTypesArray(struct soap *soap, const struct swad__groupTypesArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__groupTypesArray); + if (soap_out_swad__groupTypesArray(soap, tag?tag:"swad:groupTypesArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__groupTypesArray * SOAP_FMAC4 soap_get_swad__groupTypesArray(struct soap *soap, struct swad__groupTypesArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__groupTypesArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupType(struct soap *soap, struct swad__groupType *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->groupTypeCode); + soap_default_string(soap, &a->groupTypeName); + soap_default_int(soap, &a->mandatory); + soap_default_int(soap, &a->multiple); + soap_default_long(soap, &a->openTime); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupType(struct soap *soap, const struct swad__groupType *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->groupTypeName); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupType(struct soap *soap, const char *tag, int id, const struct swad__groupType *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__groupType), type)) + return soap->error; + if (soap_out_int(soap, "groupTypeCode", -1, &a->groupTypeCode, "")) + return soap->error; + if (soap_out_string(soap, "groupTypeName", -1, &a->groupTypeName, "")) + return soap->error; + if (soap_out_int(soap, "mandatory", -1, &a->mandatory, "")) + return soap->error; + if (soap_out_int(soap, "multiple", -1, &a->multiple, "")) + return soap->error; + if (soap_out_long(soap, "openTime", -1, &a->openTime, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__groupType * SOAP_FMAC4 soap_in_swad__groupType(struct soap *soap, const char *tag, struct swad__groupType *a, const char *type) +{ + size_t soap_flag_groupTypeCode = 1; + size_t soap_flag_groupTypeName = 1; + size_t soap_flag_mandatory = 1; + size_t soap_flag_multiple = 1; + size_t soap_flag_openTime = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__groupType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__groupType, sizeof(struct swad__groupType), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__groupType(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_groupTypeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "groupTypeCode", &a->groupTypeCode, "xsd:int")) + { soap_flag_groupTypeCode--; + continue; + } + if (soap_flag_groupTypeName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "groupTypeName", &a->groupTypeName, "xsd:string")) + { soap_flag_groupTypeName--; + continue; + } + if (soap_flag_mandatory && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "mandatory", &a->mandatory, "xsd:int")) + { soap_flag_mandatory--; + continue; + } + if (soap_flag_multiple && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "multiple", &a->multiple, "xsd:int")) + { soap_flag_multiple--; + continue; + } + if (soap_flag_openTime && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_long(soap, "openTime", &a->openTime, "xsd:long")) + { soap_flag_openTime--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__groupType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__groupType, 0, sizeof(struct swad__groupType), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_groupTypeCode > 0 || soap_flag_mandatory > 0 || soap_flag_multiple > 0 || soap_flag_openTime > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupType(struct soap *soap, const struct swad__groupType *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__groupType); + if (soap_out_swad__groupType(soap, tag?tag:"swad:groupType", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__groupType * SOAP_FMAC4 soap_get_swad__groupType(struct soap *soap, struct swad__groupType *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__groupType(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourseInfoOutput(struct soap *soap, struct swad__getCourseInfoOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_string(soap, &a->infoSrc); + soap_default_string(soap, &a->infoTxt); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourseInfoOutput(struct soap *soap, const struct swad__getCourseInfoOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->infoSrc); + soap_serialize_string(soap, &a->infoTxt); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourseInfoOutput(struct soap *soap, const char *tag, int id, const struct swad__getCourseInfoOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getCourseInfoOutput), type)) + return soap->error; + if (soap_out_string(soap, "infoSrc", -1, &a->infoSrc, "")) + return soap->error; + if (soap_out_string(soap, "infoTxt", -1, &a->infoTxt, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getCourseInfoOutput * SOAP_FMAC4 soap_in_swad__getCourseInfoOutput(struct soap *soap, const char *tag, struct swad__getCourseInfoOutput *a, const char *type) +{ + size_t soap_flag_infoSrc = 1; + size_t soap_flag_infoTxt = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getCourseInfoOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getCourseInfoOutput, sizeof(struct swad__getCourseInfoOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getCourseInfoOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_infoSrc && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "infoSrc", &a->infoSrc, "xsd:string")) + { soap_flag_infoSrc--; + continue; + } + if (soap_flag_infoTxt && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "infoTxt", &a->infoTxt, "xsd:string")) + { soap_flag_infoTxt--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getCourseInfoOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getCourseInfoOutput, 0, sizeof(struct swad__getCourseInfoOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourseInfoOutput(struct soap *soap, const struct swad__getCourseInfoOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getCourseInfoOutput); + if (soap_out_swad__getCourseInfoOutput(soap, tag?tag:"swad:getCourseInfoOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCourseInfoOutput * SOAP_FMAC4 soap_get_swad__getCourseInfoOutput(struct soap *soap, struct swad__getCourseInfoOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getCourseInfoOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCoursesOutput(struct soap *soap, struct swad__getCoursesOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->numCourses); + soap_default_swad__coursesArray(soap, &a->coursesArray); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCoursesOutput(struct soap *soap, const struct swad__getCoursesOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_swad__coursesArray(soap, &a->coursesArray); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCoursesOutput(struct soap *soap, const char *tag, int id, const struct swad__getCoursesOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getCoursesOutput), type)) + return soap->error; + if (soap_out_int(soap, "numCourses", -1, &a->numCourses, "")) + return soap->error; + if (soap_out_swad__coursesArray(soap, "coursesArray", -1, &a->coursesArray, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getCoursesOutput * SOAP_FMAC4 soap_in_swad__getCoursesOutput(struct soap *soap, const char *tag, struct swad__getCoursesOutput *a, const char *type) +{ + size_t soap_flag_numCourses = 1; + size_t soap_flag_coursesArray = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getCoursesOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getCoursesOutput, sizeof(struct swad__getCoursesOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getCoursesOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_numCourses && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "numCourses", &a->numCourses, "xsd:int")) + { soap_flag_numCourses--; + continue; + } + if (soap_flag_coursesArray && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_swad__coursesArray(soap, "coursesArray", &a->coursesArray, "swad:coursesArray")) + { soap_flag_coursesArray--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getCoursesOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getCoursesOutput, 0, sizeof(struct swad__getCoursesOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numCourses > 0 || soap_flag_coursesArray > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCoursesOutput(struct soap *soap, const struct swad__getCoursesOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getCoursesOutput); + if (soap_out_swad__getCoursesOutput(soap, tag?tag:"swad:getCoursesOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCoursesOutput * SOAP_FMAC4 soap_get_swad__getCoursesOutput(struct soap *soap, struct swad__getCoursesOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getCoursesOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__coursesArray(struct soap *soap, struct swad__coursesArray *a) +{ (void)soap; + (void)soap; /* appease -Wall -Werror */ + a->__size = 0; + a->__ptr = NULL; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__coursesArray(struct soap *soap, struct swad__coursesArray const*a) +{ +#ifndef WITH_NOIDREF + int i; + if (a->__ptr && !soap_array_reference(soap, a, (struct soap_array*)(void*)&a->__ptr, 1, SOAP_TYPE_swad__coursesArray)) + for (i = 0; i < a->__size; i++) + { soap_embedded(soap, a->__ptr + i, SOAP_TYPE_swad__course); + soap_serialize_swad__course(soap, a->__ptr + i); + } +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__coursesArray(struct soap *soap, const char *tag, int id, const struct swad__coursesArray *a, const char *type) +{ + int i, n = a->__size; + id = soap_element_id(soap, tag, id, a, (struct soap_array*)(void*)&a->__ptr, 1, type, SOAP_TYPE_swad__coursesArray); + if (id < 0) + return soap->error; + if (soap_element_begin_out(soap, tag, id, type)) + return soap->error; + for (i = 0; i < n; i++) + { + soap_out_swad__course(soap, "item", -1, &a->__ptr[i], ""); + } + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__coursesArray * SOAP_FMAC4 soap_in_swad__coursesArray(struct soap *soap, const char *tag, struct swad__coursesArray *a, const char *type) +{ int i, j; + struct swad__course *p; + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (*soap->type && soap_match_array(soap, "swad:course") && soap_match_tag(soap, soap->type, type)) + { soap->error = SOAP_TYPE; + return NULL; + } + a = (struct swad__coursesArray *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__coursesArray, sizeof(struct swad__coursesArray), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__coursesArray(soap, a); + if (soap->body && !*soap->href) + { + a->__size = soap_getsize(soap->arraySize, soap->arrayOffset, &j); + if (a->__size >= 0) + { a->__ptr = (struct swad__course *)soap_malloc(soap, sizeof(struct swad__course) * a->__size); + for (i = 0; i < a->__size; i++) + soap_default_swad__course(soap, a->__ptr+i); + for (i = 0; i < a->__size; i++) + { soap_peek_element(soap); + if (soap->position) + { i = soap->positions[0]-j; + if (i < 0 || i >= a->__size) + { soap->error = SOAP_IOB; + return NULL; + } + } + if (!soap_in_swad__course(soap, NULL, a->__ptr + i, "swad:course")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + } + else + { if (soap_new_block(soap) == NULL) + return NULL; + for (a->__size = 0; ; a->__size++) + { p = (struct swad__course *)soap_push_block(soap, NULL, sizeof(struct swad__course)); + if (!p) + return NULL; + soap_default_swad__course(soap, p); + if (!soap_in_swad__course(soap, NULL, p, "swad:course")) + { if (soap->error != SOAP_NO_TAG) + return NULL; + soap->error = SOAP_OK; + break; + } + } + soap_pop_block(soap, NULL); + a->__ptr = (struct swad__course *)soap_malloc(soap, soap->blist->size); + soap_save_block(soap, NULL, (char*)a->__ptr, 1); + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__coursesArray *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__coursesArray, 0, sizeof(struct swad__coursesArray), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__coursesArray(struct soap *soap, const struct swad__coursesArray *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, (struct soap_array*)(void*)&a->__ptr, 1, tag, SOAP_TYPE_swad__coursesArray); + if (soap_out_swad__coursesArray(soap, tag?tag:"swad:coursesArray", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__coursesArray * SOAP_FMAC4 soap_get_swad__coursesArray(struct soap *soap, struct swad__coursesArray *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__coursesArray(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__course(struct soap *soap, struct swad__course *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->courseCode); + soap_default_string(soap, &a->courseShortName); + soap_default_string(soap, &a->courseFullName); + soap_default_int(soap, &a->userRole); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__course(struct soap *soap, const struct swad__course *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->courseShortName); + soap_serialize_string(soap, &a->courseFullName); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__course(struct soap *soap, const char *tag, int id, const struct swad__course *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__course), type)) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_string(soap, "courseShortName", -1, &a->courseShortName, "")) + return soap->error; + if (soap_out_string(soap, "courseFullName", -1, &a->courseFullName, "")) + return soap->error; + if (soap_out_int(soap, "userRole", -1, &a->userRole, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__course * SOAP_FMAC4 soap_in_swad__course(struct soap *soap, const char *tag, struct swad__course *a, const char *type) +{ + size_t soap_flag_courseCode = 1; + size_t soap_flag_courseShortName = 1; + size_t soap_flag_courseFullName = 1; + size_t soap_flag_userRole = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__course *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__course, sizeof(struct swad__course), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__course(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_courseShortName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "courseShortName", &a->courseShortName, "xsd:string")) + { soap_flag_courseShortName--; + continue; + } + if (soap_flag_courseFullName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "courseFullName", &a->courseFullName, "xsd:string")) + { soap_flag_courseFullName--; + continue; + } + if (soap_flag_userRole && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userRole", &a->userRole, "xsd:int")) + { soap_flag_userRole--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__course *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__course, 0, sizeof(struct swad__course), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_courseCode > 0 || soap_flag_userRole > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__course(struct soap *soap, const struct swad__course *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__course); + if (soap_out_swad__course(soap, tag?tag:"swad:course", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__course * SOAP_FMAC4 soap_get_swad__course(struct soap *soap, struct swad__course *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__course(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNewPasswordOutput(struct soap *soap, struct swad__getNewPasswordOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->success); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNewPasswordOutput(struct soap *soap, const struct swad__getNewPasswordOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNewPasswordOutput(struct soap *soap, const char *tag, int id, const struct swad__getNewPasswordOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__getNewPasswordOutput), type)) + return soap->error; + if (soap_out_int(soap, "success", -1, &a->success, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__getNewPasswordOutput * SOAP_FMAC4 soap_in_swad__getNewPasswordOutput(struct soap *soap, const char *tag, struct swad__getNewPasswordOutput *a, const char *type) +{ + size_t soap_flag_success = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__getNewPasswordOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__getNewPasswordOutput, sizeof(struct swad__getNewPasswordOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__getNewPasswordOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_success && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "success", &a->success, "xsd:int")) + { soap_flag_success--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__getNewPasswordOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__getNewPasswordOutput, 0, sizeof(struct swad__getNewPasswordOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_success > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNewPasswordOutput(struct soap *soap, const struct swad__getNewPasswordOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__getNewPasswordOutput); + if (soap_out_swad__getNewPasswordOutput(soap, tag?tag:"swad:getNewPasswordOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNewPasswordOutput * SOAP_FMAC4 soap_get_swad__getNewPasswordOutput(struct soap *soap, struct swad__getNewPasswordOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__getNewPasswordOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginByUserPasswordKeyOutput(struct soap *soap, struct swad__loginByUserPasswordKeyOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->userCode); + soap_default_string(soap, &a->wsKey); + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); + soap_default_string(soap, &a->userBirthday); + soap_default_int(soap, &a->userRole); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginByUserPasswordKeyOutput(struct soap *soap, const struct swad__loginByUserPasswordKeyOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); + soap_serialize_string(soap, &a->userBirthday); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginByUserPasswordKeyOutput(struct soap *soap, const char *tag, int id, const struct swad__loginByUserPasswordKeyOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__loginByUserPasswordKeyOutput), type)) + return soap->error; + if (soap_out_int(soap, "userCode", -1, &a->userCode, "")) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + if (soap_out_string(soap, "userBirthday", -1, &a->userBirthday, "")) + return soap->error; + if (soap_out_int(soap, "userRole", -1, &a->userRole, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput * SOAP_FMAC4 soap_in_swad__loginByUserPasswordKeyOutput(struct soap *soap, const char *tag, struct swad__loginByUserPasswordKeyOutput *a, const char *type) +{ + size_t soap_flag_userCode = 1; + size_t soap_flag_wsKey = 1; + size_t soap_flag_userNickname = 1; + size_t soap_flag_userID = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + size_t soap_flag_userBirthday = 1; + size_t soap_flag_userRole = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__loginByUserPasswordKeyOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__loginByUserPasswordKeyOutput, sizeof(struct swad__loginByUserPasswordKeyOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__loginByUserPasswordKeyOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userCode", &a->userCode, "xsd:int")) + { soap_flag_userCode--; + continue; + } + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap_flag_userBirthday && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userBirthday", &a->userBirthday, "xsd:string")) + { soap_flag_userBirthday--; + continue; + } + if (soap_flag_userRole && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userRole", &a->userRole, "xsd:int")) + { soap_flag_userRole--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__loginByUserPasswordKeyOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__loginByUserPasswordKeyOutput, 0, sizeof(struct swad__loginByUserPasswordKeyOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_userCode > 0 || soap_flag_userRole > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginByUserPasswordKeyOutput(struct soap *soap, const struct swad__loginByUserPasswordKeyOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__loginByUserPasswordKeyOutput); + if (soap_out_swad__loginByUserPasswordKeyOutput(soap, tag?tag:"swad:loginByUserPasswordKeyOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput * SOAP_FMAC4 soap_get_swad__loginByUserPasswordKeyOutput(struct soap *soap, struct swad__loginByUserPasswordKeyOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__loginByUserPasswordKeyOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginBySessionKeyOutput(struct soap *soap, struct swad__loginBySessionKeyOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->userCode); + soap_default_int(soap, &a->degreeTypeCode); + soap_default_int(soap, &a->degreeCode); + soap_default_int(soap, &a->courseCode); + soap_default_string(soap, &a->wsKey); + soap_default_string(soap, &a->userNickname); + soap_default_string(soap, &a->userID); + soap_default_string(soap, &a->userSurname1); + soap_default_string(soap, &a->userSurname2); + soap_default_string(soap, &a->userFirstname); + soap_default_string(soap, &a->userPhoto); + soap_default_string(soap, &a->userBirthday); + soap_default_int(soap, &a->userRole); + soap_default_string(soap, &a->degreeTypeName); + soap_default_string(soap, &a->degreeName); + soap_default_string(soap, &a->courseName); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginBySessionKeyOutput(struct soap *soap, const struct swad__loginBySessionKeyOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->wsKey); + soap_serialize_string(soap, &a->userNickname); + soap_serialize_string(soap, &a->userID); + soap_serialize_string(soap, &a->userSurname1); + soap_serialize_string(soap, &a->userSurname2); + soap_serialize_string(soap, &a->userFirstname); + soap_serialize_string(soap, &a->userPhoto); + soap_serialize_string(soap, &a->userBirthday); + soap_serialize_string(soap, &a->degreeTypeName); + soap_serialize_string(soap, &a->degreeName); + soap_serialize_string(soap, &a->courseName); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginBySessionKeyOutput(struct soap *soap, const char *tag, int id, const struct swad__loginBySessionKeyOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__loginBySessionKeyOutput), type)) + return soap->error; + if (soap_out_int(soap, "userCode", -1, &a->userCode, "")) + return soap->error; + if (soap_out_int(soap, "degreeTypeCode", -1, &a->degreeTypeCode, "")) + return soap->error; + if (soap_out_int(soap, "degreeCode", -1, &a->degreeCode, "")) + return soap->error; + if (soap_out_int(soap, "courseCode", -1, &a->courseCode, "")) + return soap->error; + if (soap_out_string(soap, "wsKey", -1, &a->wsKey, "")) + return soap->error; + if (soap_out_string(soap, "userNickname", -1, &a->userNickname, "")) + return soap->error; + if (soap_out_string(soap, "userID", -1, &a->userID, "")) + return soap->error; + if (soap_out_string(soap, "userSurname1", -1, &a->userSurname1, "")) + return soap->error; + if (soap_out_string(soap, "userSurname2", -1, &a->userSurname2, "")) + return soap->error; + if (soap_out_string(soap, "userFirstname", -1, &a->userFirstname, "")) + return soap->error; + if (soap_out_string(soap, "userPhoto", -1, &a->userPhoto, "")) + return soap->error; + if (soap_out_string(soap, "userBirthday", -1, &a->userBirthday, "")) + return soap->error; + if (soap_out_int(soap, "userRole", -1, &a->userRole, "")) + return soap->error; + if (soap_out_string(soap, "degreeTypeName", -1, &a->degreeTypeName, "")) + return soap->error; + if (soap_out_string(soap, "degreeName", -1, &a->degreeName, "")) + return soap->error; + if (soap_out_string(soap, "courseName", -1, &a->courseName, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput * SOAP_FMAC4 soap_in_swad__loginBySessionKeyOutput(struct soap *soap, const char *tag, struct swad__loginBySessionKeyOutput *a, const char *type) +{ + size_t soap_flag_userCode = 1; + size_t soap_flag_degreeTypeCode = 1; + size_t soap_flag_degreeCode = 1; + size_t soap_flag_courseCode = 1; + size_t soap_flag_wsKey = 1; + size_t soap_flag_userNickname = 1; + size_t soap_flag_userID = 1; + size_t soap_flag_userSurname1 = 1; + size_t soap_flag_userSurname2 = 1; + size_t soap_flag_userFirstname = 1; + size_t soap_flag_userPhoto = 1; + size_t soap_flag_userBirthday = 1; + size_t soap_flag_userRole = 1; + size_t soap_flag_degreeTypeName = 1; + size_t soap_flag_degreeName = 1; + size_t soap_flag_courseName = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__loginBySessionKeyOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__loginBySessionKeyOutput, sizeof(struct swad__loginBySessionKeyOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__loginBySessionKeyOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userCode", &a->userCode, "xsd:int")) + { soap_flag_userCode--; + continue; + } + if (soap_flag_degreeTypeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "degreeTypeCode", &a->degreeTypeCode, "xsd:int")) + { soap_flag_degreeTypeCode--; + continue; + } + if (soap_flag_degreeCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "degreeCode", &a->degreeCode, "xsd:int")) + { soap_flag_degreeCode--; + continue; + } + if (soap_flag_courseCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "courseCode", &a->courseCode, "xsd:int")) + { soap_flag_courseCode--; + continue; + } + if (soap_flag_wsKey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "wsKey", &a->wsKey, "xsd:string")) + { soap_flag_wsKey--; + continue; + } + if (soap_flag_userNickname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userNickname", &a->userNickname, "xsd:string")) + { soap_flag_userNickname--; + continue; + } + if (soap_flag_userID && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userID", &a->userID, "xsd:string")) + { soap_flag_userID--; + continue; + } + if (soap_flag_userSurname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname1", &a->userSurname1, "xsd:string")) + { soap_flag_userSurname1--; + continue; + } + if (soap_flag_userSurname2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userSurname2", &a->userSurname2, "xsd:string")) + { soap_flag_userSurname2--; + continue; + } + if (soap_flag_userFirstname && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userFirstname", &a->userFirstname, "xsd:string")) + { soap_flag_userFirstname--; + continue; + } + if (soap_flag_userPhoto && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userPhoto", &a->userPhoto, "xsd:string")) + { soap_flag_userPhoto--; + continue; + } + if (soap_flag_userBirthday && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "userBirthday", &a->userBirthday, "xsd:string")) + { soap_flag_userBirthday--; + continue; + } + if (soap_flag_userRole && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userRole", &a->userRole, "xsd:int")) + { soap_flag_userRole--; + continue; + } + if (soap_flag_degreeTypeName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "degreeTypeName", &a->degreeTypeName, "xsd:string")) + { soap_flag_degreeTypeName--; + continue; + } + if (soap_flag_degreeName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "degreeName", &a->degreeName, "xsd:string")) + { soap_flag_degreeName--; + continue; + } + if (soap_flag_courseName && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "courseName", &a->courseName, "xsd:string")) + { soap_flag_courseName--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__loginBySessionKeyOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__loginBySessionKeyOutput, 0, sizeof(struct swad__loginBySessionKeyOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_userCode > 0 || soap_flag_degreeTypeCode > 0 || soap_flag_degreeCode > 0 || soap_flag_courseCode > 0 || soap_flag_userRole > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginBySessionKeyOutput(struct soap *soap, const struct swad__loginBySessionKeyOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__loginBySessionKeyOutput); + if (soap_out_swad__loginBySessionKeyOutput(soap, tag?tag:"swad:loginBySessionKeyOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput * SOAP_FMAC4 soap_get_swad__loginBySessionKeyOutput(struct soap *soap, struct swad__loginBySessionKeyOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__loginBySessionKeyOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__createAccountOutput(struct soap *soap, struct swad__createAccountOutput *a) +{ + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_default_int(soap, &a->userCode); + soap_default_string(soap, &a->string); +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__createAccountOutput(struct soap *soap, const struct swad__createAccountOutput *a) +{ +#ifndef WITH_NOIDREF + (void)soap; (void)a; /* appease -Wall -Werror */ + soap_serialize_string(soap, &a->string); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__createAccountOutput(struct soap *soap, const char *tag, int id, const struct swad__createAccountOutput *a, const char *type) +{ + (void)soap; (void)tag; (void)id; (void)type; + if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_swad__createAccountOutput), type)) + return soap->error; + if (soap_out_int(soap, "userCode", -1, &a->userCode, "")) + return soap->error; + if (soap_out_string(soap, "string", -1, &a->string, "")) + return soap->error; + return soap_element_end_out(soap, tag); +} + +SOAP_FMAC3 struct swad__createAccountOutput * SOAP_FMAC4 soap_in_swad__createAccountOutput(struct soap *soap, const char *tag, struct swad__createAccountOutput *a, const char *type) +{ + size_t soap_flag_userCode = 1; + size_t soap_flag_string = 1; + if (soap_element_begin_in(soap, tag, 0, type)) + return NULL; + a = (struct swad__createAccountOutput *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_swad__createAccountOutput, sizeof(struct swad__createAccountOutput), 0, NULL, NULL, NULL); + if (!a) + return NULL; + soap_default_swad__createAccountOutput(soap, a); + if (soap->body && !*soap->href) + { + for (;;) + { soap->error = SOAP_TAG_MISMATCH; + if (soap_flag_userCode && soap->error == SOAP_TAG_MISMATCH) + if (soap_in_int(soap, "userCode", &a->userCode, "xsd:int")) + { soap_flag_userCode--; + continue; + } + if (soap_flag_string && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG)) + if (soap_in_string(soap, "string", &a->string, "xsd:string")) + { soap_flag_string--; + continue; + } + if (soap->error == SOAP_TAG_MISMATCH) + soap->error = soap_ignore_element(soap); + if (soap->error == SOAP_NO_TAG) + break; + if (soap->error) + return NULL; + } + if (soap_element_end_in(soap, tag)) + return NULL; + } + else + { a = (struct swad__createAccountOutput *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_swad__createAccountOutput, 0, sizeof(struct swad__createAccountOutput), 0, NULL); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_userCode > 0)) + { soap->error = SOAP_OCCURS; + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__createAccountOutput(struct soap *soap, const struct swad__createAccountOutput *a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_swad__createAccountOutput); + if (soap_out_swad__createAccountOutput(soap, tag?tag:"swad:createAccountOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__createAccountOutput * SOAP_FMAC4 soap_get_swad__createAccountOutput(struct soap *soap, struct swad__createAccountOutput *p, const char *tag, const char *type) +{ + if ((p = soap_in_swad__createAccountOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Reason)) + soap_serialize_SOAP_ENV__Reason(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Reason *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Reason); + if (id < 0) + return soap->error; + return soap_out_SOAP_ENV__Reason(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct SOAP_ENV__Reason **)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_SOAP_ENV__Reason(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct SOAP_ENV__Reason **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Reason); + if (soap_out_PointerToSOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToSOAP_ENV__Reason(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Detail)) + soap_serialize_SOAP_ENV__Detail(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Detail *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Detail); + if (id < 0) + return soap->error; + return soap_out_SOAP_ENV__Detail(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct SOAP_ENV__Detail **)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_SOAP_ENV__Detail(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct SOAP_ENV__Detail **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Detail); + if (soap_out_PointerToSOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToSOAP_ENV__Detail(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +#ifndef WITH_NOGLOBAL + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Code)) + soap_serialize_SOAP_ENV__Code(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Code *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Code); + if (id < 0) + return soap->error; + return soap_out_SOAP_ENV__Code(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct SOAP_ENV__Code **)soap_malloc(soap, sizeof(struct SOAP_ENV__Code *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_SOAP_ENV__Code(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct SOAP_ENV__Code **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Code); + if (soap_out_PointerToSOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToSOAP_ENV__Code(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#endif + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendMessageOutput(struct soap *soap, struct swad__sendMessageOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__sendMessageOutput)) + soap_serialize_swad__sendMessageOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendMessageOutput(struct soap *soap, const char *tag, int id, struct swad__sendMessageOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__sendMessageOutput); + if (id < 0) + return soap->error; + return soap_out_swad__sendMessageOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__sendMessageOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendMessageOutput(struct soap *soap, const char *tag, struct swad__sendMessageOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__sendMessageOutput **)soap_malloc(soap, sizeof(struct swad__sendMessageOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__sendMessageOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__sendMessageOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__sendMessageOutput, sizeof(struct swad__sendMessageOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendMessageOutput(struct soap *soap, struct swad__sendMessageOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__sendMessageOutput); + if (soap_out_PointerToswad__sendMessageOutput(soap, tag?tag:"swad:sendMessageOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMessageOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendMessageOutput(struct soap *soap, struct swad__sendMessageOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__sendMessageOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendNoticeOutput(struct soap *soap, struct swad__sendNoticeOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__sendNoticeOutput)) + soap_serialize_swad__sendNoticeOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendNoticeOutput(struct soap *soap, const char *tag, int id, struct swad__sendNoticeOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__sendNoticeOutput); + if (id < 0) + return soap->error; + return soap_out_swad__sendNoticeOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__sendNoticeOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendNoticeOutput(struct soap *soap, const char *tag, struct swad__sendNoticeOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__sendNoticeOutput **)soap_malloc(soap, sizeof(struct swad__sendNoticeOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__sendNoticeOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__sendNoticeOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__sendNoticeOutput, sizeof(struct swad__sendNoticeOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendNoticeOutput(struct soap *soap, struct swad__sendNoticeOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__sendNoticeOutput); + if (soap_out_PointerToswad__sendNoticeOutput(soap, tag?tag:"swad:sendNoticeOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendNoticeOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendNoticeOutput(struct soap *soap, struct swad__sendNoticeOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__sendNoticeOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__markNotificationsAsReadOutput(struct soap *soap, struct swad__markNotificationsAsReadOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__markNotificationsAsReadOutput)) + soap_serialize_swad__markNotificationsAsReadOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__markNotificationsAsReadOutput(struct soap *soap, const char *tag, int id, struct swad__markNotificationsAsReadOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__markNotificationsAsReadOutput); + if (id < 0) + return soap->error; + return soap_out_swad__markNotificationsAsReadOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput ** SOAP_FMAC4 soap_in_PointerToswad__markNotificationsAsReadOutput(struct soap *soap, const char *tag, struct swad__markNotificationsAsReadOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__markNotificationsAsReadOutput **)soap_malloc(soap, sizeof(struct swad__markNotificationsAsReadOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__markNotificationsAsReadOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__markNotificationsAsReadOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__markNotificationsAsReadOutput, sizeof(struct swad__markNotificationsAsReadOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__markNotificationsAsReadOutput(struct soap *soap, struct swad__markNotificationsAsReadOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput); + if (soap_out_PointerToswad__markNotificationsAsReadOutput(soap, tag?tag:"swad:markNotificationsAsReadOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput ** SOAP_FMAC4 soap_get_PointerToswad__markNotificationsAsReadOutput(struct soap *soap, struct swad__markNotificationsAsReadOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__markNotificationsAsReadOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getNotificationsOutput(struct soap *soap, struct swad__getNotificationsOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getNotificationsOutput)) + soap_serialize_swad__getNotificationsOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getNotificationsOutput(struct soap *soap, const char *tag, int id, struct swad__getNotificationsOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getNotificationsOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getNotificationsOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getNotificationsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getNotificationsOutput(struct soap *soap, const char *tag, struct swad__getNotificationsOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getNotificationsOutput **)soap_malloc(soap, sizeof(struct swad__getNotificationsOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getNotificationsOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getNotificationsOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getNotificationsOutput, sizeof(struct swad__getNotificationsOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getNotificationsOutput(struct soap *soap, struct swad__getNotificationsOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getNotificationsOutput); + if (soap_out_PointerToswad__getNotificationsOutput(soap, tag?tag:"swad:getNotificationsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNotificationsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getNotificationsOutput(struct soap *soap, struct swad__getNotificationsOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getNotificationsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendAttendanceUsersOutput(struct soap *soap, struct swad__sendAttendanceUsersOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__sendAttendanceUsersOutput)) + soap_serialize_swad__sendAttendanceUsersOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendAttendanceUsersOutput(struct soap *soap, const char *tag, int id, struct swad__sendAttendanceUsersOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__sendAttendanceUsersOutput); + if (id < 0) + return soap->error; + return soap_out_swad__sendAttendanceUsersOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendAttendanceUsersOutput(struct soap *soap, const char *tag, struct swad__sendAttendanceUsersOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__sendAttendanceUsersOutput **)soap_malloc(soap, sizeof(struct swad__sendAttendanceUsersOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__sendAttendanceUsersOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__sendAttendanceUsersOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__sendAttendanceUsersOutput, sizeof(struct swad__sendAttendanceUsersOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendAttendanceUsersOutput(struct soap *soap, struct swad__sendAttendanceUsersOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput); + if (soap_out_PointerToswad__sendAttendanceUsersOutput(soap, tag?tag:"swad:sendAttendanceUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendAttendanceUsersOutput(struct soap *soap, struct swad__sendAttendanceUsersOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__sendAttendanceUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getAttendanceUsersOutput(struct soap *soap, struct swad__getAttendanceUsersOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getAttendanceUsersOutput)) + soap_serialize_swad__getAttendanceUsersOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getAttendanceUsersOutput(struct soap *soap, const char *tag, int id, struct swad__getAttendanceUsersOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getAttendanceUsersOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getAttendanceUsersOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__getAttendanceUsersOutput(struct soap *soap, const char *tag, struct swad__getAttendanceUsersOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getAttendanceUsersOutput **)soap_malloc(soap, sizeof(struct swad__getAttendanceUsersOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getAttendanceUsersOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getAttendanceUsersOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getAttendanceUsersOutput, sizeof(struct swad__getAttendanceUsersOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getAttendanceUsersOutput(struct soap *soap, struct swad__getAttendanceUsersOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getAttendanceUsersOutput); + if (soap_out_PointerToswad__getAttendanceUsersOutput(soap, tag?tag:"swad:getAttendanceUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__getAttendanceUsersOutput(struct soap *soap, struct swad__getAttendanceUsersOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getAttendanceUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendAttendanceEventOutput(struct soap *soap, struct swad__sendAttendanceEventOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__sendAttendanceEventOutput)) + soap_serialize_swad__sendAttendanceEventOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendAttendanceEventOutput(struct soap *soap, const char *tag, int id, struct swad__sendAttendanceEventOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__sendAttendanceEventOutput); + if (id < 0) + return soap->error; + return soap_out_swad__sendAttendanceEventOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendAttendanceEventOutput(struct soap *soap, const char *tag, struct swad__sendAttendanceEventOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__sendAttendanceEventOutput **)soap_malloc(soap, sizeof(struct swad__sendAttendanceEventOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__sendAttendanceEventOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__sendAttendanceEventOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__sendAttendanceEventOutput, sizeof(struct swad__sendAttendanceEventOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendAttendanceEventOutput(struct soap *soap, struct swad__sendAttendanceEventOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__sendAttendanceEventOutput); + if (soap_out_PointerToswad__sendAttendanceEventOutput(soap, tag?tag:"swad:sendAttendanceEventOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendAttendanceEventOutput(struct soap *soap, struct swad__sendAttendanceEventOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__sendAttendanceEventOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getAttendanceEventsOutput(struct soap *soap, struct swad__getAttendanceEventsOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getAttendanceEventsOutput)) + soap_serialize_swad__getAttendanceEventsOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getAttendanceEventsOutput(struct soap *soap, const char *tag, int id, struct swad__getAttendanceEventsOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getAttendanceEventsOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getAttendanceEventsOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getAttendanceEventsOutput(struct soap *soap, const char *tag, struct swad__getAttendanceEventsOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getAttendanceEventsOutput **)soap_malloc(soap, sizeof(struct swad__getAttendanceEventsOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getAttendanceEventsOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getAttendanceEventsOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getAttendanceEventsOutput, sizeof(struct swad__getAttendanceEventsOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getAttendanceEventsOutput(struct soap *soap, struct swad__getAttendanceEventsOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getAttendanceEventsOutput); + if (soap_out_PointerToswad__getAttendanceEventsOutput(soap, tag?tag:"swad:getAttendanceEventsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getAttendanceEventsOutput(struct soap *soap, struct swad__getAttendanceEventsOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getAttendanceEventsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getUsersOutput(struct soap *soap, struct swad__getUsersOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getUsersOutput)) + soap_serialize_swad__getUsersOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getUsersOutput(struct soap *soap, const char *tag, int id, struct swad__getUsersOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getUsersOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getUsersOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__getUsersOutput(struct soap *soap, const char *tag, struct swad__getUsersOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getUsersOutput **)soap_malloc(soap, sizeof(struct swad__getUsersOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getUsersOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getUsersOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getUsersOutput, sizeof(struct swad__getUsersOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getUsersOutput(struct soap *soap, struct swad__getUsersOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getUsersOutput); + if (soap_out_PointerToswad__getUsersOutput(soap, tag?tag:"swad:getUsersOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__getUsersOutput(struct soap *soap, struct swad__getUsersOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getUsersOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getTestsOutput(struct soap *soap, struct swad__getTestsOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getTestsOutput)) + soap_serialize_swad__getTestsOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getTestsOutput(struct soap *soap, const char *tag, int id, struct swad__getTestsOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getTestsOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getTestsOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getTestsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getTestsOutput(struct soap *soap, const char *tag, struct swad__getTestsOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getTestsOutput **)soap_malloc(soap, sizeof(struct swad__getTestsOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getTestsOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getTestsOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getTestsOutput, sizeof(struct swad__getTestsOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getTestsOutput(struct soap *soap, struct swad__getTestsOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getTestsOutput); + if (soap_out_PointerToswad__getTestsOutput(soap, tag?tag:"swad:getTestsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTestsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getTestsOutput(struct soap *soap, struct swad__getTestsOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getTestsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getTestConfigOutput(struct soap *soap, struct swad__getTestConfigOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getTestConfigOutput)) + soap_serialize_swad__getTestConfigOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getTestConfigOutput(struct soap *soap, const char *tag, int id, struct swad__getTestConfigOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getTestConfigOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getTestConfigOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getTestConfigOutput ** SOAP_FMAC4 soap_in_PointerToswad__getTestConfigOutput(struct soap *soap, const char *tag, struct swad__getTestConfigOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getTestConfigOutput **)soap_malloc(soap, sizeof(struct swad__getTestConfigOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getTestConfigOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getTestConfigOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getTestConfigOutput, sizeof(struct swad__getTestConfigOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getTestConfigOutput(struct soap *soap, struct swad__getTestConfigOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getTestConfigOutput); + if (soap_out_PointerToswad__getTestConfigOutput(soap, tag?tag:"swad:getTestConfigOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getTestConfigOutput ** SOAP_FMAC4 soap_get_PointerToswad__getTestConfigOutput(struct soap *soap, struct swad__getTestConfigOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getTestConfigOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getMarksOutput(struct soap *soap, struct swad__getMarksOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getMarksOutput)) + soap_serialize_swad__getMarksOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getMarksOutput(struct soap *soap, const char *tag, int id, struct swad__getMarksOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getMarksOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getMarksOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getMarksOutput ** SOAP_FMAC4 soap_in_PointerToswad__getMarksOutput(struct soap *soap, const char *tag, struct swad__getMarksOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getMarksOutput **)soap_malloc(soap, sizeof(struct swad__getMarksOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getMarksOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getMarksOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getMarksOutput, sizeof(struct swad__getMarksOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getMarksOutput(struct soap *soap, struct swad__getMarksOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getMarksOutput); + if (soap_out_PointerToswad__getMarksOutput(soap, tag?tag:"swad:getMarksOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getMarksOutput ** SOAP_FMAC4 soap_get_PointerToswad__getMarksOutput(struct soap *soap, struct swad__getMarksOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getMarksOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getFileOutput(struct soap *soap, struct swad__getFileOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getFileOutput)) + soap_serialize_swad__getFileOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getFileOutput(struct soap *soap, const char *tag, int id, struct swad__getFileOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getFileOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getFileOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getFileOutput ** SOAP_FMAC4 soap_in_PointerToswad__getFileOutput(struct soap *soap, const char *tag, struct swad__getFileOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getFileOutput **)soap_malloc(soap, sizeof(struct swad__getFileOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getFileOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getFileOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getFileOutput, sizeof(struct swad__getFileOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getFileOutput(struct soap *soap, struct swad__getFileOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getFileOutput); + if (soap_out_PointerToswad__getFileOutput(soap, tag?tag:"swad:getFileOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getFileOutput ** SOAP_FMAC4 soap_get_PointerToswad__getFileOutput(struct soap *soap, struct swad__getFileOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getFileOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getDirectoryTreeOutput(struct soap *soap, struct swad__getDirectoryTreeOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getDirectoryTreeOutput)) + soap_serialize_swad__getDirectoryTreeOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getDirectoryTreeOutput(struct soap *soap, const char *tag, int id, struct swad__getDirectoryTreeOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getDirectoryTreeOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getDirectoryTreeOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput ** SOAP_FMAC4 soap_in_PointerToswad__getDirectoryTreeOutput(struct soap *soap, const char *tag, struct swad__getDirectoryTreeOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getDirectoryTreeOutput **)soap_malloc(soap, sizeof(struct swad__getDirectoryTreeOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getDirectoryTreeOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getDirectoryTreeOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getDirectoryTreeOutput, sizeof(struct swad__getDirectoryTreeOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getDirectoryTreeOutput(struct soap *soap, struct swad__getDirectoryTreeOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getDirectoryTreeOutput); + if (soap_out_PointerToswad__getDirectoryTreeOutput(soap, tag?tag:"swad:getDirectoryTreeOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput ** SOAP_FMAC4 soap_get_PointerToswad__getDirectoryTreeOutput(struct soap *soap, struct swad__getDirectoryTreeOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getDirectoryTreeOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendMyGroupsOutput(struct soap *soap, struct swad__sendMyGroupsOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__sendMyGroupsOutput)) + soap_serialize_swad__sendMyGroupsOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendMyGroupsOutput(struct soap *soap, const char *tag, int id, struct swad__sendMyGroupsOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__sendMyGroupsOutput); + if (id < 0) + return soap->error; + return soap_out_swad__sendMyGroupsOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__sendMyGroupsOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendMyGroupsOutput(struct soap *soap, const char *tag, struct swad__sendMyGroupsOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__sendMyGroupsOutput **)soap_malloc(soap, sizeof(struct swad__sendMyGroupsOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__sendMyGroupsOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__sendMyGroupsOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__sendMyGroupsOutput, sizeof(struct swad__sendMyGroupsOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendMyGroupsOutput(struct soap *soap, struct swad__sendMyGroupsOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__sendMyGroupsOutput); + if (soap_out_PointerToswad__sendMyGroupsOutput(soap, tag?tag:"swad:sendMyGroupsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__sendMyGroupsOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendMyGroupsOutput(struct soap *soap, struct swad__sendMyGroupsOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__sendMyGroupsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getGroupsOutput(struct soap *soap, struct swad__getGroupsOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getGroupsOutput)) + soap_serialize_swad__getGroupsOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getGroupsOutput(struct soap *soap, const char *tag, int id, struct swad__getGroupsOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getGroupsOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getGroupsOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getGroupsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getGroupsOutput(struct soap *soap, const char *tag, struct swad__getGroupsOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getGroupsOutput **)soap_malloc(soap, sizeof(struct swad__getGroupsOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getGroupsOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getGroupsOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getGroupsOutput, sizeof(struct swad__getGroupsOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getGroupsOutput(struct soap *soap, struct swad__getGroupsOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getGroupsOutput); + if (soap_out_PointerToswad__getGroupsOutput(soap, tag?tag:"swad:getGroupsOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroupsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getGroupsOutput(struct soap *soap, struct swad__getGroupsOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getGroupsOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getGroupTypesOutput(struct soap *soap, struct swad__getGroupTypesOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getGroupTypesOutput)) + soap_serialize_swad__getGroupTypesOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getGroupTypesOutput(struct soap *soap, const char *tag, int id, struct swad__getGroupTypesOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getGroupTypesOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getGroupTypesOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getGroupTypesOutput ** SOAP_FMAC4 soap_in_PointerToswad__getGroupTypesOutput(struct soap *soap, const char *tag, struct swad__getGroupTypesOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getGroupTypesOutput **)soap_malloc(soap, sizeof(struct swad__getGroupTypesOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getGroupTypesOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getGroupTypesOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getGroupTypesOutput, sizeof(struct swad__getGroupTypesOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getGroupTypesOutput(struct soap *soap, struct swad__getGroupTypesOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getGroupTypesOutput); + if (soap_out_PointerToswad__getGroupTypesOutput(soap, tag?tag:"swad:getGroupTypesOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getGroupTypesOutput ** SOAP_FMAC4 soap_get_PointerToswad__getGroupTypesOutput(struct soap *soap, struct swad__getGroupTypesOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getGroupTypesOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getCourseInfoOutput(struct soap *soap, struct swad__getCourseInfoOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getCourseInfoOutput)) + soap_serialize_swad__getCourseInfoOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getCourseInfoOutput(struct soap *soap, const char *tag, int id, struct swad__getCourseInfoOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getCourseInfoOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getCourseInfoOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getCourseInfoOutput ** SOAP_FMAC4 soap_in_PointerToswad__getCourseInfoOutput(struct soap *soap, const char *tag, struct swad__getCourseInfoOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getCourseInfoOutput **)soap_malloc(soap, sizeof(struct swad__getCourseInfoOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getCourseInfoOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getCourseInfoOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getCourseInfoOutput, sizeof(struct swad__getCourseInfoOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getCourseInfoOutput(struct soap *soap, struct swad__getCourseInfoOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getCourseInfoOutput); + if (soap_out_PointerToswad__getCourseInfoOutput(soap, tag?tag:"swad:getCourseInfoOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCourseInfoOutput ** SOAP_FMAC4 soap_get_PointerToswad__getCourseInfoOutput(struct soap *soap, struct swad__getCourseInfoOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getCourseInfoOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getCoursesOutput(struct soap *soap, struct swad__getCoursesOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getCoursesOutput)) + soap_serialize_swad__getCoursesOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getCoursesOutput(struct soap *soap, const char *tag, int id, struct swad__getCoursesOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getCoursesOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getCoursesOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getCoursesOutput ** SOAP_FMAC4 soap_in_PointerToswad__getCoursesOutput(struct soap *soap, const char *tag, struct swad__getCoursesOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getCoursesOutput **)soap_malloc(soap, sizeof(struct swad__getCoursesOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getCoursesOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getCoursesOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getCoursesOutput, sizeof(struct swad__getCoursesOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getCoursesOutput(struct soap *soap, struct swad__getCoursesOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getCoursesOutput); + if (soap_out_PointerToswad__getCoursesOutput(soap, tag?tag:"swad:getCoursesOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getCoursesOutput ** SOAP_FMAC4 soap_get_PointerToswad__getCoursesOutput(struct soap *soap, struct swad__getCoursesOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getCoursesOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getNewPasswordOutput(struct soap *soap, struct swad__getNewPasswordOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__getNewPasswordOutput)) + soap_serialize_swad__getNewPasswordOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getNewPasswordOutput(struct soap *soap, const char *tag, int id, struct swad__getNewPasswordOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__getNewPasswordOutput); + if (id < 0) + return soap->error; + return soap_out_swad__getNewPasswordOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__getNewPasswordOutput ** SOAP_FMAC4 soap_in_PointerToswad__getNewPasswordOutput(struct soap *soap, const char *tag, struct swad__getNewPasswordOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__getNewPasswordOutput **)soap_malloc(soap, sizeof(struct swad__getNewPasswordOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__getNewPasswordOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__getNewPasswordOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__getNewPasswordOutput, sizeof(struct swad__getNewPasswordOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getNewPasswordOutput(struct soap *soap, struct swad__getNewPasswordOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__getNewPasswordOutput); + if (soap_out_PointerToswad__getNewPasswordOutput(soap, tag?tag:"swad:getNewPasswordOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__getNewPasswordOutput ** SOAP_FMAC4 soap_get_PointerToswad__getNewPasswordOutput(struct soap *soap, struct swad__getNewPasswordOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__getNewPasswordOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__loginBySessionKeyOutput(struct soap *soap, struct swad__loginBySessionKeyOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__loginBySessionKeyOutput)) + soap_serialize_swad__loginBySessionKeyOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__loginBySessionKeyOutput(struct soap *soap, const char *tag, int id, struct swad__loginBySessionKeyOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__loginBySessionKeyOutput); + if (id < 0) + return soap->error; + return soap_out_swad__loginBySessionKeyOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput ** SOAP_FMAC4 soap_in_PointerToswad__loginBySessionKeyOutput(struct soap *soap, const char *tag, struct swad__loginBySessionKeyOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__loginBySessionKeyOutput **)soap_malloc(soap, sizeof(struct swad__loginBySessionKeyOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__loginBySessionKeyOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__loginBySessionKeyOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__loginBySessionKeyOutput, sizeof(struct swad__loginBySessionKeyOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__loginBySessionKeyOutput(struct soap *soap, struct swad__loginBySessionKeyOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__loginBySessionKeyOutput); + if (soap_out_PointerToswad__loginBySessionKeyOutput(soap, tag?tag:"swad:loginBySessionKeyOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput ** SOAP_FMAC4 soap_get_PointerToswad__loginBySessionKeyOutput(struct soap *soap, struct swad__loginBySessionKeyOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__loginBySessionKeyOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__loginByUserPasswordKeyOutput(struct soap *soap, struct swad__loginByUserPasswordKeyOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__loginByUserPasswordKeyOutput)) + soap_serialize_swad__loginByUserPasswordKeyOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__loginByUserPasswordKeyOutput(struct soap *soap, const char *tag, int id, struct swad__loginByUserPasswordKeyOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__loginByUserPasswordKeyOutput); + if (id < 0) + return soap->error; + return soap_out_swad__loginByUserPasswordKeyOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput ** SOAP_FMAC4 soap_in_PointerToswad__loginByUserPasswordKeyOutput(struct soap *soap, const char *tag, struct swad__loginByUserPasswordKeyOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__loginByUserPasswordKeyOutput **)soap_malloc(soap, sizeof(struct swad__loginByUserPasswordKeyOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__loginByUserPasswordKeyOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__loginByUserPasswordKeyOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__loginByUserPasswordKeyOutput, sizeof(struct swad__loginByUserPasswordKeyOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__loginByUserPasswordKeyOutput(struct soap *soap, struct swad__loginByUserPasswordKeyOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput); + if (soap_out_PointerToswad__loginByUserPasswordKeyOutput(soap, tag?tag:"swad:loginByUserPasswordKeyOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput ** SOAP_FMAC4 soap_get_PointerToswad__loginByUserPasswordKeyOutput(struct soap *soap, struct swad__loginByUserPasswordKeyOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__loginByUserPasswordKeyOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__createAccountOutput(struct soap *soap, struct swad__createAccountOutput *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__createAccountOutput)) + soap_serialize_swad__createAccountOutput(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__createAccountOutput(struct soap *soap, const char *tag, int id, struct swad__createAccountOutput *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__createAccountOutput); + if (id < 0) + return soap->error; + return soap_out_swad__createAccountOutput(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__createAccountOutput ** SOAP_FMAC4 soap_in_PointerToswad__createAccountOutput(struct soap *soap, const char *tag, struct swad__createAccountOutput **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__createAccountOutput **)soap_malloc(soap, sizeof(struct swad__createAccountOutput *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__createAccountOutput(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__createAccountOutput **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__createAccountOutput, sizeof(struct swad__createAccountOutput), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__createAccountOutput(struct soap *soap, struct swad__createAccountOutput *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__createAccountOutput); + if (soap_out_PointerToswad__createAccountOutput(soap, tag?tag:"swad:createAccountOutput", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__createAccountOutput ** SOAP_FMAC4 soap_get_PointerToswad__createAccountOutput(struct soap *soap, struct swad__createAccountOutput **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__createAccountOutput(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__attendanceUser(struct soap *soap, struct swad__attendanceUser *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__attendanceUser)) + soap_serialize_swad__attendanceUser(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__attendanceUser(struct soap *soap, const char *tag, int id, struct swad__attendanceUser *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__attendanceUser); + if (id < 0) + return soap->error; + return soap_out_swad__attendanceUser(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__attendanceUser ** SOAP_FMAC4 soap_in_PointerToswad__attendanceUser(struct soap *soap, const char *tag, struct swad__attendanceUser **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__attendanceUser **)soap_malloc(soap, sizeof(struct swad__attendanceUser *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__attendanceUser(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__attendanceUser **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__attendanceUser, sizeof(struct swad__attendanceUser), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__attendanceUser(struct soap *soap, struct swad__attendanceUser *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__attendanceUser); + if (soap_out_PointerToswad__attendanceUser(soap, tag?tag:"swad:attendanceUser", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceUser ** SOAP_FMAC4 soap_get_PointerToswad__attendanceUser(struct soap *soap, struct swad__attendanceUser **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__attendanceUser(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__attendanceEvent(struct soap *soap, struct swad__attendanceEvent *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__attendanceEvent)) + soap_serialize_swad__attendanceEvent(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__attendanceEvent(struct soap *soap, const char *tag, int id, struct swad__attendanceEvent *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__attendanceEvent); + if (id < 0) + return soap->error; + return soap_out_swad__attendanceEvent(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__attendanceEvent ** SOAP_FMAC4 soap_in_PointerToswad__attendanceEvent(struct soap *soap, const char *tag, struct swad__attendanceEvent **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__attendanceEvent **)soap_malloc(soap, sizeof(struct swad__attendanceEvent *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__attendanceEvent(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__attendanceEvent **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__attendanceEvent, sizeof(struct swad__attendanceEvent), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__attendanceEvent(struct soap *soap, struct swad__attendanceEvent *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__attendanceEvent); + if (soap_out_PointerToswad__attendanceEvent(soap, tag?tag:"swad:attendanceEvent", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__attendanceEvent ** SOAP_FMAC4 soap_get_PointerToswad__attendanceEvent(struct soap *soap, struct swad__attendanceEvent **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__attendanceEvent(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__user(struct soap *soap, struct swad__user *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__user)) + soap_serialize_swad__user(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__user(struct soap *soap, const char *tag, int id, struct swad__user *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__user); + if (id < 0) + return soap->error; + return soap_out_swad__user(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__user ** SOAP_FMAC4 soap_in_PointerToswad__user(struct soap *soap, const char *tag, struct swad__user **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__user **)soap_malloc(soap, sizeof(struct swad__user *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__user(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__user **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__user, sizeof(struct swad__user), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__user(struct soap *soap, struct swad__user *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__user); + if (soap_out_PointerToswad__user(soap, tag?tag:"swad:user", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__user ** SOAP_FMAC4 soap_get_PointerToswad__user(struct soap *soap, struct swad__user **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__user(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__questionTag(struct soap *soap, struct swad__questionTag *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__questionTag)) + soap_serialize_swad__questionTag(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__questionTag(struct soap *soap, const char *tag, int id, struct swad__questionTag *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__questionTag); + if (id < 0) + return soap->error; + return soap_out_swad__questionTag(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__questionTag ** SOAP_FMAC4 soap_in_PointerToswad__questionTag(struct soap *soap, const char *tag, struct swad__questionTag **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__questionTag **)soap_malloc(soap, sizeof(struct swad__questionTag *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__questionTag(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__questionTag **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__questionTag, sizeof(struct swad__questionTag), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__questionTag(struct soap *soap, struct swad__questionTag *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__questionTag); + if (soap_out_PointerToswad__questionTag(soap, tag?tag:"swad:questionTag", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__questionTag ** SOAP_FMAC4 soap_get_PointerToswad__questionTag(struct soap *soap, struct swad__questionTag **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__questionTag(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__answer(struct soap *soap, struct swad__answer *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__answer)) + soap_serialize_swad__answer(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__answer(struct soap *soap, const char *tag, int id, struct swad__answer *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__answer); + if (id < 0) + return soap->error; + return soap_out_swad__answer(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__answer ** SOAP_FMAC4 soap_in_PointerToswad__answer(struct soap *soap, const char *tag, struct swad__answer **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__answer **)soap_malloc(soap, sizeof(struct swad__answer *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__answer(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__answer **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__answer, sizeof(struct swad__answer), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__answer(struct soap *soap, struct swad__answer *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__answer); + if (soap_out_PointerToswad__answer(soap, tag?tag:"swad:answer", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__answer ** SOAP_FMAC4 soap_get_PointerToswad__answer(struct soap *soap, struct swad__answer **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__answer(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__question(struct soap *soap, struct swad__question *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__question)) + soap_serialize_swad__question(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__question(struct soap *soap, const char *tag, int id, struct swad__question *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__question); + if (id < 0) + return soap->error; + return soap_out_swad__question(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__question ** SOAP_FMAC4 soap_in_PointerToswad__question(struct soap *soap, const char *tag, struct swad__question **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__question **)soap_malloc(soap, sizeof(struct swad__question *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__question(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__question **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__question, sizeof(struct swad__question), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__question(struct soap *soap, struct swad__question *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__question); + if (soap_out_PointerToswad__question(soap, tag?tag:"swad:question", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__question ** SOAP_FMAC4 soap_get_PointerToswad__question(struct soap *soap, struct swad__question **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__question(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__tag(struct soap *soap, struct swad__tag *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__tag)) + soap_serialize_swad__tag(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__tag(struct soap *soap, const char *tag, int id, struct swad__tag *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__tag); + if (id < 0) + return soap->error; + return soap_out_swad__tag(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__tag ** SOAP_FMAC4 soap_in_PointerToswad__tag(struct soap *soap, const char *tag, struct swad__tag **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__tag **)soap_malloc(soap, sizeof(struct swad__tag *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__tag(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__tag **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__tag, sizeof(struct swad__tag), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__tag(struct soap *soap, struct swad__tag *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__tag); + if (soap_out_PointerToswad__tag(soap, tag?tag:"swad:tag", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__tag ** SOAP_FMAC4 soap_get_PointerToswad__tag(struct soap *soap, struct swad__tag **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__tag(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__notification(struct soap *soap, struct swad__notification *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__notification)) + soap_serialize_swad__notification(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__notification(struct soap *soap, const char *tag, int id, struct swad__notification *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__notification); + if (id < 0) + return soap->error; + return soap_out_swad__notification(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__notification ** SOAP_FMAC4 soap_in_PointerToswad__notification(struct soap *soap, const char *tag, struct swad__notification **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__notification **)soap_malloc(soap, sizeof(struct swad__notification *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__notification(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__notification **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__notification, sizeof(struct swad__notification), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__notification(struct soap *soap, struct swad__notification *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__notification); + if (soap_out_PointerToswad__notification(soap, tag?tag:"swad:notification", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__notification ** SOAP_FMAC4 soap_get_PointerToswad__notification(struct soap *soap, struct swad__notification **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__notification(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__group(struct soap *soap, struct swad__group *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__group)) + soap_serialize_swad__group(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__group(struct soap *soap, const char *tag, int id, struct swad__group *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__group); + if (id < 0) + return soap->error; + return soap_out_swad__group(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__group ** SOAP_FMAC4 soap_in_PointerToswad__group(struct soap *soap, const char *tag, struct swad__group **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__group **)soap_malloc(soap, sizeof(struct swad__group *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__group(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__group **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__group, sizeof(struct swad__group), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__group(struct soap *soap, struct swad__group *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__group); + if (soap_out_PointerToswad__group(soap, tag?tag:"swad:group", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__group ** SOAP_FMAC4 soap_get_PointerToswad__group(struct soap *soap, struct swad__group **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__group(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__groupType(struct soap *soap, struct swad__groupType *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__groupType)) + soap_serialize_swad__groupType(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__groupType(struct soap *soap, const char *tag, int id, struct swad__groupType *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__groupType); + if (id < 0) + return soap->error; + return soap_out_swad__groupType(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__groupType ** SOAP_FMAC4 soap_in_PointerToswad__groupType(struct soap *soap, const char *tag, struct swad__groupType **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__groupType **)soap_malloc(soap, sizeof(struct swad__groupType *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__groupType(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__groupType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__groupType, sizeof(struct swad__groupType), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__groupType(struct soap *soap, struct swad__groupType *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__groupType); + if (soap_out_PointerToswad__groupType(soap, tag?tag:"swad:groupType", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__groupType ** SOAP_FMAC4 soap_get_PointerToswad__groupType(struct soap *soap, struct swad__groupType **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__groupType(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__course(struct soap *soap, struct swad__course *const*a) +{ +#ifndef WITH_NOIDREF + if (!soap_reference(soap, *a, SOAP_TYPE_swad__course)) + soap_serialize_swad__course(soap, *a); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__course(struct soap *soap, const char *tag, int id, struct swad__course *const*a, const char *type) +{ + id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_swad__course); + if (id < 0) + return soap->error; + return soap_out_swad__course(soap, tag, id, *a, type); +} + +SOAP_FMAC3 struct swad__course ** SOAP_FMAC4 soap_in_PointerToswad__course(struct soap *soap, const char *tag, struct swad__course **a, const char *type) +{ + if (soap_element_begin_in(soap, tag, 1, NULL)) + return NULL; + if (!a) + if (!(a = (struct swad__course **)soap_malloc(soap, sizeof(struct swad__course *)))) + return NULL; + *a = NULL; + if (!soap->null && *soap->href != '#') + { soap_revert(soap); + if (!(*a = soap_in_swad__course(soap, tag, *a, type))) + return NULL; + } + else + { a = (struct swad__course **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_swad__course, sizeof(struct swad__course), 0); + if (soap->body && soap_element_end_in(soap, tag)) + return NULL; + } + return a; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__course(struct soap *soap, struct swad__course *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToswad__course); + if (soap_out_PointerToswad__course(soap, tag?tag:"swad:course", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 struct swad__course ** SOAP_FMAC4 soap_get_PointerToswad__course(struct soap *soap, struct swad__course **p, const char *tag, const char *type) +{ + if ((p = soap_in_PointerToswad__course(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__QName(struct soap *soap, char *const*a) +{ +#ifndef WITH_NOIDREF + soap_reference(soap, *a, SOAP_TYPE__QName); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap *soap, const char *tag, int id, char *const*a, const char *type) +{ + return soap_outstring(soap, tag, id, a, type, SOAP_TYPE__QName); +} + +SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap *soap, const char *tag, char **a, const char *type) +{ char **p; + p = soap_instring(soap, tag, a, type, SOAP_TYPE__QName, 2, 0, -1); + return p; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap *soap, char *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__QName); + if (soap_out__QName(soap, tag?tag:"byte", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap *soap, char **p, const char *tag, const char *type) +{ + if ((p = soap_in__QName(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_default_string(struct soap *soap, char **a) +{ + (void)soap; /* appease -Wall -Werror */ +#ifdef SOAP_DEFAULT_string + *a = SOAP_DEFAULT_string; +#else + *a = (char *)0; +#endif +} + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap *soap, char *const*a) +{ +#ifndef WITH_NOIDREF + soap_reference(soap, *a, SOAP_TYPE_string); +#endif +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap *soap, const char *tag, int id, char *const*a, const char *type) +{ + return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_string); +} + +SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap *soap, const char *tag, char **a, const char *type) +{ char **p; + p = soap_instring(soap, tag, a, type, SOAP_TYPE_string, 1, 0, -1); + return p; +} + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap *soap, char *const*a, const char *tag, const char *type) +{ + register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_string); + if (soap_out_string(soap, tag?tag:"byte", id, a, type)) + return soap->error; + return soap_putindependent(soap); +} + +SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap *soap, char **p, const char *tag, const char *type) +{ + if ((p = soap_in_string(soap, tag, p, type))) + if (soap_getindependent(soap)) + return NULL; + return p; +} + +#ifdef __cplusplus +} +#endif + +#if defined(__BORLANDC__) +#pragma option pop +#pragma option pop +#endif + +/* End of soapC.c */ diff --git a/soap/soapC.o b/soap/soapC.o new file mode 100644 index 00000000..6089aa19 Binary files /dev/null and b/soap/soapC.o differ diff --git a/soap/soapH.h b/soap/soapH.h new file mode 100644 index 00000000..493ef794 --- /dev/null +++ b/soap/soapH.h @@ -0,0 +1,2404 @@ +/* soapH.h + Generated by gSOAP 2.8.18 from swad_web_service.h + +Copyright(C) 2000-2014, Robert van Engelen, Genivia Inc. All Rights Reserved. +The generated code is released under one of the following licenses: +GPL or Genivia's license for commercial use. +This program is released under the GPL with the additional exemption that +compiling, linking, and/or using OpenSSL is allowed. +*/ + +#ifndef soapH_H +#define soapH_H +#include "soapStub.h" +#ifdef __cplusplus +extern "C" { +#endif +#ifndef WITH_NOIDREF +SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap*, const void*, int); +SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap*); +SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap*); +#endif +SOAP_FMAC3 void *SOAP_FMAC4 soap_getelement(struct soap*, int*); +SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap*, const void*, const char*, int, int); +SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap*); + +SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap); + +#ifndef SOAP_TYPE_byte +#define SOAP_TYPE_byte (3) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_byte(struct soap*, char *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap*, const char*, int, const char *, const char*); +SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap*, const char*, char *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap*, const char *, const char*, const char*); + +#ifndef soap_write_byte +#define soap_write_byte(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_byte(soap, data),0) || soap_put_byte(soap, data, "byte", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap*, char *, const char*, const char*); + +#ifndef soap_read_byte +#define soap_read_byte(soap, data) ( soap_begin_recv(soap) || !soap_get_byte(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_int +#define SOAP_TYPE_int (1) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_int(struct soap*, int *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap*, const char*, int, const int *, const char*); +SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap*, const char*, int *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap*, const int *, const char*, const char*); + +#ifndef soap_write_int +#define soap_write_int(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_int(soap, data),0) || soap_put_int(soap, data, "int", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap*, int *, const char*, const char*); + +#ifndef soap_read_int +#define soap_read_int(soap, data) ( soap_begin_recv(soap) || !soap_get_int(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_long +#define SOAP_TYPE_long (17) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_long(struct soap*, long *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_long(struct soap*, const char*, int, const long *, const char*); +SOAP_FMAC3 long * SOAP_FMAC4 soap_in_long(struct soap*, const char*, long *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_long(struct soap*, const long *, const char*, const char*); + +#ifndef soap_write_long +#define soap_write_long(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_long(soap, data),0) || soap_put_long(soap, data, "long", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 long * SOAP_FMAC4 soap_get_long(struct soap*, long *, const char*, const char*); + +#ifndef soap_read_long +#define soap_read_long(soap, data) ( soap_begin_recv(soap) || !soap_get_long(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Fault +#define SOAP_TYPE_SOAP_ENV__Fault (140) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap*, const char*, int, const struct SOAP_ENV__Fault *, const char*); +SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap*, const char*, struct SOAP_ENV__Fault *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap*, const struct SOAP_ENV__Fault *, const char*, const char*); + +#ifndef soap_write_SOAP_ENV__Fault +#define soap_write_SOAP_ENV__Fault(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_SOAP_ENV__Fault(soap, data),0) || soap_put_SOAP_ENV__Fault(soap, data, "SOAP-ENV:Fault", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap*, struct SOAP_ENV__Fault *, const char*, const char*); + +#ifndef soap_read_SOAP_ENV__Fault +#define soap_read_SOAP_ENV__Fault(soap, data) ( soap_begin_recv(soap) || !soap_get_SOAP_ENV__Fault(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Reason +#define SOAP_TYPE_SOAP_ENV__Reason (139) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap*, const char*, int, const struct SOAP_ENV__Reason *, const char*); +SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap*, const char*, struct SOAP_ENV__Reason *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap*, const struct SOAP_ENV__Reason *, const char*, const char*); + +#ifndef soap_write_SOAP_ENV__Reason +#define soap_write_SOAP_ENV__Reason(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_SOAP_ENV__Reason(soap, data),0) || soap_put_SOAP_ENV__Reason(soap, data, "SOAP-ENV:Reason", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *, const char*, const char*); + +#ifndef soap_read_SOAP_ENV__Reason +#define soap_read_SOAP_ENV__Reason(soap, data) ( soap_begin_recv(soap) || !soap_get_SOAP_ENV__Reason(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Detail +#define SOAP_TYPE_SOAP_ENV__Detail (136) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap*, const char*, int, const struct SOAP_ENV__Detail *, const char*); +SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap*, const char*, struct SOAP_ENV__Detail *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap*, const struct SOAP_ENV__Detail *, const char*, const char*); + +#ifndef soap_write_SOAP_ENV__Detail +#define soap_write_SOAP_ENV__Detail(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_SOAP_ENV__Detail(soap, data),0) || soap_put_SOAP_ENV__Detail(soap, data, "SOAP-ENV:Detail", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *, const char*, const char*); + +#ifndef soap_read_SOAP_ENV__Detail +#define soap_read_SOAP_ENV__Detail(soap, data) ( soap_begin_recv(soap) || !soap_get_SOAP_ENV__Detail(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Code +#define SOAP_TYPE_SOAP_ENV__Code (134) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap*, const char*, int, const struct SOAP_ENV__Code *, const char*); +SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap*, const char*, struct SOAP_ENV__Code *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap*, const struct SOAP_ENV__Code *, const char*, const char*); + +#ifndef soap_write_SOAP_ENV__Code +#define soap_write_SOAP_ENV__Code(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_SOAP_ENV__Code(soap, data),0) || soap_put_SOAP_ENV__Code(soap, data, "SOAP-ENV:Code", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *, const char*, const char*); + +#ifndef soap_read_SOAP_ENV__Code +#define soap_read_SOAP_ENV__Code(soap, data) ( soap_begin_recv(soap) || !soap_get_SOAP_ENV__Code(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Header +#define SOAP_TYPE_SOAP_ENV__Header (133) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap*, const char*, int, const struct SOAP_ENV__Header *, const char*); +SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap*, const char*, struct SOAP_ENV__Header *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap*, const struct SOAP_ENV__Header *, const char*, const char*); + +#ifndef soap_write_SOAP_ENV__Header +#define soap_write_SOAP_ENV__Header(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_SOAP_ENV__Header(soap, data),0) || soap_put_SOAP_ENV__Header(soap, data, "SOAP-ENV:Header", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap*, struct SOAP_ENV__Header *, const char*, const char*); + +#ifndef soap_read_SOAP_ENV__Header +#define soap_read_SOAP_ENV__Header(soap, data) ( soap_begin_recv(soap) || !soap_get_SOAP_ENV__Header(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef SOAP_TYPE_swad__sendMessage +#define SOAP_TYPE_swad__sendMessage (132) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMessage(struct soap*, struct swad__sendMessage *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMessage(struct soap*, const struct swad__sendMessage *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMessage(struct soap*, const char*, int, const struct swad__sendMessage *, const char*); +SOAP_FMAC3 struct swad__sendMessage * SOAP_FMAC4 soap_in_swad__sendMessage(struct soap*, const char*, struct swad__sendMessage *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMessage(struct soap*, const struct swad__sendMessage *, const char*, const char*); + +#ifndef soap_write_swad__sendMessage +#define soap_write_swad__sendMessage(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendMessage(soap, data),0) || soap_put_swad__sendMessage(soap, data, "swad:sendMessage", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMessage * SOAP_FMAC4 soap_get_swad__sendMessage(struct soap*, struct swad__sendMessage *, const char*, const char*); + +#ifndef soap_read_swad__sendMessage +#define soap_read_swad__sendMessage(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendMessage(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendNotice +#define SOAP_TYPE_swad__sendNotice (129) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendNotice(struct soap*, struct swad__sendNotice *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendNotice(struct soap*, const struct swad__sendNotice *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendNotice(struct soap*, const char*, int, const struct swad__sendNotice *, const char*); +SOAP_FMAC3 struct swad__sendNotice * SOAP_FMAC4 soap_in_swad__sendNotice(struct soap*, const char*, struct swad__sendNotice *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendNotice(struct soap*, const struct swad__sendNotice *, const char*, const char*); + +#ifndef soap_write_swad__sendNotice +#define soap_write_swad__sendNotice(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendNotice(soap, data),0) || soap_put_swad__sendNotice(soap, data, "swad:sendNotice", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendNotice * SOAP_FMAC4 soap_get_swad__sendNotice(struct soap*, struct swad__sendNotice *, const char*, const char*); + +#ifndef soap_read_swad__sendNotice +#define soap_read_swad__sendNotice(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendNotice(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__markNotificationsAsRead +#define SOAP_TYPE_swad__markNotificationsAsRead (126) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__markNotificationsAsRead(struct soap*, struct swad__markNotificationsAsRead *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__markNotificationsAsRead(struct soap*, const struct swad__markNotificationsAsRead *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__markNotificationsAsRead(struct soap*, const char*, int, const struct swad__markNotificationsAsRead *, const char*); +SOAP_FMAC3 struct swad__markNotificationsAsRead * SOAP_FMAC4 soap_in_swad__markNotificationsAsRead(struct soap*, const char*, struct swad__markNotificationsAsRead *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__markNotificationsAsRead(struct soap*, const struct swad__markNotificationsAsRead *, const char*, const char*); + +#ifndef soap_write_swad__markNotificationsAsRead +#define soap_write_swad__markNotificationsAsRead(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__markNotificationsAsRead(soap, data),0) || soap_put_swad__markNotificationsAsRead(soap, data, "swad:markNotificationsAsRead", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__markNotificationsAsRead * SOAP_FMAC4 soap_get_swad__markNotificationsAsRead(struct soap*, struct swad__markNotificationsAsRead *, const char*, const char*); + +#ifndef soap_read_swad__markNotificationsAsRead +#define soap_read_swad__markNotificationsAsRead(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__markNotificationsAsRead(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getNotifications +#define SOAP_TYPE_swad__getNotifications (123) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNotifications(struct soap*, struct swad__getNotifications *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNotifications(struct soap*, const struct swad__getNotifications *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNotifications(struct soap*, const char*, int, const struct swad__getNotifications *, const char*); +SOAP_FMAC3 struct swad__getNotifications * SOAP_FMAC4 soap_in_swad__getNotifications(struct soap*, const char*, struct swad__getNotifications *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNotifications(struct soap*, const struct swad__getNotifications *, const char*, const char*); + +#ifndef soap_write_swad__getNotifications +#define soap_write_swad__getNotifications(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getNotifications(soap, data),0) || soap_put_swad__getNotifications(soap, data, "swad:getNotifications", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNotifications * SOAP_FMAC4 soap_get_swad__getNotifications(struct soap*, struct swad__getNotifications *, const char*, const char*); + +#ifndef soap_read_swad__getNotifications +#define soap_read_swad__getNotifications(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getNotifications(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendAttendanceUsers +#define SOAP_TYPE_swad__sendAttendanceUsers (120) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceUsers(struct soap*, struct swad__sendAttendanceUsers *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceUsers(struct soap*, const struct swad__sendAttendanceUsers *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceUsers(struct soap*, const char*, int, const struct swad__sendAttendanceUsers *, const char*); +SOAP_FMAC3 struct swad__sendAttendanceUsers * SOAP_FMAC4 soap_in_swad__sendAttendanceUsers(struct soap*, const char*, struct swad__sendAttendanceUsers *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceUsers(struct soap*, const struct swad__sendAttendanceUsers *, const char*, const char*); + +#ifndef soap_write_swad__sendAttendanceUsers +#define soap_write_swad__sendAttendanceUsers(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendAttendanceUsers(soap, data),0) || soap_put_swad__sendAttendanceUsers(soap, data, "swad:sendAttendanceUsers", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceUsers * SOAP_FMAC4 soap_get_swad__sendAttendanceUsers(struct soap*, struct swad__sendAttendanceUsers *, const char*, const char*); + +#ifndef soap_read_swad__sendAttendanceUsers +#define soap_read_swad__sendAttendanceUsers(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendAttendanceUsers(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getAttendanceUsers +#define SOAP_TYPE_swad__getAttendanceUsers (117) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceUsers(struct soap*, struct swad__getAttendanceUsers *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceUsers(struct soap*, const struct swad__getAttendanceUsers *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceUsers(struct soap*, const char*, int, const struct swad__getAttendanceUsers *, const char*); +SOAP_FMAC3 struct swad__getAttendanceUsers * SOAP_FMAC4 soap_in_swad__getAttendanceUsers(struct soap*, const char*, struct swad__getAttendanceUsers *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceUsers(struct soap*, const struct swad__getAttendanceUsers *, const char*, const char*); + +#ifndef soap_write_swad__getAttendanceUsers +#define soap_write_swad__getAttendanceUsers(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getAttendanceUsers(soap, data),0) || soap_put_swad__getAttendanceUsers(soap, data, "swad:getAttendanceUsers", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceUsers * SOAP_FMAC4 soap_get_swad__getAttendanceUsers(struct soap*, struct swad__getAttendanceUsers *, const char*, const char*); + +#ifndef soap_read_swad__getAttendanceUsers +#define soap_read_swad__getAttendanceUsers(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getAttendanceUsers(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendAttendanceEvent +#define SOAP_TYPE_swad__sendAttendanceEvent (114) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceEvent(struct soap*, struct swad__sendAttendanceEvent *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceEvent(struct soap*, const struct swad__sendAttendanceEvent *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceEvent(struct soap*, const char*, int, const struct swad__sendAttendanceEvent *, const char*); +SOAP_FMAC3 struct swad__sendAttendanceEvent * SOAP_FMAC4 soap_in_swad__sendAttendanceEvent(struct soap*, const char*, struct swad__sendAttendanceEvent *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceEvent(struct soap*, const struct swad__sendAttendanceEvent *, const char*, const char*); + +#ifndef soap_write_swad__sendAttendanceEvent +#define soap_write_swad__sendAttendanceEvent(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendAttendanceEvent(soap, data),0) || soap_put_swad__sendAttendanceEvent(soap, data, "swad:sendAttendanceEvent", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceEvent * SOAP_FMAC4 soap_get_swad__sendAttendanceEvent(struct soap*, struct swad__sendAttendanceEvent *, const char*, const char*); + +#ifndef soap_read_swad__sendAttendanceEvent +#define soap_read_swad__sendAttendanceEvent(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendAttendanceEvent(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getAttendanceEvents +#define SOAP_TYPE_swad__getAttendanceEvents (111) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceEvents(struct soap*, struct swad__getAttendanceEvents *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceEvents(struct soap*, const struct swad__getAttendanceEvents *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceEvents(struct soap*, const char*, int, const struct swad__getAttendanceEvents *, const char*); +SOAP_FMAC3 struct swad__getAttendanceEvents * SOAP_FMAC4 soap_in_swad__getAttendanceEvents(struct soap*, const char*, struct swad__getAttendanceEvents *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceEvents(struct soap*, const struct swad__getAttendanceEvents *, const char*, const char*); + +#ifndef soap_write_swad__getAttendanceEvents +#define soap_write_swad__getAttendanceEvents(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getAttendanceEvents(soap, data),0) || soap_put_swad__getAttendanceEvents(soap, data, "swad:getAttendanceEvents", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceEvents * SOAP_FMAC4 soap_get_swad__getAttendanceEvents(struct soap*, struct swad__getAttendanceEvents *, const char*, const char*); + +#ifndef soap_read_swad__getAttendanceEvents +#define soap_read_swad__getAttendanceEvents(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getAttendanceEvents(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getUsers +#define SOAP_TYPE_swad__getUsers (108) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getUsers(struct soap*, struct swad__getUsers *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getUsers(struct soap*, const struct swad__getUsers *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getUsers(struct soap*, const char*, int, const struct swad__getUsers *, const char*); +SOAP_FMAC3 struct swad__getUsers * SOAP_FMAC4 soap_in_swad__getUsers(struct soap*, const char*, struct swad__getUsers *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getUsers(struct soap*, const struct swad__getUsers *, const char*, const char*); + +#ifndef soap_write_swad__getUsers +#define soap_write_swad__getUsers(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getUsers(soap, data),0) || soap_put_swad__getUsers(soap, data, "swad:getUsers", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getUsers * SOAP_FMAC4 soap_get_swad__getUsers(struct soap*, struct swad__getUsers *, const char*, const char*); + +#ifndef soap_read_swad__getUsers +#define soap_read_swad__getUsers(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getUsers(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getTests +#define SOAP_TYPE_swad__getTests (105) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTests(struct soap*, struct swad__getTests *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTests(struct soap*, const struct swad__getTests *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTests(struct soap*, const char*, int, const struct swad__getTests *, const char*); +SOAP_FMAC3 struct swad__getTests * SOAP_FMAC4 soap_in_swad__getTests(struct soap*, const char*, struct swad__getTests *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTests(struct soap*, const struct swad__getTests *, const char*, const char*); + +#ifndef soap_write_swad__getTests +#define soap_write_swad__getTests(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getTests(soap, data),0) || soap_put_swad__getTests(soap, data, "swad:getTests", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTests * SOAP_FMAC4 soap_get_swad__getTests(struct soap*, struct swad__getTests *, const char*, const char*); + +#ifndef soap_read_swad__getTests +#define soap_read_swad__getTests(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getTests(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getTestConfig +#define SOAP_TYPE_swad__getTestConfig (102) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestConfig(struct soap*, struct swad__getTestConfig *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestConfig(struct soap*, const struct swad__getTestConfig *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestConfig(struct soap*, const char*, int, const struct swad__getTestConfig *, const char*); +SOAP_FMAC3 struct swad__getTestConfig * SOAP_FMAC4 soap_in_swad__getTestConfig(struct soap*, const char*, struct swad__getTestConfig *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestConfig(struct soap*, const struct swad__getTestConfig *, const char*, const char*); + +#ifndef soap_write_swad__getTestConfig +#define soap_write_swad__getTestConfig(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getTestConfig(soap, data),0) || soap_put_swad__getTestConfig(soap, data, "swad:getTestConfig", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTestConfig * SOAP_FMAC4 soap_get_swad__getTestConfig(struct soap*, struct swad__getTestConfig *, const char*, const char*); + +#ifndef soap_read_swad__getTestConfig +#define soap_read_swad__getTestConfig(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getTestConfig(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getMarks +#define SOAP_TYPE_swad__getMarks (99) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getMarks(struct soap*, struct swad__getMarks *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getMarks(struct soap*, const struct swad__getMarks *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getMarks(struct soap*, const char*, int, const struct swad__getMarks *, const char*); +SOAP_FMAC3 struct swad__getMarks * SOAP_FMAC4 soap_in_swad__getMarks(struct soap*, const char*, struct swad__getMarks *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getMarks(struct soap*, const struct swad__getMarks *, const char*, const char*); + +#ifndef soap_write_swad__getMarks +#define soap_write_swad__getMarks(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getMarks(soap, data),0) || soap_put_swad__getMarks(soap, data, "swad:getMarks", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getMarks * SOAP_FMAC4 soap_get_swad__getMarks(struct soap*, struct swad__getMarks *, const char*, const char*); + +#ifndef soap_read_swad__getMarks +#define soap_read_swad__getMarks(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getMarks(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getFile +#define SOAP_TYPE_swad__getFile (96) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getFile(struct soap*, struct swad__getFile *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getFile(struct soap*, const struct swad__getFile *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getFile(struct soap*, const char*, int, const struct swad__getFile *, const char*); +SOAP_FMAC3 struct swad__getFile * SOAP_FMAC4 soap_in_swad__getFile(struct soap*, const char*, struct swad__getFile *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getFile(struct soap*, const struct swad__getFile *, const char*, const char*); + +#ifndef soap_write_swad__getFile +#define soap_write_swad__getFile(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getFile(soap, data),0) || soap_put_swad__getFile(soap, data, "swad:getFile", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getFile * SOAP_FMAC4 soap_get_swad__getFile(struct soap*, struct swad__getFile *, const char*, const char*); + +#ifndef soap_read_swad__getFile +#define soap_read_swad__getFile(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getFile(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getDirectoryTree +#define SOAP_TYPE_swad__getDirectoryTree (93) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getDirectoryTree(struct soap*, struct swad__getDirectoryTree *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getDirectoryTree(struct soap*, const struct swad__getDirectoryTree *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getDirectoryTree(struct soap*, const char*, int, const struct swad__getDirectoryTree *, const char*); +SOAP_FMAC3 struct swad__getDirectoryTree * SOAP_FMAC4 soap_in_swad__getDirectoryTree(struct soap*, const char*, struct swad__getDirectoryTree *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getDirectoryTree(struct soap*, const struct swad__getDirectoryTree *, const char*, const char*); + +#ifndef soap_write_swad__getDirectoryTree +#define soap_write_swad__getDirectoryTree(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getDirectoryTree(soap, data),0) || soap_put_swad__getDirectoryTree(soap, data, "swad:getDirectoryTree", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getDirectoryTree * SOAP_FMAC4 soap_get_swad__getDirectoryTree(struct soap*, struct swad__getDirectoryTree *, const char*, const char*); + +#ifndef soap_read_swad__getDirectoryTree +#define soap_read_swad__getDirectoryTree(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getDirectoryTree(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendMyGroups +#define SOAP_TYPE_swad__sendMyGroups (90) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMyGroups(struct soap*, struct swad__sendMyGroups *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMyGroups(struct soap*, const struct swad__sendMyGroups *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMyGroups(struct soap*, const char*, int, const struct swad__sendMyGroups *, const char*); +SOAP_FMAC3 struct swad__sendMyGroups * SOAP_FMAC4 soap_in_swad__sendMyGroups(struct soap*, const char*, struct swad__sendMyGroups *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMyGroups(struct soap*, const struct swad__sendMyGroups *, const char*, const char*); + +#ifndef soap_write_swad__sendMyGroups +#define soap_write_swad__sendMyGroups(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendMyGroups(soap, data),0) || soap_put_swad__sendMyGroups(soap, data, "swad:sendMyGroups", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMyGroups * SOAP_FMAC4 soap_get_swad__sendMyGroups(struct soap*, struct swad__sendMyGroups *, const char*, const char*); + +#ifndef soap_read_swad__sendMyGroups +#define soap_read_swad__sendMyGroups(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendMyGroups(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getGroups +#define SOAP_TYPE_swad__getGroups (87) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroups(struct soap*, struct swad__getGroups *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroups(struct soap*, const struct swad__getGroups *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroups(struct soap*, const char*, int, const struct swad__getGroups *, const char*); +SOAP_FMAC3 struct swad__getGroups * SOAP_FMAC4 soap_in_swad__getGroups(struct soap*, const char*, struct swad__getGroups *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroups(struct soap*, const struct swad__getGroups *, const char*, const char*); + +#ifndef soap_write_swad__getGroups +#define soap_write_swad__getGroups(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getGroups(soap, data),0) || soap_put_swad__getGroups(soap, data, "swad:getGroups", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroups * SOAP_FMAC4 soap_get_swad__getGroups(struct soap*, struct swad__getGroups *, const char*, const char*); + +#ifndef soap_read_swad__getGroups +#define soap_read_swad__getGroups(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getGroups(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getGroupTypes +#define SOAP_TYPE_swad__getGroupTypes (84) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupTypes(struct soap*, struct swad__getGroupTypes *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupTypes(struct soap*, const struct swad__getGroupTypes *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupTypes(struct soap*, const char*, int, const struct swad__getGroupTypes *, const char*); +SOAP_FMAC3 struct swad__getGroupTypes * SOAP_FMAC4 soap_in_swad__getGroupTypes(struct soap*, const char*, struct swad__getGroupTypes *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupTypes(struct soap*, const struct swad__getGroupTypes *, const char*, const char*); + +#ifndef soap_write_swad__getGroupTypes +#define soap_write_swad__getGroupTypes(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getGroupTypes(soap, data),0) || soap_put_swad__getGroupTypes(soap, data, "swad:getGroupTypes", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroupTypes * SOAP_FMAC4 soap_get_swad__getGroupTypes(struct soap*, struct swad__getGroupTypes *, const char*, const char*); + +#ifndef soap_read_swad__getGroupTypes +#define soap_read_swad__getGroupTypes(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getGroupTypes(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getCourseInfo +#define SOAP_TYPE_swad__getCourseInfo (81) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourseInfo(struct soap*, struct swad__getCourseInfo *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourseInfo(struct soap*, const struct swad__getCourseInfo *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourseInfo(struct soap*, const char*, int, const struct swad__getCourseInfo *, const char*); +SOAP_FMAC3 struct swad__getCourseInfo * SOAP_FMAC4 soap_in_swad__getCourseInfo(struct soap*, const char*, struct swad__getCourseInfo *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourseInfo(struct soap*, const struct swad__getCourseInfo *, const char*, const char*); + +#ifndef soap_write_swad__getCourseInfo +#define soap_write_swad__getCourseInfo(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getCourseInfo(soap, data),0) || soap_put_swad__getCourseInfo(soap, data, "swad:getCourseInfo", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCourseInfo * SOAP_FMAC4 soap_get_swad__getCourseInfo(struct soap*, struct swad__getCourseInfo *, const char*, const char*); + +#ifndef soap_read_swad__getCourseInfo +#define soap_read_swad__getCourseInfo(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getCourseInfo(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getCourses +#define SOAP_TYPE_swad__getCourses (78) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourses(struct soap*, struct swad__getCourses *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourses(struct soap*, const struct swad__getCourses *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourses(struct soap*, const char*, int, const struct swad__getCourses *, const char*); +SOAP_FMAC3 struct swad__getCourses * SOAP_FMAC4 soap_in_swad__getCourses(struct soap*, const char*, struct swad__getCourses *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourses(struct soap*, const struct swad__getCourses *, const char*, const char*); + +#ifndef soap_write_swad__getCourses +#define soap_write_swad__getCourses(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getCourses(soap, data),0) || soap_put_swad__getCourses(soap, data, "swad:getCourses", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCourses * SOAP_FMAC4 soap_get_swad__getCourses(struct soap*, struct swad__getCourses *, const char*, const char*); + +#ifndef soap_read_swad__getCourses +#define soap_read_swad__getCourses(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getCourses(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getNewPassword +#define SOAP_TYPE_swad__getNewPassword (75) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNewPassword(struct soap*, struct swad__getNewPassword *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNewPassword(struct soap*, const struct swad__getNewPassword *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNewPassword(struct soap*, const char*, int, const struct swad__getNewPassword *, const char*); +SOAP_FMAC3 struct swad__getNewPassword * SOAP_FMAC4 soap_in_swad__getNewPassword(struct soap*, const char*, struct swad__getNewPassword *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNewPassword(struct soap*, const struct swad__getNewPassword *, const char*, const char*); + +#ifndef soap_write_swad__getNewPassword +#define soap_write_swad__getNewPassword(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getNewPassword(soap, data),0) || soap_put_swad__getNewPassword(soap, data, "swad:getNewPassword", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNewPassword * SOAP_FMAC4 soap_get_swad__getNewPassword(struct soap*, struct swad__getNewPassword *, const char*, const char*); + +#ifndef soap_read_swad__getNewPassword +#define soap_read_swad__getNewPassword(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getNewPassword(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__loginBySessionKey +#define SOAP_TYPE_swad__loginBySessionKey (72) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginBySessionKey(struct soap*, struct swad__loginBySessionKey *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginBySessionKey(struct soap*, const struct swad__loginBySessionKey *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginBySessionKey(struct soap*, const char*, int, const struct swad__loginBySessionKey *, const char*); +SOAP_FMAC3 struct swad__loginBySessionKey * SOAP_FMAC4 soap_in_swad__loginBySessionKey(struct soap*, const char*, struct swad__loginBySessionKey *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginBySessionKey(struct soap*, const struct swad__loginBySessionKey *, const char*, const char*); + +#ifndef soap_write_swad__loginBySessionKey +#define soap_write_swad__loginBySessionKey(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__loginBySessionKey(soap, data),0) || soap_put_swad__loginBySessionKey(soap, data, "swad:loginBySessionKey", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginBySessionKey * SOAP_FMAC4 soap_get_swad__loginBySessionKey(struct soap*, struct swad__loginBySessionKey *, const char*, const char*); + +#ifndef soap_read_swad__loginBySessionKey +#define soap_read_swad__loginBySessionKey(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__loginBySessionKey(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__loginByUserPasswordKey +#define SOAP_TYPE_swad__loginByUserPasswordKey (69) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginByUserPasswordKey(struct soap*, struct swad__loginByUserPasswordKey *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginByUserPasswordKey(struct soap*, const struct swad__loginByUserPasswordKey *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginByUserPasswordKey(struct soap*, const char*, int, const struct swad__loginByUserPasswordKey *, const char*); +SOAP_FMAC3 struct swad__loginByUserPasswordKey * SOAP_FMAC4 soap_in_swad__loginByUserPasswordKey(struct soap*, const char*, struct swad__loginByUserPasswordKey *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginByUserPasswordKey(struct soap*, const struct swad__loginByUserPasswordKey *, const char*, const char*); + +#ifndef soap_write_swad__loginByUserPasswordKey +#define soap_write_swad__loginByUserPasswordKey(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__loginByUserPasswordKey(soap, data),0) || soap_put_swad__loginByUserPasswordKey(soap, data, "swad:loginByUserPasswordKey", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginByUserPasswordKey * SOAP_FMAC4 soap_get_swad__loginByUserPasswordKey(struct soap*, struct swad__loginByUserPasswordKey *, const char*, const char*); + +#ifndef soap_read_swad__loginByUserPasswordKey +#define soap_read_swad__loginByUserPasswordKey(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__loginByUserPasswordKey(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__createAccount +#define SOAP_TYPE_swad__createAccount (66) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__createAccount(struct soap*, struct swad__createAccount *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__createAccount(struct soap*, const struct swad__createAccount *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__createAccount(struct soap*, const char*, int, const struct swad__createAccount *, const char*); +SOAP_FMAC3 struct swad__createAccount * SOAP_FMAC4 soap_in_swad__createAccount(struct soap*, const char*, struct swad__createAccount *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__createAccount(struct soap*, const struct swad__createAccount *, const char*, const char*); + +#ifndef soap_write_swad__createAccount +#define soap_write_swad__createAccount(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__createAccount(soap, data),0) || soap_put_swad__createAccount(soap, data, "swad:createAccount", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__createAccount * SOAP_FMAC4 soap_get_swad__createAccount(struct soap*, struct swad__createAccount *, const char*, const char*); + +#ifndef soap_read_swad__createAccount +#define soap_read_swad__createAccount(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__createAccount(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendMessageOutput +#define SOAP_TYPE_swad__sendMessageOutput (63) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMessageOutput(struct soap*, struct swad__sendMessageOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMessageOutput(struct soap*, const struct swad__sendMessageOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMessageOutput(struct soap*, const char*, int, const struct swad__sendMessageOutput *, const char*); +SOAP_FMAC3 struct swad__sendMessageOutput * SOAP_FMAC4 soap_in_swad__sendMessageOutput(struct soap*, const char*, struct swad__sendMessageOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMessageOutput(struct soap*, const struct swad__sendMessageOutput *, const char*, const char*); + +#ifndef soap_write_swad__sendMessageOutput +#define soap_write_swad__sendMessageOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendMessageOutput(soap, data),0) || soap_put_swad__sendMessageOutput(soap, data, "swad:sendMessageOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMessageOutput * SOAP_FMAC4 soap_get_swad__sendMessageOutput(struct soap*, struct swad__sendMessageOutput *, const char*, const char*); + +#ifndef soap_read_swad__sendMessageOutput +#define soap_read_swad__sendMessageOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendMessageOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendNoticeOutput +#define SOAP_TYPE_swad__sendNoticeOutput (62) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendNoticeOutput(struct soap*, struct swad__sendNoticeOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendNoticeOutput(struct soap*, const struct swad__sendNoticeOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendNoticeOutput(struct soap*, const char*, int, const struct swad__sendNoticeOutput *, const char*); +SOAP_FMAC3 struct swad__sendNoticeOutput * SOAP_FMAC4 soap_in_swad__sendNoticeOutput(struct soap*, const char*, struct swad__sendNoticeOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendNoticeOutput(struct soap*, const struct swad__sendNoticeOutput *, const char*, const char*); + +#ifndef soap_write_swad__sendNoticeOutput +#define soap_write_swad__sendNoticeOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendNoticeOutput(soap, data),0) || soap_put_swad__sendNoticeOutput(soap, data, "swad:sendNoticeOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendNoticeOutput * SOAP_FMAC4 soap_get_swad__sendNoticeOutput(struct soap*, struct swad__sendNoticeOutput *, const char*, const char*); + +#ifndef soap_read_swad__sendNoticeOutput +#define soap_read_swad__sendNoticeOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendNoticeOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getMarksOutput +#define SOAP_TYPE_swad__getMarksOutput (61) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getMarksOutput(struct soap*, struct swad__getMarksOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getMarksOutput(struct soap*, const struct swad__getMarksOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getMarksOutput(struct soap*, const char*, int, const struct swad__getMarksOutput *, const char*); +SOAP_FMAC3 struct swad__getMarksOutput * SOAP_FMAC4 soap_in_swad__getMarksOutput(struct soap*, const char*, struct swad__getMarksOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getMarksOutput(struct soap*, const struct swad__getMarksOutput *, const char*, const char*); + +#ifndef soap_write_swad__getMarksOutput +#define soap_write_swad__getMarksOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getMarksOutput(soap, data),0) || soap_put_swad__getMarksOutput(soap, data, "swad:getMarksOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getMarksOutput * SOAP_FMAC4 soap_get_swad__getMarksOutput(struct soap*, struct swad__getMarksOutput *, const char*, const char*); + +#ifndef soap_read_swad__getMarksOutput +#define soap_read_swad__getMarksOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getMarksOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getFileOutput +#define SOAP_TYPE_swad__getFileOutput (60) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getFileOutput(struct soap*, struct swad__getFileOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getFileOutput(struct soap*, const struct swad__getFileOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getFileOutput(struct soap*, const char*, int, const struct swad__getFileOutput *, const char*); +SOAP_FMAC3 struct swad__getFileOutput * SOAP_FMAC4 soap_in_swad__getFileOutput(struct soap*, const char*, struct swad__getFileOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getFileOutput(struct soap*, const struct swad__getFileOutput *, const char*, const char*); + +#ifndef soap_write_swad__getFileOutput +#define soap_write_swad__getFileOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getFileOutput(soap, data),0) || soap_put_swad__getFileOutput(soap, data, "swad:getFileOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getFileOutput * SOAP_FMAC4 soap_get_swad__getFileOutput(struct soap*, struct swad__getFileOutput *, const char*, const char*); + +#ifndef soap_read_swad__getFileOutput +#define soap_read_swad__getFileOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getFileOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getDirectoryTreeOutput +#define SOAP_TYPE_swad__getDirectoryTreeOutput (59) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getDirectoryTreeOutput(struct soap*, struct swad__getDirectoryTreeOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getDirectoryTreeOutput(struct soap*, const struct swad__getDirectoryTreeOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getDirectoryTreeOutput(struct soap*, const char*, int, const struct swad__getDirectoryTreeOutput *, const char*); +SOAP_FMAC3 struct swad__getDirectoryTreeOutput * SOAP_FMAC4 soap_in_swad__getDirectoryTreeOutput(struct soap*, const char*, struct swad__getDirectoryTreeOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getDirectoryTreeOutput(struct soap*, const struct swad__getDirectoryTreeOutput *, const char*, const char*); + +#ifndef soap_write_swad__getDirectoryTreeOutput +#define soap_write_swad__getDirectoryTreeOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getDirectoryTreeOutput(soap, data),0) || soap_put_swad__getDirectoryTreeOutput(soap, data, "swad:getDirectoryTreeOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput * SOAP_FMAC4 soap_get_swad__getDirectoryTreeOutput(struct soap*, struct swad__getDirectoryTreeOutput *, const char*, const char*); + +#ifndef soap_read_swad__getDirectoryTreeOutput +#define soap_read_swad__getDirectoryTreeOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getDirectoryTreeOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendAttendanceUsersOutput +#define SOAP_TYPE_swad__sendAttendanceUsersOutput (58) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceUsersOutput(struct soap*, struct swad__sendAttendanceUsersOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceUsersOutput(struct soap*, const struct swad__sendAttendanceUsersOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceUsersOutput(struct soap*, const char*, int, const struct swad__sendAttendanceUsersOutput *, const char*); +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput * SOAP_FMAC4 soap_in_swad__sendAttendanceUsersOutput(struct soap*, const char*, struct swad__sendAttendanceUsersOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceUsersOutput(struct soap*, const struct swad__sendAttendanceUsersOutput *, const char*, const char*); + +#ifndef soap_write_swad__sendAttendanceUsersOutput +#define soap_write_swad__sendAttendanceUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendAttendanceUsersOutput(soap, data),0) || soap_put_swad__sendAttendanceUsersOutput(soap, data, "swad:sendAttendanceUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput * SOAP_FMAC4 soap_get_swad__sendAttendanceUsersOutput(struct soap*, struct swad__sendAttendanceUsersOutput *, const char*, const char*); + +#ifndef soap_read_swad__sendAttendanceUsersOutput +#define soap_read_swad__sendAttendanceUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendAttendanceUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getAttendanceUsersOutput +#define SOAP_TYPE_swad__getAttendanceUsersOutput (57) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceUsersOutput(struct soap*, struct swad__getAttendanceUsersOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceUsersOutput(struct soap*, const struct swad__getAttendanceUsersOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceUsersOutput(struct soap*, const char*, int, const struct swad__getAttendanceUsersOutput *, const char*); +SOAP_FMAC3 struct swad__getAttendanceUsersOutput * SOAP_FMAC4 soap_in_swad__getAttendanceUsersOutput(struct soap*, const char*, struct swad__getAttendanceUsersOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceUsersOutput(struct soap*, const struct swad__getAttendanceUsersOutput *, const char*, const char*); + +#ifndef soap_write_swad__getAttendanceUsersOutput +#define soap_write_swad__getAttendanceUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getAttendanceUsersOutput(soap, data),0) || soap_put_swad__getAttendanceUsersOutput(soap, data, "swad:getAttendanceUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput * SOAP_FMAC4 soap_get_swad__getAttendanceUsersOutput(struct soap*, struct swad__getAttendanceUsersOutput *, const char*, const char*); + +#ifndef soap_read_swad__getAttendanceUsersOutput +#define soap_read_swad__getAttendanceUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getAttendanceUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__attendanceUsersArray +#define SOAP_TYPE_swad__attendanceUsersArray (55) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceUsersArray(struct soap*, struct swad__attendanceUsersArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceUsersArray(struct soap*, struct swad__attendanceUsersArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceUsersArray(struct soap*, const char*, int, const struct swad__attendanceUsersArray *, const char*); +SOAP_FMAC3 struct swad__attendanceUsersArray * SOAP_FMAC4 soap_in_swad__attendanceUsersArray(struct soap*, const char*, struct swad__attendanceUsersArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceUsersArray(struct soap*, const struct swad__attendanceUsersArray *, const char*, const char*); + +#ifndef soap_write_swad__attendanceUsersArray +#define soap_write_swad__attendanceUsersArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__attendanceUsersArray(soap, data),0) || soap_put_swad__attendanceUsersArray(soap, data, "swad:attendanceUsersArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceUsersArray * SOAP_FMAC4 soap_get_swad__attendanceUsersArray(struct soap*, struct swad__attendanceUsersArray *, const char*, const char*); + +#ifndef soap_read_swad__attendanceUsersArray +#define soap_read_swad__attendanceUsersArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__attendanceUsersArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__attendanceUser +#define SOAP_TYPE_swad__attendanceUser (54) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceUser(struct soap*, struct swad__attendanceUser *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceUser(struct soap*, const struct swad__attendanceUser *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceUser(struct soap*, const char*, int, const struct swad__attendanceUser *, const char*); +SOAP_FMAC3 struct swad__attendanceUser * SOAP_FMAC4 soap_in_swad__attendanceUser(struct soap*, const char*, struct swad__attendanceUser *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceUser(struct soap*, const struct swad__attendanceUser *, const char*, const char*); + +#ifndef soap_write_swad__attendanceUser +#define soap_write_swad__attendanceUser(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__attendanceUser(soap, data),0) || soap_put_swad__attendanceUser(soap, data, "swad:attendanceUser", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceUser * SOAP_FMAC4 soap_get_swad__attendanceUser(struct soap*, struct swad__attendanceUser *, const char*, const char*); + +#ifndef soap_read_swad__attendanceUser +#define soap_read_swad__attendanceUser(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__attendanceUser(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendAttendanceEventOutput +#define SOAP_TYPE_swad__sendAttendanceEventOutput (53) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendAttendanceEventOutput(struct soap*, struct swad__sendAttendanceEventOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendAttendanceEventOutput(struct soap*, const struct swad__sendAttendanceEventOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendAttendanceEventOutput(struct soap*, const char*, int, const struct swad__sendAttendanceEventOutput *, const char*); +SOAP_FMAC3 struct swad__sendAttendanceEventOutput * SOAP_FMAC4 soap_in_swad__sendAttendanceEventOutput(struct soap*, const char*, struct swad__sendAttendanceEventOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendAttendanceEventOutput(struct soap*, const struct swad__sendAttendanceEventOutput *, const char*, const char*); + +#ifndef soap_write_swad__sendAttendanceEventOutput +#define soap_write_swad__sendAttendanceEventOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendAttendanceEventOutput(soap, data),0) || soap_put_swad__sendAttendanceEventOutput(soap, data, "swad:sendAttendanceEventOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput * SOAP_FMAC4 soap_get_swad__sendAttendanceEventOutput(struct soap*, struct swad__sendAttendanceEventOutput *, const char*, const char*); + +#ifndef soap_read_swad__sendAttendanceEventOutput +#define soap_read_swad__sendAttendanceEventOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendAttendanceEventOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getAttendanceEventsOutput +#define SOAP_TYPE_swad__getAttendanceEventsOutput (52) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getAttendanceEventsOutput(struct soap*, struct swad__getAttendanceEventsOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getAttendanceEventsOutput(struct soap*, const struct swad__getAttendanceEventsOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getAttendanceEventsOutput(struct soap*, const char*, int, const struct swad__getAttendanceEventsOutput *, const char*); +SOAP_FMAC3 struct swad__getAttendanceEventsOutput * SOAP_FMAC4 soap_in_swad__getAttendanceEventsOutput(struct soap*, const char*, struct swad__getAttendanceEventsOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getAttendanceEventsOutput(struct soap*, const struct swad__getAttendanceEventsOutput *, const char*, const char*); + +#ifndef soap_write_swad__getAttendanceEventsOutput +#define soap_write_swad__getAttendanceEventsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getAttendanceEventsOutput(soap, data),0) || soap_put_swad__getAttendanceEventsOutput(soap, data, "swad:getAttendanceEventsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput * SOAP_FMAC4 soap_get_swad__getAttendanceEventsOutput(struct soap*, struct swad__getAttendanceEventsOutput *, const char*, const char*); + +#ifndef soap_read_swad__getAttendanceEventsOutput +#define soap_read_swad__getAttendanceEventsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getAttendanceEventsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__attendanceEventsArray +#define SOAP_TYPE_swad__attendanceEventsArray (50) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceEventsArray(struct soap*, struct swad__attendanceEventsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceEventsArray(struct soap*, struct swad__attendanceEventsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceEventsArray(struct soap*, const char*, int, const struct swad__attendanceEventsArray *, const char*); +SOAP_FMAC3 struct swad__attendanceEventsArray * SOAP_FMAC4 soap_in_swad__attendanceEventsArray(struct soap*, const char*, struct swad__attendanceEventsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceEventsArray(struct soap*, const struct swad__attendanceEventsArray *, const char*, const char*); + +#ifndef soap_write_swad__attendanceEventsArray +#define soap_write_swad__attendanceEventsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__attendanceEventsArray(soap, data),0) || soap_put_swad__attendanceEventsArray(soap, data, "swad:attendanceEventsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceEventsArray * SOAP_FMAC4 soap_get_swad__attendanceEventsArray(struct soap*, struct swad__attendanceEventsArray *, const char*, const char*); + +#ifndef soap_read_swad__attendanceEventsArray +#define soap_read_swad__attendanceEventsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__attendanceEventsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__attendanceEvent +#define SOAP_TYPE_swad__attendanceEvent (49) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__attendanceEvent(struct soap*, struct swad__attendanceEvent *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__attendanceEvent(struct soap*, const struct swad__attendanceEvent *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__attendanceEvent(struct soap*, const char*, int, const struct swad__attendanceEvent *, const char*); +SOAP_FMAC3 struct swad__attendanceEvent * SOAP_FMAC4 soap_in_swad__attendanceEvent(struct soap*, const char*, struct swad__attendanceEvent *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__attendanceEvent(struct soap*, const struct swad__attendanceEvent *, const char*, const char*); + +#ifndef soap_write_swad__attendanceEvent +#define soap_write_swad__attendanceEvent(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__attendanceEvent(soap, data),0) || soap_put_swad__attendanceEvent(soap, data, "swad:attendanceEvent", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceEvent * SOAP_FMAC4 soap_get_swad__attendanceEvent(struct soap*, struct swad__attendanceEvent *, const char*, const char*); + +#ifndef soap_read_swad__attendanceEvent +#define soap_read_swad__attendanceEvent(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__attendanceEvent(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getUsersOutput +#define SOAP_TYPE_swad__getUsersOutput (48) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getUsersOutput(struct soap*, struct swad__getUsersOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getUsersOutput(struct soap*, const struct swad__getUsersOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getUsersOutput(struct soap*, const char*, int, const struct swad__getUsersOutput *, const char*); +SOAP_FMAC3 struct swad__getUsersOutput * SOAP_FMAC4 soap_in_swad__getUsersOutput(struct soap*, const char*, struct swad__getUsersOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getUsersOutput(struct soap*, const struct swad__getUsersOutput *, const char*, const char*); + +#ifndef soap_write_swad__getUsersOutput +#define soap_write_swad__getUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getUsersOutput(soap, data),0) || soap_put_swad__getUsersOutput(soap, data, "swad:getUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getUsersOutput * SOAP_FMAC4 soap_get_swad__getUsersOutput(struct soap*, struct swad__getUsersOutput *, const char*, const char*); + +#ifndef soap_read_swad__getUsersOutput +#define soap_read_swad__getUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__usersArray +#define SOAP_TYPE_swad__usersArray (46) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__usersArray(struct soap*, struct swad__usersArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__usersArray(struct soap*, struct swad__usersArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__usersArray(struct soap*, const char*, int, const struct swad__usersArray *, const char*); +SOAP_FMAC3 struct swad__usersArray * SOAP_FMAC4 soap_in_swad__usersArray(struct soap*, const char*, struct swad__usersArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__usersArray(struct soap*, const struct swad__usersArray *, const char*, const char*); + +#ifndef soap_write_swad__usersArray +#define soap_write_swad__usersArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__usersArray(soap, data),0) || soap_put_swad__usersArray(soap, data, "swad:usersArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__usersArray * SOAP_FMAC4 soap_get_swad__usersArray(struct soap*, struct swad__usersArray *, const char*, const char*); + +#ifndef soap_read_swad__usersArray +#define soap_read_swad__usersArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__usersArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__user +#define SOAP_TYPE_swad__user (45) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__user(struct soap*, struct swad__user *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__user(struct soap*, const struct swad__user *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__user(struct soap*, const char*, int, const struct swad__user *, const char*); +SOAP_FMAC3 struct swad__user * SOAP_FMAC4 soap_in_swad__user(struct soap*, const char*, struct swad__user *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__user(struct soap*, const struct swad__user *, const char*, const char*); + +#ifndef soap_write_swad__user +#define soap_write_swad__user(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__user(soap, data),0) || soap_put_swad__user(soap, data, "swad:user", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__user * SOAP_FMAC4 soap_get_swad__user(struct soap*, struct swad__user *, const char*, const char*); + +#ifndef soap_read_swad__user +#define soap_read_swad__user(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__user(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getTestsOutput +#define SOAP_TYPE_swad__getTestsOutput (44) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestsOutput(struct soap*, struct swad__getTestsOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestsOutput(struct soap*, const struct swad__getTestsOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestsOutput(struct soap*, const char*, int, const struct swad__getTestsOutput *, const char*); +SOAP_FMAC3 struct swad__getTestsOutput * SOAP_FMAC4 soap_in_swad__getTestsOutput(struct soap*, const char*, struct swad__getTestsOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestsOutput(struct soap*, const struct swad__getTestsOutput *, const char*, const char*); + +#ifndef soap_write_swad__getTestsOutput +#define soap_write_swad__getTestsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getTestsOutput(soap, data),0) || soap_put_swad__getTestsOutput(soap, data, "swad:getTestsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTestsOutput * SOAP_FMAC4 soap_get_swad__getTestsOutput(struct soap*, struct swad__getTestsOutput *, const char*, const char*); + +#ifndef soap_read_swad__getTestsOutput +#define soap_read_swad__getTestsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getTestsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__questionTagsArray +#define SOAP_TYPE_swad__questionTagsArray (42) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionTagsArray(struct soap*, struct swad__questionTagsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionTagsArray(struct soap*, struct swad__questionTagsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionTagsArray(struct soap*, const char*, int, const struct swad__questionTagsArray *, const char*); +SOAP_FMAC3 struct swad__questionTagsArray * SOAP_FMAC4 soap_in_swad__questionTagsArray(struct soap*, const char*, struct swad__questionTagsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionTagsArray(struct soap*, const struct swad__questionTagsArray *, const char*, const char*); + +#ifndef soap_write_swad__questionTagsArray +#define soap_write_swad__questionTagsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__questionTagsArray(soap, data),0) || soap_put_swad__questionTagsArray(soap, data, "swad:questionTagsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__questionTagsArray * SOAP_FMAC4 soap_get_swad__questionTagsArray(struct soap*, struct swad__questionTagsArray *, const char*, const char*); + +#ifndef soap_read_swad__questionTagsArray +#define soap_read_swad__questionTagsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__questionTagsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__questionTag +#define SOAP_TYPE_swad__questionTag (41) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionTag(struct soap*, struct swad__questionTag *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionTag(struct soap*, const struct swad__questionTag *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionTag(struct soap*, const char*, int, const struct swad__questionTag *, const char*); +SOAP_FMAC3 struct swad__questionTag * SOAP_FMAC4 soap_in_swad__questionTag(struct soap*, const char*, struct swad__questionTag *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionTag(struct soap*, const struct swad__questionTag *, const char*, const char*); + +#ifndef soap_write_swad__questionTag +#define soap_write_swad__questionTag(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__questionTag(soap, data),0) || soap_put_swad__questionTag(soap, data, "swad:questionTag", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__questionTag * SOAP_FMAC4 soap_get_swad__questionTag(struct soap*, struct swad__questionTag *, const char*, const char*); + +#ifndef soap_read_swad__questionTag +#define soap_read_swad__questionTag(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__questionTag(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__answersArray +#define SOAP_TYPE_swad__answersArray (39) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__answersArray(struct soap*, struct swad__answersArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__answersArray(struct soap*, struct swad__answersArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__answersArray(struct soap*, const char*, int, const struct swad__answersArray *, const char*); +SOAP_FMAC3 struct swad__answersArray * SOAP_FMAC4 soap_in_swad__answersArray(struct soap*, const char*, struct swad__answersArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__answersArray(struct soap*, const struct swad__answersArray *, const char*, const char*); + +#ifndef soap_write_swad__answersArray +#define soap_write_swad__answersArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__answersArray(soap, data),0) || soap_put_swad__answersArray(soap, data, "swad:answersArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__answersArray * SOAP_FMAC4 soap_get_swad__answersArray(struct soap*, struct swad__answersArray *, const char*, const char*); + +#ifndef soap_read_swad__answersArray +#define soap_read_swad__answersArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__answersArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__answer +#define SOAP_TYPE_swad__answer (38) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__answer(struct soap*, struct swad__answer *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__answer(struct soap*, const struct swad__answer *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__answer(struct soap*, const char*, int, const struct swad__answer *, const char*); +SOAP_FMAC3 struct swad__answer * SOAP_FMAC4 soap_in_swad__answer(struct soap*, const char*, struct swad__answer *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__answer(struct soap*, const struct swad__answer *, const char*, const char*); + +#ifndef soap_write_swad__answer +#define soap_write_swad__answer(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__answer(soap, data),0) || soap_put_swad__answer(soap, data, "swad:answer", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__answer * SOAP_FMAC4 soap_get_swad__answer(struct soap*, struct swad__answer *, const char*, const char*); + +#ifndef soap_read_swad__answer +#define soap_read_swad__answer(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__answer(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__questionsArray +#define SOAP_TYPE_swad__questionsArray (36) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__questionsArray(struct soap*, struct swad__questionsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__questionsArray(struct soap*, struct swad__questionsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__questionsArray(struct soap*, const char*, int, const struct swad__questionsArray *, const char*); +SOAP_FMAC3 struct swad__questionsArray * SOAP_FMAC4 soap_in_swad__questionsArray(struct soap*, const char*, struct swad__questionsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__questionsArray(struct soap*, const struct swad__questionsArray *, const char*, const char*); + +#ifndef soap_write_swad__questionsArray +#define soap_write_swad__questionsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__questionsArray(soap, data),0) || soap_put_swad__questionsArray(soap, data, "swad:questionsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__questionsArray * SOAP_FMAC4 soap_get_swad__questionsArray(struct soap*, struct swad__questionsArray *, const char*, const char*); + +#ifndef soap_read_swad__questionsArray +#define soap_read_swad__questionsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__questionsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__question +#define SOAP_TYPE_swad__question (35) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__question(struct soap*, struct swad__question *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__question(struct soap*, const struct swad__question *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__question(struct soap*, const char*, int, const struct swad__question *, const char*); +SOAP_FMAC3 struct swad__question * SOAP_FMAC4 soap_in_swad__question(struct soap*, const char*, struct swad__question *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__question(struct soap*, const struct swad__question *, const char*, const char*); + +#ifndef soap_write_swad__question +#define soap_write_swad__question(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__question(soap, data),0) || soap_put_swad__question(soap, data, "swad:question", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__question * SOAP_FMAC4 soap_get_swad__question(struct soap*, struct swad__question *, const char*, const char*); + +#ifndef soap_read_swad__question +#define soap_read_swad__question(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__question(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__tagsArray +#define SOAP_TYPE_swad__tagsArray (33) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__tagsArray(struct soap*, struct swad__tagsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__tagsArray(struct soap*, struct swad__tagsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__tagsArray(struct soap*, const char*, int, const struct swad__tagsArray *, const char*); +SOAP_FMAC3 struct swad__tagsArray * SOAP_FMAC4 soap_in_swad__tagsArray(struct soap*, const char*, struct swad__tagsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__tagsArray(struct soap*, const struct swad__tagsArray *, const char*, const char*); + +#ifndef soap_write_swad__tagsArray +#define soap_write_swad__tagsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__tagsArray(soap, data),0) || soap_put_swad__tagsArray(soap, data, "swad:tagsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__tagsArray * SOAP_FMAC4 soap_get_swad__tagsArray(struct soap*, struct swad__tagsArray *, const char*, const char*); + +#ifndef soap_read_swad__tagsArray +#define soap_read_swad__tagsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__tagsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__tag +#define SOAP_TYPE_swad__tag (32) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__tag(struct soap*, struct swad__tag *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__tag(struct soap*, const struct swad__tag *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__tag(struct soap*, const char*, int, const struct swad__tag *, const char*); +SOAP_FMAC3 struct swad__tag * SOAP_FMAC4 soap_in_swad__tag(struct soap*, const char*, struct swad__tag *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__tag(struct soap*, const struct swad__tag *, const char*, const char*); + +#ifndef soap_write_swad__tag +#define soap_write_swad__tag(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__tag(soap, data),0) || soap_put_swad__tag(soap, data, "swad:tag", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__tag * SOAP_FMAC4 soap_get_swad__tag(struct soap*, struct swad__tag *, const char*, const char*); + +#ifndef soap_read_swad__tag +#define soap_read_swad__tag(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__tag(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getTestConfigOutput +#define SOAP_TYPE_swad__getTestConfigOutput (31) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getTestConfigOutput(struct soap*, struct swad__getTestConfigOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getTestConfigOutput(struct soap*, const struct swad__getTestConfigOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getTestConfigOutput(struct soap*, const char*, int, const struct swad__getTestConfigOutput *, const char*); +SOAP_FMAC3 struct swad__getTestConfigOutput * SOAP_FMAC4 soap_in_swad__getTestConfigOutput(struct soap*, const char*, struct swad__getTestConfigOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getTestConfigOutput(struct soap*, const struct swad__getTestConfigOutput *, const char*, const char*); + +#ifndef soap_write_swad__getTestConfigOutput +#define soap_write_swad__getTestConfigOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getTestConfigOutput(soap, data),0) || soap_put_swad__getTestConfigOutput(soap, data, "swad:getTestConfigOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTestConfigOutput * SOAP_FMAC4 soap_get_swad__getTestConfigOutput(struct soap*, struct swad__getTestConfigOutput *, const char*, const char*); + +#ifndef soap_read_swad__getTestConfigOutput +#define soap_read_swad__getTestConfigOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getTestConfigOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__markNotificationsAsReadOutput +#define SOAP_TYPE_swad__markNotificationsAsReadOutput (30) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__markNotificationsAsReadOutput(struct soap*, struct swad__markNotificationsAsReadOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__markNotificationsAsReadOutput(struct soap*, const struct swad__markNotificationsAsReadOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__markNotificationsAsReadOutput(struct soap*, const char*, int, const struct swad__markNotificationsAsReadOutput *, const char*); +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput * SOAP_FMAC4 soap_in_swad__markNotificationsAsReadOutput(struct soap*, const char*, struct swad__markNotificationsAsReadOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__markNotificationsAsReadOutput(struct soap*, const struct swad__markNotificationsAsReadOutput *, const char*, const char*); + +#ifndef soap_write_swad__markNotificationsAsReadOutput +#define soap_write_swad__markNotificationsAsReadOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__markNotificationsAsReadOutput(soap, data),0) || soap_put_swad__markNotificationsAsReadOutput(soap, data, "swad:markNotificationsAsReadOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput * SOAP_FMAC4 soap_get_swad__markNotificationsAsReadOutput(struct soap*, struct swad__markNotificationsAsReadOutput *, const char*, const char*); + +#ifndef soap_read_swad__markNotificationsAsReadOutput +#define soap_read_swad__markNotificationsAsReadOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__markNotificationsAsReadOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getNotificationsOutput +#define SOAP_TYPE_swad__getNotificationsOutput (29) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNotificationsOutput(struct soap*, struct swad__getNotificationsOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNotificationsOutput(struct soap*, const struct swad__getNotificationsOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNotificationsOutput(struct soap*, const char*, int, const struct swad__getNotificationsOutput *, const char*); +SOAP_FMAC3 struct swad__getNotificationsOutput * SOAP_FMAC4 soap_in_swad__getNotificationsOutput(struct soap*, const char*, struct swad__getNotificationsOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNotificationsOutput(struct soap*, const struct swad__getNotificationsOutput *, const char*, const char*); + +#ifndef soap_write_swad__getNotificationsOutput +#define soap_write_swad__getNotificationsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getNotificationsOutput(soap, data),0) || soap_put_swad__getNotificationsOutput(soap, data, "swad:getNotificationsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNotificationsOutput * SOAP_FMAC4 soap_get_swad__getNotificationsOutput(struct soap*, struct swad__getNotificationsOutput *, const char*, const char*); + +#ifndef soap_read_swad__getNotificationsOutput +#define soap_read_swad__getNotificationsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getNotificationsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__notificationsArray +#define SOAP_TYPE_swad__notificationsArray (27) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__notificationsArray(struct soap*, struct swad__notificationsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__notificationsArray(struct soap*, struct swad__notificationsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__notificationsArray(struct soap*, const char*, int, const struct swad__notificationsArray *, const char*); +SOAP_FMAC3 struct swad__notificationsArray * SOAP_FMAC4 soap_in_swad__notificationsArray(struct soap*, const char*, struct swad__notificationsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__notificationsArray(struct soap*, const struct swad__notificationsArray *, const char*, const char*); + +#ifndef soap_write_swad__notificationsArray +#define soap_write_swad__notificationsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__notificationsArray(soap, data),0) || soap_put_swad__notificationsArray(soap, data, "swad:notificationsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__notificationsArray * SOAP_FMAC4 soap_get_swad__notificationsArray(struct soap*, struct swad__notificationsArray *, const char*, const char*); + +#ifndef soap_read_swad__notificationsArray +#define soap_read_swad__notificationsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__notificationsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__notification +#define SOAP_TYPE_swad__notification (26) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__notification(struct soap*, struct swad__notification *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__notification(struct soap*, const struct swad__notification *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__notification(struct soap*, const char*, int, const struct swad__notification *, const char*); +SOAP_FMAC3 struct swad__notification * SOAP_FMAC4 soap_in_swad__notification(struct soap*, const char*, struct swad__notification *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__notification(struct soap*, const struct swad__notification *, const char*, const char*); + +#ifndef soap_write_swad__notification +#define soap_write_swad__notification(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__notification(soap, data),0) || soap_put_swad__notification(soap, data, "swad:notification", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__notification * SOAP_FMAC4 soap_get_swad__notification(struct soap*, struct swad__notification *, const char*, const char*); + +#ifndef soap_read_swad__notification +#define soap_read_swad__notification(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__notification(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__sendMyGroupsOutput +#define SOAP_TYPE_swad__sendMyGroupsOutput (25) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__sendMyGroupsOutput(struct soap*, struct swad__sendMyGroupsOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__sendMyGroupsOutput(struct soap*, const struct swad__sendMyGroupsOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__sendMyGroupsOutput(struct soap*, const char*, int, const struct swad__sendMyGroupsOutput *, const char*); +SOAP_FMAC3 struct swad__sendMyGroupsOutput * SOAP_FMAC4 soap_in_swad__sendMyGroupsOutput(struct soap*, const char*, struct swad__sendMyGroupsOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__sendMyGroupsOutput(struct soap*, const struct swad__sendMyGroupsOutput *, const char*, const char*); + +#ifndef soap_write_swad__sendMyGroupsOutput +#define soap_write_swad__sendMyGroupsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__sendMyGroupsOutput(soap, data),0) || soap_put_swad__sendMyGroupsOutput(soap, data, "swad:sendMyGroupsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMyGroupsOutput * SOAP_FMAC4 soap_get_swad__sendMyGroupsOutput(struct soap*, struct swad__sendMyGroupsOutput *, const char*, const char*); + +#ifndef soap_read_swad__sendMyGroupsOutput +#define soap_read_swad__sendMyGroupsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__sendMyGroupsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getGroupsOutput +#define SOAP_TYPE_swad__getGroupsOutput (24) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupsOutput(struct soap*, struct swad__getGroupsOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupsOutput(struct soap*, const struct swad__getGroupsOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupsOutput(struct soap*, const char*, int, const struct swad__getGroupsOutput *, const char*); +SOAP_FMAC3 struct swad__getGroupsOutput * SOAP_FMAC4 soap_in_swad__getGroupsOutput(struct soap*, const char*, struct swad__getGroupsOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupsOutput(struct soap*, const struct swad__getGroupsOutput *, const char*, const char*); + +#ifndef soap_write_swad__getGroupsOutput +#define soap_write_swad__getGroupsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getGroupsOutput(soap, data),0) || soap_put_swad__getGroupsOutput(soap, data, "swad:getGroupsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroupsOutput * SOAP_FMAC4 soap_get_swad__getGroupsOutput(struct soap*, struct swad__getGroupsOutput *, const char*, const char*); + +#ifndef soap_read_swad__getGroupsOutput +#define soap_read_swad__getGroupsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getGroupsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__groupsArray +#define SOAP_TYPE_swad__groupsArray (22) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupsArray(struct soap*, struct swad__groupsArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupsArray(struct soap*, struct swad__groupsArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupsArray(struct soap*, const char*, int, const struct swad__groupsArray *, const char*); +SOAP_FMAC3 struct swad__groupsArray * SOAP_FMAC4 soap_in_swad__groupsArray(struct soap*, const char*, struct swad__groupsArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupsArray(struct soap*, const struct swad__groupsArray *, const char*, const char*); + +#ifndef soap_write_swad__groupsArray +#define soap_write_swad__groupsArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__groupsArray(soap, data),0) || soap_put_swad__groupsArray(soap, data, "swad:groupsArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__groupsArray * SOAP_FMAC4 soap_get_swad__groupsArray(struct soap*, struct swad__groupsArray *, const char*, const char*); + +#ifndef soap_read_swad__groupsArray +#define soap_read_swad__groupsArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__groupsArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__group +#define SOAP_TYPE_swad__group (21) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__group(struct soap*, struct swad__group *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__group(struct soap*, const struct swad__group *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__group(struct soap*, const char*, int, const struct swad__group *, const char*); +SOAP_FMAC3 struct swad__group * SOAP_FMAC4 soap_in_swad__group(struct soap*, const char*, struct swad__group *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__group(struct soap*, const struct swad__group *, const char*, const char*); + +#ifndef soap_write_swad__group +#define soap_write_swad__group(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__group(soap, data),0) || soap_put_swad__group(soap, data, "swad:group", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__group * SOAP_FMAC4 soap_get_swad__group(struct soap*, struct swad__group *, const char*, const char*); + +#ifndef soap_read_swad__group +#define soap_read_swad__group(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__group(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getGroupTypesOutput +#define SOAP_TYPE_swad__getGroupTypesOutput (20) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getGroupTypesOutput(struct soap*, struct swad__getGroupTypesOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getGroupTypesOutput(struct soap*, const struct swad__getGroupTypesOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getGroupTypesOutput(struct soap*, const char*, int, const struct swad__getGroupTypesOutput *, const char*); +SOAP_FMAC3 struct swad__getGroupTypesOutput * SOAP_FMAC4 soap_in_swad__getGroupTypesOutput(struct soap*, const char*, struct swad__getGroupTypesOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getGroupTypesOutput(struct soap*, const struct swad__getGroupTypesOutput *, const char*, const char*); + +#ifndef soap_write_swad__getGroupTypesOutput +#define soap_write_swad__getGroupTypesOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getGroupTypesOutput(soap, data),0) || soap_put_swad__getGroupTypesOutput(soap, data, "swad:getGroupTypesOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroupTypesOutput * SOAP_FMAC4 soap_get_swad__getGroupTypesOutput(struct soap*, struct swad__getGroupTypesOutput *, const char*, const char*); + +#ifndef soap_read_swad__getGroupTypesOutput +#define soap_read_swad__getGroupTypesOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getGroupTypesOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__groupTypesArray +#define SOAP_TYPE_swad__groupTypesArray (18) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupTypesArray(struct soap*, struct swad__groupTypesArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupTypesArray(struct soap*, struct swad__groupTypesArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupTypesArray(struct soap*, const char*, int, const struct swad__groupTypesArray *, const char*); +SOAP_FMAC3 struct swad__groupTypesArray * SOAP_FMAC4 soap_in_swad__groupTypesArray(struct soap*, const char*, struct swad__groupTypesArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupTypesArray(struct soap*, const struct swad__groupTypesArray *, const char*, const char*); + +#ifndef soap_write_swad__groupTypesArray +#define soap_write_swad__groupTypesArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__groupTypesArray(soap, data),0) || soap_put_swad__groupTypesArray(soap, data, "swad:groupTypesArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__groupTypesArray * SOAP_FMAC4 soap_get_swad__groupTypesArray(struct soap*, struct swad__groupTypesArray *, const char*, const char*); + +#ifndef soap_read_swad__groupTypesArray +#define soap_read_swad__groupTypesArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__groupTypesArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__groupType +#define SOAP_TYPE_swad__groupType (16) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__groupType(struct soap*, struct swad__groupType *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__groupType(struct soap*, const struct swad__groupType *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__groupType(struct soap*, const char*, int, const struct swad__groupType *, const char*); +SOAP_FMAC3 struct swad__groupType * SOAP_FMAC4 soap_in_swad__groupType(struct soap*, const char*, struct swad__groupType *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__groupType(struct soap*, const struct swad__groupType *, const char*, const char*); + +#ifndef soap_write_swad__groupType +#define soap_write_swad__groupType(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__groupType(soap, data),0) || soap_put_swad__groupType(soap, data, "swad:groupType", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__groupType * SOAP_FMAC4 soap_get_swad__groupType(struct soap*, struct swad__groupType *, const char*, const char*); + +#ifndef soap_read_swad__groupType +#define soap_read_swad__groupType(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__groupType(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getCourseInfoOutput +#define SOAP_TYPE_swad__getCourseInfoOutput (15) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCourseInfoOutput(struct soap*, struct swad__getCourseInfoOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCourseInfoOutput(struct soap*, const struct swad__getCourseInfoOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCourseInfoOutput(struct soap*, const char*, int, const struct swad__getCourseInfoOutput *, const char*); +SOAP_FMAC3 struct swad__getCourseInfoOutput * SOAP_FMAC4 soap_in_swad__getCourseInfoOutput(struct soap*, const char*, struct swad__getCourseInfoOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCourseInfoOutput(struct soap*, const struct swad__getCourseInfoOutput *, const char*, const char*); + +#ifndef soap_write_swad__getCourseInfoOutput +#define soap_write_swad__getCourseInfoOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getCourseInfoOutput(soap, data),0) || soap_put_swad__getCourseInfoOutput(soap, data, "swad:getCourseInfoOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCourseInfoOutput * SOAP_FMAC4 soap_get_swad__getCourseInfoOutput(struct soap*, struct swad__getCourseInfoOutput *, const char*, const char*); + +#ifndef soap_read_swad__getCourseInfoOutput +#define soap_read_swad__getCourseInfoOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getCourseInfoOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getCoursesOutput +#define SOAP_TYPE_swad__getCoursesOutput (14) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getCoursesOutput(struct soap*, struct swad__getCoursesOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getCoursesOutput(struct soap*, const struct swad__getCoursesOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getCoursesOutput(struct soap*, const char*, int, const struct swad__getCoursesOutput *, const char*); +SOAP_FMAC3 struct swad__getCoursesOutput * SOAP_FMAC4 soap_in_swad__getCoursesOutput(struct soap*, const char*, struct swad__getCoursesOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getCoursesOutput(struct soap*, const struct swad__getCoursesOutput *, const char*, const char*); + +#ifndef soap_write_swad__getCoursesOutput +#define soap_write_swad__getCoursesOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getCoursesOutput(soap, data),0) || soap_put_swad__getCoursesOutput(soap, data, "swad:getCoursesOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCoursesOutput * SOAP_FMAC4 soap_get_swad__getCoursesOutput(struct soap*, struct swad__getCoursesOutput *, const char*, const char*); + +#ifndef soap_read_swad__getCoursesOutput +#define soap_read_swad__getCoursesOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getCoursesOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__coursesArray +#define SOAP_TYPE_swad__coursesArray (12) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__coursesArray(struct soap*, struct swad__coursesArray *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__coursesArray(struct soap*, struct swad__coursesArray const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__coursesArray(struct soap*, const char*, int, const struct swad__coursesArray *, const char*); +SOAP_FMAC3 struct swad__coursesArray * SOAP_FMAC4 soap_in_swad__coursesArray(struct soap*, const char*, struct swad__coursesArray *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__coursesArray(struct soap*, const struct swad__coursesArray *, const char*, const char*); + +#ifndef soap_write_swad__coursesArray +#define soap_write_swad__coursesArray(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__coursesArray(soap, data),0) || soap_put_swad__coursesArray(soap, data, "swad:coursesArray", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__coursesArray * SOAP_FMAC4 soap_get_swad__coursesArray(struct soap*, struct swad__coursesArray *, const char*, const char*); + +#ifndef soap_read_swad__coursesArray +#define soap_read_swad__coursesArray(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__coursesArray(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__course +#define SOAP_TYPE_swad__course (11) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__course(struct soap*, struct swad__course *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__course(struct soap*, const struct swad__course *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__course(struct soap*, const char*, int, const struct swad__course *, const char*); +SOAP_FMAC3 struct swad__course * SOAP_FMAC4 soap_in_swad__course(struct soap*, const char*, struct swad__course *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__course(struct soap*, const struct swad__course *, const char*, const char*); + +#ifndef soap_write_swad__course +#define soap_write_swad__course(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__course(soap, data),0) || soap_put_swad__course(soap, data, "swad:course", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__course * SOAP_FMAC4 soap_get_swad__course(struct soap*, struct swad__course *, const char*, const char*); + +#ifndef soap_read_swad__course +#define soap_read_swad__course(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__course(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__getNewPasswordOutput +#define SOAP_TYPE_swad__getNewPasswordOutput (10) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__getNewPasswordOutput(struct soap*, struct swad__getNewPasswordOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__getNewPasswordOutput(struct soap*, const struct swad__getNewPasswordOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__getNewPasswordOutput(struct soap*, const char*, int, const struct swad__getNewPasswordOutput *, const char*); +SOAP_FMAC3 struct swad__getNewPasswordOutput * SOAP_FMAC4 soap_in_swad__getNewPasswordOutput(struct soap*, const char*, struct swad__getNewPasswordOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__getNewPasswordOutput(struct soap*, const struct swad__getNewPasswordOutput *, const char*, const char*); + +#ifndef soap_write_swad__getNewPasswordOutput +#define soap_write_swad__getNewPasswordOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__getNewPasswordOutput(soap, data),0) || soap_put_swad__getNewPasswordOutput(soap, data, "swad:getNewPasswordOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNewPasswordOutput * SOAP_FMAC4 soap_get_swad__getNewPasswordOutput(struct soap*, struct swad__getNewPasswordOutput *, const char*, const char*); + +#ifndef soap_read_swad__getNewPasswordOutput +#define soap_read_swad__getNewPasswordOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__getNewPasswordOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__loginByUserPasswordKeyOutput +#define SOAP_TYPE_swad__loginByUserPasswordKeyOutput (9) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginByUserPasswordKeyOutput(struct soap*, struct swad__loginByUserPasswordKeyOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginByUserPasswordKeyOutput(struct soap*, const struct swad__loginByUserPasswordKeyOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginByUserPasswordKeyOutput(struct soap*, const char*, int, const struct swad__loginByUserPasswordKeyOutput *, const char*); +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput * SOAP_FMAC4 soap_in_swad__loginByUserPasswordKeyOutput(struct soap*, const char*, struct swad__loginByUserPasswordKeyOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginByUserPasswordKeyOutput(struct soap*, const struct swad__loginByUserPasswordKeyOutput *, const char*, const char*); + +#ifndef soap_write_swad__loginByUserPasswordKeyOutput +#define soap_write_swad__loginByUserPasswordKeyOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__loginByUserPasswordKeyOutput(soap, data),0) || soap_put_swad__loginByUserPasswordKeyOutput(soap, data, "swad:loginByUserPasswordKeyOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput * SOAP_FMAC4 soap_get_swad__loginByUserPasswordKeyOutput(struct soap*, struct swad__loginByUserPasswordKeyOutput *, const char*, const char*); + +#ifndef soap_read_swad__loginByUserPasswordKeyOutput +#define soap_read_swad__loginByUserPasswordKeyOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__loginByUserPasswordKeyOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__loginBySessionKeyOutput +#define SOAP_TYPE_swad__loginBySessionKeyOutput (8) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__loginBySessionKeyOutput(struct soap*, struct swad__loginBySessionKeyOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__loginBySessionKeyOutput(struct soap*, const struct swad__loginBySessionKeyOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__loginBySessionKeyOutput(struct soap*, const char*, int, const struct swad__loginBySessionKeyOutput *, const char*); +SOAP_FMAC3 struct swad__loginBySessionKeyOutput * SOAP_FMAC4 soap_in_swad__loginBySessionKeyOutput(struct soap*, const char*, struct swad__loginBySessionKeyOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__loginBySessionKeyOutput(struct soap*, const struct swad__loginBySessionKeyOutput *, const char*, const char*); + +#ifndef soap_write_swad__loginBySessionKeyOutput +#define soap_write_swad__loginBySessionKeyOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__loginBySessionKeyOutput(soap, data),0) || soap_put_swad__loginBySessionKeyOutput(soap, data, "swad:loginBySessionKeyOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput * SOAP_FMAC4 soap_get_swad__loginBySessionKeyOutput(struct soap*, struct swad__loginBySessionKeyOutput *, const char*, const char*); + +#ifndef soap_read_swad__loginBySessionKeyOutput +#define soap_read_swad__loginBySessionKeyOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__loginBySessionKeyOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_swad__createAccountOutput +#define SOAP_TYPE_swad__createAccountOutput (7) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_swad__createAccountOutput(struct soap*, struct swad__createAccountOutput *); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_swad__createAccountOutput(struct soap*, const struct swad__createAccountOutput *); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_swad__createAccountOutput(struct soap*, const char*, int, const struct swad__createAccountOutput *, const char*); +SOAP_FMAC3 struct swad__createAccountOutput * SOAP_FMAC4 soap_in_swad__createAccountOutput(struct soap*, const char*, struct swad__createAccountOutput *, const char*); + +SOAP_FMAC3 int SOAP_FMAC4 soap_put_swad__createAccountOutput(struct soap*, const struct swad__createAccountOutput *, const char*, const char*); + +#ifndef soap_write_swad__createAccountOutput +#define soap_write_swad__createAccountOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_swad__createAccountOutput(soap, data),0) || soap_put_swad__createAccountOutput(soap, data, "swad:createAccountOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__createAccountOutput * SOAP_FMAC4 soap_get_swad__createAccountOutput(struct soap*, struct swad__createAccountOutput *, const char*, const char*); + +#ifndef soap_read_swad__createAccountOutput +#define soap_read_swad__createAccountOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_swad__createAccountOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_PointerToSOAP_ENV__Reason +#define SOAP_TYPE_PointerToSOAP_ENV__Reason (142) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap*, const char *, int, struct SOAP_ENV__Reason *const*, const char *); +SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap*, const char*, struct SOAP_ENV__Reason **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason *const*, const char*, const char*); + +#ifndef soap_write_PointerToSOAP_ENV__Reason +#define soap_write_PointerToSOAP_ENV__Reason(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToSOAP_ENV__Reason(soap, data),0) || soap_put_PointerToSOAP_ENV__Reason(soap, data, "SOAP-ENV:Reason", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap*, struct SOAP_ENV__Reason **, const char*, const char*); + +#ifndef soap_read_PointerToSOAP_ENV__Reason +#define soap_read_PointerToSOAP_ENV__Reason(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToSOAP_ENV__Reason(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_PointerToSOAP_ENV__Detail +#define SOAP_TYPE_PointerToSOAP_ENV__Detail (141) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap*, const char *, int, struct SOAP_ENV__Detail *const*, const char *); +SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap*, const char*, struct SOAP_ENV__Detail **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail *const*, const char*, const char*); + +#ifndef soap_write_PointerToSOAP_ENV__Detail +#define soap_write_PointerToSOAP_ENV__Detail(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToSOAP_ENV__Detail(soap, data),0) || soap_put_PointerToSOAP_ENV__Detail(soap, data, "SOAP-ENV:Detail", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap*, struct SOAP_ENV__Detail **, const char*, const char*); + +#ifndef soap_read_PointerToSOAP_ENV__Detail +#define soap_read_PointerToSOAP_ENV__Detail(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToSOAP_ENV__Detail(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_PointerToSOAP_ENV__Code +#define SOAP_TYPE_PointerToSOAP_ENV__Code (135) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap*, const char *, int, struct SOAP_ENV__Code *const*, const char *); +SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap*, const char*, struct SOAP_ENV__Code **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code *const*, const char*, const char*); + +#ifndef soap_write_PointerToSOAP_ENV__Code +#define soap_write_PointerToSOAP_ENV__Code(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToSOAP_ENV__Code(soap, data),0) || soap_put_PointerToSOAP_ENV__Code(soap, data, "SOAP-ENV:Code", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap*, struct SOAP_ENV__Code **, const char*, const char*); + +#ifndef soap_read_PointerToSOAP_ENV__Code +#define soap_read_PointerToSOAP_ENV__Code(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToSOAP_ENV__Code(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#endif + +#ifndef SOAP_TYPE_PointerToswad__sendMessageOutput +#define SOAP_TYPE_PointerToswad__sendMessageOutput (130) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendMessageOutput(struct soap*, struct swad__sendMessageOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendMessageOutput(struct soap*, const char *, int, struct swad__sendMessageOutput *const*, const char *); +SOAP_FMAC3 struct swad__sendMessageOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendMessageOutput(struct soap*, const char*, struct swad__sendMessageOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendMessageOutput(struct soap*, struct swad__sendMessageOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__sendMessageOutput +#define soap_write_PointerToswad__sendMessageOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__sendMessageOutput(soap, data),0) || soap_put_PointerToswad__sendMessageOutput(soap, data, "swad:sendMessageOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMessageOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendMessageOutput(struct soap*, struct swad__sendMessageOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__sendMessageOutput +#define soap_read_PointerToswad__sendMessageOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__sendMessageOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__sendNoticeOutput +#define SOAP_TYPE_PointerToswad__sendNoticeOutput (127) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendNoticeOutput(struct soap*, struct swad__sendNoticeOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendNoticeOutput(struct soap*, const char *, int, struct swad__sendNoticeOutput *const*, const char *); +SOAP_FMAC3 struct swad__sendNoticeOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendNoticeOutput(struct soap*, const char*, struct swad__sendNoticeOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendNoticeOutput(struct soap*, struct swad__sendNoticeOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__sendNoticeOutput +#define soap_write_PointerToswad__sendNoticeOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__sendNoticeOutput(soap, data),0) || soap_put_PointerToswad__sendNoticeOutput(soap, data, "swad:sendNoticeOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendNoticeOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendNoticeOutput(struct soap*, struct swad__sendNoticeOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__sendNoticeOutput +#define soap_read_PointerToswad__sendNoticeOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__sendNoticeOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput +#define SOAP_TYPE_PointerToswad__markNotificationsAsReadOutput (124) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__markNotificationsAsReadOutput(struct soap*, struct swad__markNotificationsAsReadOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__markNotificationsAsReadOutput(struct soap*, const char *, int, struct swad__markNotificationsAsReadOutput *const*, const char *); +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput ** SOAP_FMAC4 soap_in_PointerToswad__markNotificationsAsReadOutput(struct soap*, const char*, struct swad__markNotificationsAsReadOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__markNotificationsAsReadOutput(struct soap*, struct swad__markNotificationsAsReadOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__markNotificationsAsReadOutput +#define soap_write_PointerToswad__markNotificationsAsReadOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__markNotificationsAsReadOutput(soap, data),0) || soap_put_PointerToswad__markNotificationsAsReadOutput(soap, data, "swad:markNotificationsAsReadOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__markNotificationsAsReadOutput ** SOAP_FMAC4 soap_get_PointerToswad__markNotificationsAsReadOutput(struct soap*, struct swad__markNotificationsAsReadOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__markNotificationsAsReadOutput +#define soap_read_PointerToswad__markNotificationsAsReadOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__markNotificationsAsReadOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getNotificationsOutput +#define SOAP_TYPE_PointerToswad__getNotificationsOutput (121) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getNotificationsOutput(struct soap*, struct swad__getNotificationsOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getNotificationsOutput(struct soap*, const char *, int, struct swad__getNotificationsOutput *const*, const char *); +SOAP_FMAC3 struct swad__getNotificationsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getNotificationsOutput(struct soap*, const char*, struct swad__getNotificationsOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getNotificationsOutput(struct soap*, struct swad__getNotificationsOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getNotificationsOutput +#define soap_write_PointerToswad__getNotificationsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getNotificationsOutput(soap, data),0) || soap_put_PointerToswad__getNotificationsOutput(soap, data, "swad:getNotificationsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNotificationsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getNotificationsOutput(struct soap*, struct swad__getNotificationsOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getNotificationsOutput +#define soap_read_PointerToswad__getNotificationsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getNotificationsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput +#define SOAP_TYPE_PointerToswad__sendAttendanceUsersOutput (118) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendAttendanceUsersOutput(struct soap*, struct swad__sendAttendanceUsersOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendAttendanceUsersOutput(struct soap*, const char *, int, struct swad__sendAttendanceUsersOutput *const*, const char *); +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendAttendanceUsersOutput(struct soap*, const char*, struct swad__sendAttendanceUsersOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendAttendanceUsersOutput(struct soap*, struct swad__sendAttendanceUsersOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__sendAttendanceUsersOutput +#define soap_write_PointerToswad__sendAttendanceUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__sendAttendanceUsersOutput(soap, data),0) || soap_put_PointerToswad__sendAttendanceUsersOutput(soap, data, "swad:sendAttendanceUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendAttendanceUsersOutput(struct soap*, struct swad__sendAttendanceUsersOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__sendAttendanceUsersOutput +#define soap_read_PointerToswad__sendAttendanceUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__sendAttendanceUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getAttendanceUsersOutput +#define SOAP_TYPE_PointerToswad__getAttendanceUsersOutput (115) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getAttendanceUsersOutput(struct soap*, struct swad__getAttendanceUsersOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getAttendanceUsersOutput(struct soap*, const char *, int, struct swad__getAttendanceUsersOutput *const*, const char *); +SOAP_FMAC3 struct swad__getAttendanceUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__getAttendanceUsersOutput(struct soap*, const char*, struct swad__getAttendanceUsersOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getAttendanceUsersOutput(struct soap*, struct swad__getAttendanceUsersOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getAttendanceUsersOutput +#define soap_write_PointerToswad__getAttendanceUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getAttendanceUsersOutput(soap, data),0) || soap_put_PointerToswad__getAttendanceUsersOutput(soap, data, "swad:getAttendanceUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__getAttendanceUsersOutput(struct soap*, struct swad__getAttendanceUsersOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getAttendanceUsersOutput +#define soap_read_PointerToswad__getAttendanceUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getAttendanceUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__sendAttendanceEventOutput +#define SOAP_TYPE_PointerToswad__sendAttendanceEventOutput (112) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendAttendanceEventOutput(struct soap*, struct swad__sendAttendanceEventOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendAttendanceEventOutput(struct soap*, const char *, int, struct swad__sendAttendanceEventOutput *const*, const char *); +SOAP_FMAC3 struct swad__sendAttendanceEventOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendAttendanceEventOutput(struct soap*, const char*, struct swad__sendAttendanceEventOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendAttendanceEventOutput(struct soap*, struct swad__sendAttendanceEventOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__sendAttendanceEventOutput +#define soap_write_PointerToswad__sendAttendanceEventOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__sendAttendanceEventOutput(soap, data),0) || soap_put_PointerToswad__sendAttendanceEventOutput(soap, data, "swad:sendAttendanceEventOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendAttendanceEventOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendAttendanceEventOutput(struct soap*, struct swad__sendAttendanceEventOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__sendAttendanceEventOutput +#define soap_read_PointerToswad__sendAttendanceEventOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__sendAttendanceEventOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getAttendanceEventsOutput +#define SOAP_TYPE_PointerToswad__getAttendanceEventsOutput (109) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getAttendanceEventsOutput(struct soap*, struct swad__getAttendanceEventsOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getAttendanceEventsOutput(struct soap*, const char *, int, struct swad__getAttendanceEventsOutput *const*, const char *); +SOAP_FMAC3 struct swad__getAttendanceEventsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getAttendanceEventsOutput(struct soap*, const char*, struct swad__getAttendanceEventsOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getAttendanceEventsOutput(struct soap*, struct swad__getAttendanceEventsOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getAttendanceEventsOutput +#define soap_write_PointerToswad__getAttendanceEventsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getAttendanceEventsOutput(soap, data),0) || soap_put_PointerToswad__getAttendanceEventsOutput(soap, data, "swad:getAttendanceEventsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getAttendanceEventsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getAttendanceEventsOutput(struct soap*, struct swad__getAttendanceEventsOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getAttendanceEventsOutput +#define soap_read_PointerToswad__getAttendanceEventsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getAttendanceEventsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getUsersOutput +#define SOAP_TYPE_PointerToswad__getUsersOutput (106) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getUsersOutput(struct soap*, struct swad__getUsersOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getUsersOutput(struct soap*, const char *, int, struct swad__getUsersOutput *const*, const char *); +SOAP_FMAC3 struct swad__getUsersOutput ** SOAP_FMAC4 soap_in_PointerToswad__getUsersOutput(struct soap*, const char*, struct swad__getUsersOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getUsersOutput(struct soap*, struct swad__getUsersOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getUsersOutput +#define soap_write_PointerToswad__getUsersOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getUsersOutput(soap, data),0) || soap_put_PointerToswad__getUsersOutput(soap, data, "swad:getUsersOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getUsersOutput ** SOAP_FMAC4 soap_get_PointerToswad__getUsersOutput(struct soap*, struct swad__getUsersOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getUsersOutput +#define soap_read_PointerToswad__getUsersOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getUsersOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getTestsOutput +#define SOAP_TYPE_PointerToswad__getTestsOutput (103) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getTestsOutput(struct soap*, struct swad__getTestsOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getTestsOutput(struct soap*, const char *, int, struct swad__getTestsOutput *const*, const char *); +SOAP_FMAC3 struct swad__getTestsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getTestsOutput(struct soap*, const char*, struct swad__getTestsOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getTestsOutput(struct soap*, struct swad__getTestsOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getTestsOutput +#define soap_write_PointerToswad__getTestsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getTestsOutput(soap, data),0) || soap_put_PointerToswad__getTestsOutput(soap, data, "swad:getTestsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTestsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getTestsOutput(struct soap*, struct swad__getTestsOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getTestsOutput +#define soap_read_PointerToswad__getTestsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getTestsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getTestConfigOutput +#define SOAP_TYPE_PointerToswad__getTestConfigOutput (100) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getTestConfigOutput(struct soap*, struct swad__getTestConfigOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getTestConfigOutput(struct soap*, const char *, int, struct swad__getTestConfigOutput *const*, const char *); +SOAP_FMAC3 struct swad__getTestConfigOutput ** SOAP_FMAC4 soap_in_PointerToswad__getTestConfigOutput(struct soap*, const char*, struct swad__getTestConfigOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getTestConfigOutput(struct soap*, struct swad__getTestConfigOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getTestConfigOutput +#define soap_write_PointerToswad__getTestConfigOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getTestConfigOutput(soap, data),0) || soap_put_PointerToswad__getTestConfigOutput(soap, data, "swad:getTestConfigOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getTestConfigOutput ** SOAP_FMAC4 soap_get_PointerToswad__getTestConfigOutput(struct soap*, struct swad__getTestConfigOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getTestConfigOutput +#define soap_read_PointerToswad__getTestConfigOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getTestConfigOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getMarksOutput +#define SOAP_TYPE_PointerToswad__getMarksOutput (97) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getMarksOutput(struct soap*, struct swad__getMarksOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getMarksOutput(struct soap*, const char *, int, struct swad__getMarksOutput *const*, const char *); +SOAP_FMAC3 struct swad__getMarksOutput ** SOAP_FMAC4 soap_in_PointerToswad__getMarksOutput(struct soap*, const char*, struct swad__getMarksOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getMarksOutput(struct soap*, struct swad__getMarksOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getMarksOutput +#define soap_write_PointerToswad__getMarksOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getMarksOutput(soap, data),0) || soap_put_PointerToswad__getMarksOutput(soap, data, "swad:getMarksOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getMarksOutput ** SOAP_FMAC4 soap_get_PointerToswad__getMarksOutput(struct soap*, struct swad__getMarksOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getMarksOutput +#define soap_read_PointerToswad__getMarksOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getMarksOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getFileOutput +#define SOAP_TYPE_PointerToswad__getFileOutput (94) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getFileOutput(struct soap*, struct swad__getFileOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getFileOutput(struct soap*, const char *, int, struct swad__getFileOutput *const*, const char *); +SOAP_FMAC3 struct swad__getFileOutput ** SOAP_FMAC4 soap_in_PointerToswad__getFileOutput(struct soap*, const char*, struct swad__getFileOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getFileOutput(struct soap*, struct swad__getFileOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getFileOutput +#define soap_write_PointerToswad__getFileOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getFileOutput(soap, data),0) || soap_put_PointerToswad__getFileOutput(soap, data, "swad:getFileOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getFileOutput ** SOAP_FMAC4 soap_get_PointerToswad__getFileOutput(struct soap*, struct swad__getFileOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getFileOutput +#define soap_read_PointerToswad__getFileOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getFileOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getDirectoryTreeOutput +#define SOAP_TYPE_PointerToswad__getDirectoryTreeOutput (91) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getDirectoryTreeOutput(struct soap*, struct swad__getDirectoryTreeOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getDirectoryTreeOutput(struct soap*, const char *, int, struct swad__getDirectoryTreeOutput *const*, const char *); +SOAP_FMAC3 struct swad__getDirectoryTreeOutput ** SOAP_FMAC4 soap_in_PointerToswad__getDirectoryTreeOutput(struct soap*, const char*, struct swad__getDirectoryTreeOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getDirectoryTreeOutput(struct soap*, struct swad__getDirectoryTreeOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getDirectoryTreeOutput +#define soap_write_PointerToswad__getDirectoryTreeOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getDirectoryTreeOutput(soap, data),0) || soap_put_PointerToswad__getDirectoryTreeOutput(soap, data, "swad:getDirectoryTreeOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getDirectoryTreeOutput ** SOAP_FMAC4 soap_get_PointerToswad__getDirectoryTreeOutput(struct soap*, struct swad__getDirectoryTreeOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getDirectoryTreeOutput +#define soap_read_PointerToswad__getDirectoryTreeOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getDirectoryTreeOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__sendMyGroupsOutput +#define SOAP_TYPE_PointerToswad__sendMyGroupsOutput (88) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__sendMyGroupsOutput(struct soap*, struct swad__sendMyGroupsOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__sendMyGroupsOutput(struct soap*, const char *, int, struct swad__sendMyGroupsOutput *const*, const char *); +SOAP_FMAC3 struct swad__sendMyGroupsOutput ** SOAP_FMAC4 soap_in_PointerToswad__sendMyGroupsOutput(struct soap*, const char*, struct swad__sendMyGroupsOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__sendMyGroupsOutput(struct soap*, struct swad__sendMyGroupsOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__sendMyGroupsOutput +#define soap_write_PointerToswad__sendMyGroupsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__sendMyGroupsOutput(soap, data),0) || soap_put_PointerToswad__sendMyGroupsOutput(soap, data, "swad:sendMyGroupsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__sendMyGroupsOutput ** SOAP_FMAC4 soap_get_PointerToswad__sendMyGroupsOutput(struct soap*, struct swad__sendMyGroupsOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__sendMyGroupsOutput +#define soap_read_PointerToswad__sendMyGroupsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__sendMyGroupsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getGroupsOutput +#define SOAP_TYPE_PointerToswad__getGroupsOutput (85) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getGroupsOutput(struct soap*, struct swad__getGroupsOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getGroupsOutput(struct soap*, const char *, int, struct swad__getGroupsOutput *const*, const char *); +SOAP_FMAC3 struct swad__getGroupsOutput ** SOAP_FMAC4 soap_in_PointerToswad__getGroupsOutput(struct soap*, const char*, struct swad__getGroupsOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getGroupsOutput(struct soap*, struct swad__getGroupsOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getGroupsOutput +#define soap_write_PointerToswad__getGroupsOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getGroupsOutput(soap, data),0) || soap_put_PointerToswad__getGroupsOutput(soap, data, "swad:getGroupsOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroupsOutput ** SOAP_FMAC4 soap_get_PointerToswad__getGroupsOutput(struct soap*, struct swad__getGroupsOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getGroupsOutput +#define soap_read_PointerToswad__getGroupsOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getGroupsOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getGroupTypesOutput +#define SOAP_TYPE_PointerToswad__getGroupTypesOutput (82) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getGroupTypesOutput(struct soap*, struct swad__getGroupTypesOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getGroupTypesOutput(struct soap*, const char *, int, struct swad__getGroupTypesOutput *const*, const char *); +SOAP_FMAC3 struct swad__getGroupTypesOutput ** SOAP_FMAC4 soap_in_PointerToswad__getGroupTypesOutput(struct soap*, const char*, struct swad__getGroupTypesOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getGroupTypesOutput(struct soap*, struct swad__getGroupTypesOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getGroupTypesOutput +#define soap_write_PointerToswad__getGroupTypesOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getGroupTypesOutput(soap, data),0) || soap_put_PointerToswad__getGroupTypesOutput(soap, data, "swad:getGroupTypesOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getGroupTypesOutput ** SOAP_FMAC4 soap_get_PointerToswad__getGroupTypesOutput(struct soap*, struct swad__getGroupTypesOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getGroupTypesOutput +#define soap_read_PointerToswad__getGroupTypesOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getGroupTypesOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getCourseInfoOutput +#define SOAP_TYPE_PointerToswad__getCourseInfoOutput (79) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getCourseInfoOutput(struct soap*, struct swad__getCourseInfoOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getCourseInfoOutput(struct soap*, const char *, int, struct swad__getCourseInfoOutput *const*, const char *); +SOAP_FMAC3 struct swad__getCourseInfoOutput ** SOAP_FMAC4 soap_in_PointerToswad__getCourseInfoOutput(struct soap*, const char*, struct swad__getCourseInfoOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getCourseInfoOutput(struct soap*, struct swad__getCourseInfoOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getCourseInfoOutput +#define soap_write_PointerToswad__getCourseInfoOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getCourseInfoOutput(soap, data),0) || soap_put_PointerToswad__getCourseInfoOutput(soap, data, "swad:getCourseInfoOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCourseInfoOutput ** SOAP_FMAC4 soap_get_PointerToswad__getCourseInfoOutput(struct soap*, struct swad__getCourseInfoOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getCourseInfoOutput +#define soap_read_PointerToswad__getCourseInfoOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getCourseInfoOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getCoursesOutput +#define SOAP_TYPE_PointerToswad__getCoursesOutput (76) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getCoursesOutput(struct soap*, struct swad__getCoursesOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getCoursesOutput(struct soap*, const char *, int, struct swad__getCoursesOutput *const*, const char *); +SOAP_FMAC3 struct swad__getCoursesOutput ** SOAP_FMAC4 soap_in_PointerToswad__getCoursesOutput(struct soap*, const char*, struct swad__getCoursesOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getCoursesOutput(struct soap*, struct swad__getCoursesOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getCoursesOutput +#define soap_write_PointerToswad__getCoursesOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getCoursesOutput(soap, data),0) || soap_put_PointerToswad__getCoursesOutput(soap, data, "swad:getCoursesOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getCoursesOutput ** SOAP_FMAC4 soap_get_PointerToswad__getCoursesOutput(struct soap*, struct swad__getCoursesOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getCoursesOutput +#define soap_read_PointerToswad__getCoursesOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getCoursesOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__getNewPasswordOutput +#define SOAP_TYPE_PointerToswad__getNewPasswordOutput (73) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__getNewPasswordOutput(struct soap*, struct swad__getNewPasswordOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__getNewPasswordOutput(struct soap*, const char *, int, struct swad__getNewPasswordOutput *const*, const char *); +SOAP_FMAC3 struct swad__getNewPasswordOutput ** SOAP_FMAC4 soap_in_PointerToswad__getNewPasswordOutput(struct soap*, const char*, struct swad__getNewPasswordOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__getNewPasswordOutput(struct soap*, struct swad__getNewPasswordOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__getNewPasswordOutput +#define soap_write_PointerToswad__getNewPasswordOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__getNewPasswordOutput(soap, data),0) || soap_put_PointerToswad__getNewPasswordOutput(soap, data, "swad:getNewPasswordOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__getNewPasswordOutput ** SOAP_FMAC4 soap_get_PointerToswad__getNewPasswordOutput(struct soap*, struct swad__getNewPasswordOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__getNewPasswordOutput +#define soap_read_PointerToswad__getNewPasswordOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__getNewPasswordOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__loginBySessionKeyOutput +#define SOAP_TYPE_PointerToswad__loginBySessionKeyOutput (70) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__loginBySessionKeyOutput(struct soap*, struct swad__loginBySessionKeyOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__loginBySessionKeyOutput(struct soap*, const char *, int, struct swad__loginBySessionKeyOutput *const*, const char *); +SOAP_FMAC3 struct swad__loginBySessionKeyOutput ** SOAP_FMAC4 soap_in_PointerToswad__loginBySessionKeyOutput(struct soap*, const char*, struct swad__loginBySessionKeyOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__loginBySessionKeyOutput(struct soap*, struct swad__loginBySessionKeyOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__loginBySessionKeyOutput +#define soap_write_PointerToswad__loginBySessionKeyOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__loginBySessionKeyOutput(soap, data),0) || soap_put_PointerToswad__loginBySessionKeyOutput(soap, data, "swad:loginBySessionKeyOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginBySessionKeyOutput ** SOAP_FMAC4 soap_get_PointerToswad__loginBySessionKeyOutput(struct soap*, struct swad__loginBySessionKeyOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__loginBySessionKeyOutput +#define soap_read_PointerToswad__loginBySessionKeyOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__loginBySessionKeyOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput +#define SOAP_TYPE_PointerToswad__loginByUserPasswordKeyOutput (67) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__loginByUserPasswordKeyOutput(struct soap*, struct swad__loginByUserPasswordKeyOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__loginByUserPasswordKeyOutput(struct soap*, const char *, int, struct swad__loginByUserPasswordKeyOutput *const*, const char *); +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput ** SOAP_FMAC4 soap_in_PointerToswad__loginByUserPasswordKeyOutput(struct soap*, const char*, struct swad__loginByUserPasswordKeyOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__loginByUserPasswordKeyOutput(struct soap*, struct swad__loginByUserPasswordKeyOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__loginByUserPasswordKeyOutput +#define soap_write_PointerToswad__loginByUserPasswordKeyOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__loginByUserPasswordKeyOutput(soap, data),0) || soap_put_PointerToswad__loginByUserPasswordKeyOutput(soap, data, "swad:loginByUserPasswordKeyOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__loginByUserPasswordKeyOutput ** SOAP_FMAC4 soap_get_PointerToswad__loginByUserPasswordKeyOutput(struct soap*, struct swad__loginByUserPasswordKeyOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__loginByUserPasswordKeyOutput +#define soap_read_PointerToswad__loginByUserPasswordKeyOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__loginByUserPasswordKeyOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__createAccountOutput +#define SOAP_TYPE_PointerToswad__createAccountOutput (64) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__createAccountOutput(struct soap*, struct swad__createAccountOutput *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__createAccountOutput(struct soap*, const char *, int, struct swad__createAccountOutput *const*, const char *); +SOAP_FMAC3 struct swad__createAccountOutput ** SOAP_FMAC4 soap_in_PointerToswad__createAccountOutput(struct soap*, const char*, struct swad__createAccountOutput **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__createAccountOutput(struct soap*, struct swad__createAccountOutput *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__createAccountOutput +#define soap_write_PointerToswad__createAccountOutput(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__createAccountOutput(soap, data),0) || soap_put_PointerToswad__createAccountOutput(soap, data, "swad:createAccountOutput", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__createAccountOutput ** SOAP_FMAC4 soap_get_PointerToswad__createAccountOutput(struct soap*, struct swad__createAccountOutput **, const char*, const char*); + +#ifndef soap_read_PointerToswad__createAccountOutput +#define soap_read_PointerToswad__createAccountOutput(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__createAccountOutput(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__attendanceUser +#define SOAP_TYPE_PointerToswad__attendanceUser (56) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__attendanceUser(struct soap*, struct swad__attendanceUser *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__attendanceUser(struct soap*, const char *, int, struct swad__attendanceUser *const*, const char *); +SOAP_FMAC3 struct swad__attendanceUser ** SOAP_FMAC4 soap_in_PointerToswad__attendanceUser(struct soap*, const char*, struct swad__attendanceUser **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__attendanceUser(struct soap*, struct swad__attendanceUser *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__attendanceUser +#define soap_write_PointerToswad__attendanceUser(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__attendanceUser(soap, data),0) || soap_put_PointerToswad__attendanceUser(soap, data, "swad:attendanceUser", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceUser ** SOAP_FMAC4 soap_get_PointerToswad__attendanceUser(struct soap*, struct swad__attendanceUser **, const char*, const char*); + +#ifndef soap_read_PointerToswad__attendanceUser +#define soap_read_PointerToswad__attendanceUser(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__attendanceUser(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__attendanceEvent +#define SOAP_TYPE_PointerToswad__attendanceEvent (51) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__attendanceEvent(struct soap*, struct swad__attendanceEvent *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__attendanceEvent(struct soap*, const char *, int, struct swad__attendanceEvent *const*, const char *); +SOAP_FMAC3 struct swad__attendanceEvent ** SOAP_FMAC4 soap_in_PointerToswad__attendanceEvent(struct soap*, const char*, struct swad__attendanceEvent **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__attendanceEvent(struct soap*, struct swad__attendanceEvent *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__attendanceEvent +#define soap_write_PointerToswad__attendanceEvent(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__attendanceEvent(soap, data),0) || soap_put_PointerToswad__attendanceEvent(soap, data, "swad:attendanceEvent", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__attendanceEvent ** SOAP_FMAC4 soap_get_PointerToswad__attendanceEvent(struct soap*, struct swad__attendanceEvent **, const char*, const char*); + +#ifndef soap_read_PointerToswad__attendanceEvent +#define soap_read_PointerToswad__attendanceEvent(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__attendanceEvent(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__user +#define SOAP_TYPE_PointerToswad__user (47) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__user(struct soap*, struct swad__user *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__user(struct soap*, const char *, int, struct swad__user *const*, const char *); +SOAP_FMAC3 struct swad__user ** SOAP_FMAC4 soap_in_PointerToswad__user(struct soap*, const char*, struct swad__user **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__user(struct soap*, struct swad__user *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__user +#define soap_write_PointerToswad__user(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__user(soap, data),0) || soap_put_PointerToswad__user(soap, data, "swad:user", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__user ** SOAP_FMAC4 soap_get_PointerToswad__user(struct soap*, struct swad__user **, const char*, const char*); + +#ifndef soap_read_PointerToswad__user +#define soap_read_PointerToswad__user(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__user(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__questionTag +#define SOAP_TYPE_PointerToswad__questionTag (43) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__questionTag(struct soap*, struct swad__questionTag *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__questionTag(struct soap*, const char *, int, struct swad__questionTag *const*, const char *); +SOAP_FMAC3 struct swad__questionTag ** SOAP_FMAC4 soap_in_PointerToswad__questionTag(struct soap*, const char*, struct swad__questionTag **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__questionTag(struct soap*, struct swad__questionTag *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__questionTag +#define soap_write_PointerToswad__questionTag(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__questionTag(soap, data),0) || soap_put_PointerToswad__questionTag(soap, data, "swad:questionTag", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__questionTag ** SOAP_FMAC4 soap_get_PointerToswad__questionTag(struct soap*, struct swad__questionTag **, const char*, const char*); + +#ifndef soap_read_PointerToswad__questionTag +#define soap_read_PointerToswad__questionTag(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__questionTag(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__answer +#define SOAP_TYPE_PointerToswad__answer (40) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__answer(struct soap*, struct swad__answer *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__answer(struct soap*, const char *, int, struct swad__answer *const*, const char *); +SOAP_FMAC3 struct swad__answer ** SOAP_FMAC4 soap_in_PointerToswad__answer(struct soap*, const char*, struct swad__answer **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__answer(struct soap*, struct swad__answer *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__answer +#define soap_write_PointerToswad__answer(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__answer(soap, data),0) || soap_put_PointerToswad__answer(soap, data, "swad:answer", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__answer ** SOAP_FMAC4 soap_get_PointerToswad__answer(struct soap*, struct swad__answer **, const char*, const char*); + +#ifndef soap_read_PointerToswad__answer +#define soap_read_PointerToswad__answer(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__answer(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__question +#define SOAP_TYPE_PointerToswad__question (37) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__question(struct soap*, struct swad__question *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__question(struct soap*, const char *, int, struct swad__question *const*, const char *); +SOAP_FMAC3 struct swad__question ** SOAP_FMAC4 soap_in_PointerToswad__question(struct soap*, const char*, struct swad__question **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__question(struct soap*, struct swad__question *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__question +#define soap_write_PointerToswad__question(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__question(soap, data),0) || soap_put_PointerToswad__question(soap, data, "swad:question", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__question ** SOAP_FMAC4 soap_get_PointerToswad__question(struct soap*, struct swad__question **, const char*, const char*); + +#ifndef soap_read_PointerToswad__question +#define soap_read_PointerToswad__question(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__question(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__tag +#define SOAP_TYPE_PointerToswad__tag (34) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__tag(struct soap*, struct swad__tag *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__tag(struct soap*, const char *, int, struct swad__tag *const*, const char *); +SOAP_FMAC3 struct swad__tag ** SOAP_FMAC4 soap_in_PointerToswad__tag(struct soap*, const char*, struct swad__tag **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__tag(struct soap*, struct swad__tag *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__tag +#define soap_write_PointerToswad__tag(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__tag(soap, data),0) || soap_put_PointerToswad__tag(soap, data, "swad:tag", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__tag ** SOAP_FMAC4 soap_get_PointerToswad__tag(struct soap*, struct swad__tag **, const char*, const char*); + +#ifndef soap_read_PointerToswad__tag +#define soap_read_PointerToswad__tag(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__tag(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__notification +#define SOAP_TYPE_PointerToswad__notification (28) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__notification(struct soap*, struct swad__notification *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__notification(struct soap*, const char *, int, struct swad__notification *const*, const char *); +SOAP_FMAC3 struct swad__notification ** SOAP_FMAC4 soap_in_PointerToswad__notification(struct soap*, const char*, struct swad__notification **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__notification(struct soap*, struct swad__notification *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__notification +#define soap_write_PointerToswad__notification(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__notification(soap, data),0) || soap_put_PointerToswad__notification(soap, data, "swad:notification", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__notification ** SOAP_FMAC4 soap_get_PointerToswad__notification(struct soap*, struct swad__notification **, const char*, const char*); + +#ifndef soap_read_PointerToswad__notification +#define soap_read_PointerToswad__notification(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__notification(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__group +#define SOAP_TYPE_PointerToswad__group (23) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__group(struct soap*, struct swad__group *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__group(struct soap*, const char *, int, struct swad__group *const*, const char *); +SOAP_FMAC3 struct swad__group ** SOAP_FMAC4 soap_in_PointerToswad__group(struct soap*, const char*, struct swad__group **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__group(struct soap*, struct swad__group *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__group +#define soap_write_PointerToswad__group(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__group(soap, data),0) || soap_put_PointerToswad__group(soap, data, "swad:group", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__group ** SOAP_FMAC4 soap_get_PointerToswad__group(struct soap*, struct swad__group **, const char*, const char*); + +#ifndef soap_read_PointerToswad__group +#define soap_read_PointerToswad__group(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__group(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__groupType +#define SOAP_TYPE_PointerToswad__groupType (19) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__groupType(struct soap*, struct swad__groupType *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__groupType(struct soap*, const char *, int, struct swad__groupType *const*, const char *); +SOAP_FMAC3 struct swad__groupType ** SOAP_FMAC4 soap_in_PointerToswad__groupType(struct soap*, const char*, struct swad__groupType **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__groupType(struct soap*, struct swad__groupType *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__groupType +#define soap_write_PointerToswad__groupType(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__groupType(soap, data),0) || soap_put_PointerToswad__groupType(soap, data, "swad:groupType", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__groupType ** SOAP_FMAC4 soap_get_PointerToswad__groupType(struct soap*, struct swad__groupType **, const char*, const char*); + +#ifndef soap_read_PointerToswad__groupType +#define soap_read_PointerToswad__groupType(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__groupType(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_PointerToswad__course +#define SOAP_TYPE_PointerToswad__course (13) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToswad__course(struct soap*, struct swad__course *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToswad__course(struct soap*, const char *, int, struct swad__course *const*, const char *); +SOAP_FMAC3 struct swad__course ** SOAP_FMAC4 soap_in_PointerToswad__course(struct soap*, const char*, struct swad__course **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToswad__course(struct soap*, struct swad__course *const*, const char*, const char*); + +#ifndef soap_write_PointerToswad__course +#define soap_write_PointerToswad__course(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_PointerToswad__course(soap, data),0) || soap_put_PointerToswad__course(soap, data, "swad:course", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 struct swad__course ** SOAP_FMAC4 soap_get_PointerToswad__course(struct soap*, struct swad__course **, const char*, const char*); + +#ifndef soap_read_PointerToswad__course +#define soap_read_PointerToswad__course(soap, data) ( soap_begin_recv(soap) || !soap_get_PointerToswad__course(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE__QName +#define SOAP_TYPE__QName (5) +#endif + +#define soap_default__QName(soap, a) soap_default_string(soap, a) + +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize__QName(struct soap*, char *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap*, const char*, int, char*const*, const char*); +SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap*, const char*, char **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap*, char *const*, const char*, const char*); + +#ifndef soap_write__QName +#define soap_write__QName(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize__QName(soap, data),0) || soap_put__QName(soap, data, "byte", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap*, char **, const char*, const char*); + +#ifndef soap_read__QName +#define soap_read__QName(soap, data) ( soap_begin_recv(soap) || !soap_get__QName(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifndef SOAP_TYPE_string +#define SOAP_TYPE_string (4) +#endif +SOAP_FMAC3 void SOAP_FMAC4 soap_default_string(struct soap*, char **); +SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap*, char *const*); +SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap*, const char*, int, char*const*, const char*); +SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap*, const char*, char **, const char*); +SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap*, char *const*, const char*, const char*); + +#ifndef soap_write_string +#define soap_write_string(soap, data) ( soap_free_temp(soap), soap_begin_send(soap) || (soap_serialize_string(soap, data),0) || soap_put_string(soap, data, "byte", NULL) || soap_end_send(soap), (soap)->error ) +#endif + +SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap*, char **, const char*, const char*); + +#ifndef soap_read_string +#define soap_read_string(soap, data) ( soap_begin_recv(soap) || !soap_get_string(soap, data, NULL, NULL) || soap_end_recv(soap), (soap)->error ) +#endif + + +#ifdef __cplusplus +} +#endif + +#endif + +/* End of soapH.h */ diff --git a/soap/soapServer.c b/soap/soapServer.c new file mode 100644 index 00000000..385de089 --- /dev/null +++ b/soap/soapServer.c @@ -0,0 +1,1064 @@ +/* soapServer.c + Generated by gSOAP 2.8.18 from swad_web_service.h + +Copyright(C) 2000-2014, Robert van Engelen, Genivia Inc. All Rights Reserved. +The generated code is released under one of the following licenses: +GPL or Genivia's license for commercial use. +This program is released under the GPL with the additional exemption that +compiling, linking, and/or using OpenSSL is allowed. +*/ + +#if defined(__BORLANDC__) +#pragma option push -w-8060 +#pragma option push -w-8004 +#endif +#include "soapH.h" +#ifdef __cplusplus +extern "C" { +#endif + +SOAP_SOURCE_STAMP("@(#) soapServer.c ver 2.8.18 2014-11-18 09:33:58 GMT") + + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve(struct soap *soap) +{ +#ifndef WITH_FASTCGI + unsigned int k = soap->max_keep_alive; +#endif + do + { +#ifndef WITH_FASTCGI + if (soap->max_keep_alive > 0 && !--k) + soap->keep_alive = 0; +#endif + if (soap_begin_serve(soap)) + { if (soap->error >= SOAP_STOP) + continue; + return soap->error; + } + if (soap_serve_request(soap) || (soap->fserveloop && soap->fserveloop(soap))) + { +#ifdef WITH_FASTCGI + soap_send_fault(soap); +#else + return soap_send_fault(soap); +#endif + } + +#ifdef WITH_FASTCGI + soap_destroy(soap); + soap_end(soap); + } while (1); +#else + } while (soap->keep_alive); +#endif + return SOAP_OK; +} + +#ifndef WITH_NOSERVEREQUEST +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_request(struct soap *soap) +{ + soap_peek_element(soap); + if (!soap_match_tag(soap, soap->tag, "swad:createAccount")) + return soap_serve_swad__createAccount(soap); + if (!soap_match_tag(soap, soap->tag, "swad:loginByUserPasswordKey")) + return soap_serve_swad__loginByUserPasswordKey(soap); + if (!soap_match_tag(soap, soap->tag, "swad:loginBySessionKey")) + return soap_serve_swad__loginBySessionKey(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getNewPassword")) + return soap_serve_swad__getNewPassword(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getCourses")) + return soap_serve_swad__getCourses(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getCourseInfo")) + return soap_serve_swad__getCourseInfo(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getGroupTypes")) + return soap_serve_swad__getGroupTypes(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getGroups")) + return soap_serve_swad__getGroups(soap); + if (!soap_match_tag(soap, soap->tag, "swad:sendMyGroups")) + return soap_serve_swad__sendMyGroups(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getDirectoryTree")) + return soap_serve_swad__getDirectoryTree(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getFile")) + return soap_serve_swad__getFile(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getMarks")) + return soap_serve_swad__getMarks(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getTestConfig")) + return soap_serve_swad__getTestConfig(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getTests")) + return soap_serve_swad__getTests(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getUsers")) + return soap_serve_swad__getUsers(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getAttendanceEvents")) + return soap_serve_swad__getAttendanceEvents(soap); + if (!soap_match_tag(soap, soap->tag, "swad:sendAttendanceEvent")) + return soap_serve_swad__sendAttendanceEvent(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getAttendanceUsers")) + return soap_serve_swad__getAttendanceUsers(soap); + if (!soap_match_tag(soap, soap->tag, "swad:sendAttendanceUsers")) + return soap_serve_swad__sendAttendanceUsers(soap); + if (!soap_match_tag(soap, soap->tag, "swad:getNotifications")) + return soap_serve_swad__getNotifications(soap); + if (!soap_match_tag(soap, soap->tag, "swad:markNotificationsAsRead")) + return soap_serve_swad__markNotificationsAsRead(soap); + if (!soap_match_tag(soap, soap->tag, "swad:sendNotice")) + return soap_serve_swad__sendNotice(soap); + if (!soap_match_tag(soap, soap->tag, "swad:sendMessage")) + return soap_serve_swad__sendMessage(soap); + return soap->error = SOAP_NO_METHOD; +} +#endif + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__createAccount(struct soap *soap) +{ struct swad__createAccount soap_tmp_swad__createAccount; + struct swad__createAccountOutput createAccountOut; + soap_default_swad__createAccountOutput(soap, &createAccountOut); + soap_default_swad__createAccount(soap, &soap_tmp_swad__createAccount); + if (!soap_get_swad__createAccount(soap, &soap_tmp_swad__createAccount, "swad:createAccount", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__createAccount(soap, soap_tmp_swad__createAccount.userNickname, soap_tmp_swad__createAccount.userEmail, soap_tmp_swad__createAccount.userID, soap_tmp_swad__createAccount.userPassword, soap_tmp_swad__createAccount.appKey, &createAccountOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__createAccountOutput(soap, &createAccountOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__createAccountOutput(soap, &createAccountOut, "swad:createAccountOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__createAccountOutput(soap, &createAccountOut, "swad:createAccountOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__loginByUserPasswordKey(struct soap *soap) +{ struct swad__loginByUserPasswordKey soap_tmp_swad__loginByUserPasswordKey; + struct swad__loginByUserPasswordKeyOutput loginByUserPasswordKeyOut; + soap_default_swad__loginByUserPasswordKeyOutput(soap, &loginByUserPasswordKeyOut); + soap_default_swad__loginByUserPasswordKey(soap, &soap_tmp_swad__loginByUserPasswordKey); + if (!soap_get_swad__loginByUserPasswordKey(soap, &soap_tmp_swad__loginByUserPasswordKey, "swad:loginByUserPasswordKey", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__loginByUserPasswordKey(soap, soap_tmp_swad__loginByUserPasswordKey.userID, soap_tmp_swad__loginByUserPasswordKey.userPassword, soap_tmp_swad__loginByUserPasswordKey.appKey, &loginByUserPasswordKeyOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__loginByUserPasswordKeyOutput(soap, &loginByUserPasswordKeyOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__loginByUserPasswordKeyOutput(soap, &loginByUserPasswordKeyOut, "swad:loginByUserPasswordKeyOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__loginByUserPasswordKeyOutput(soap, &loginByUserPasswordKeyOut, "swad:loginByUserPasswordKeyOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__loginBySessionKey(struct soap *soap) +{ struct swad__loginBySessionKey soap_tmp_swad__loginBySessionKey; + struct swad__loginBySessionKeyOutput loginBySessionKeyOut; + soap_default_swad__loginBySessionKeyOutput(soap, &loginBySessionKeyOut); + soap_default_swad__loginBySessionKey(soap, &soap_tmp_swad__loginBySessionKey); + if (!soap_get_swad__loginBySessionKey(soap, &soap_tmp_swad__loginBySessionKey, "swad:loginBySessionKey", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__loginBySessionKey(soap, soap_tmp_swad__loginBySessionKey.sessionID, soap_tmp_swad__loginBySessionKey.appKey, &loginBySessionKeyOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__loginBySessionKeyOutput(soap, &loginBySessionKeyOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__loginBySessionKeyOutput(soap, &loginBySessionKeyOut, "swad:loginBySessionKeyOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__loginBySessionKeyOutput(soap, &loginBySessionKeyOut, "swad:loginBySessionKeyOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getNewPassword(struct soap *soap) +{ struct swad__getNewPassword soap_tmp_swad__getNewPassword; + struct swad__getNewPasswordOutput getNewPasswordOut; + soap_default_swad__getNewPasswordOutput(soap, &getNewPasswordOut); + soap_default_swad__getNewPassword(soap, &soap_tmp_swad__getNewPassword); + if (!soap_get_swad__getNewPassword(soap, &soap_tmp_swad__getNewPassword, "swad:getNewPassword", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getNewPassword(soap, soap_tmp_swad__getNewPassword.userID, soap_tmp_swad__getNewPassword.appKey, &getNewPasswordOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getNewPasswordOutput(soap, &getNewPasswordOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getNewPasswordOutput(soap, &getNewPasswordOut, "swad:getNewPasswordOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getNewPasswordOutput(soap, &getNewPasswordOut, "swad:getNewPasswordOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getCourses(struct soap *soap) +{ struct swad__getCourses soap_tmp_swad__getCourses; + struct swad__getCoursesOutput getCoursesOut; + soap_default_swad__getCoursesOutput(soap, &getCoursesOut); + soap_default_swad__getCourses(soap, &soap_tmp_swad__getCourses); + if (!soap_get_swad__getCourses(soap, &soap_tmp_swad__getCourses, "swad:getCourses", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getCourses(soap, soap_tmp_swad__getCourses.wsKey, &getCoursesOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getCoursesOutput(soap, &getCoursesOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getCoursesOutput(soap, &getCoursesOut, "swad:getCoursesOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getCoursesOutput(soap, &getCoursesOut, "swad:getCoursesOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getCourseInfo(struct soap *soap) +{ struct swad__getCourseInfo soap_tmp_swad__getCourseInfo; + struct swad__getCourseInfoOutput getCourseInfoOut; + soap_default_swad__getCourseInfoOutput(soap, &getCourseInfoOut); + soap_default_swad__getCourseInfo(soap, &soap_tmp_swad__getCourseInfo); + if (!soap_get_swad__getCourseInfo(soap, &soap_tmp_swad__getCourseInfo, "swad:getCourseInfo", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getCourseInfo(soap, soap_tmp_swad__getCourseInfo.wsKey, soap_tmp_swad__getCourseInfo.courseCode, soap_tmp_swad__getCourseInfo.infoType, &getCourseInfoOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getCourseInfoOutput(soap, &getCourseInfoOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getCourseInfoOutput(soap, &getCourseInfoOut, "swad:getCourseInfoOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getCourseInfoOutput(soap, &getCourseInfoOut, "swad:getCourseInfoOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getGroupTypes(struct soap *soap) +{ struct swad__getGroupTypes soap_tmp_swad__getGroupTypes; + struct swad__getGroupTypesOutput getGroupTypesOut; + soap_default_swad__getGroupTypesOutput(soap, &getGroupTypesOut); + soap_default_swad__getGroupTypes(soap, &soap_tmp_swad__getGroupTypes); + if (!soap_get_swad__getGroupTypes(soap, &soap_tmp_swad__getGroupTypes, "swad:getGroupTypes", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getGroupTypes(soap, soap_tmp_swad__getGroupTypes.wsKey, soap_tmp_swad__getGroupTypes.courseCode, &getGroupTypesOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getGroupTypesOutput(soap, &getGroupTypesOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getGroupTypesOutput(soap, &getGroupTypesOut, "swad:getGroupTypesOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getGroupTypesOutput(soap, &getGroupTypesOut, "swad:getGroupTypesOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getGroups(struct soap *soap) +{ struct swad__getGroups soap_tmp_swad__getGroups; + struct swad__getGroupsOutput getGroupsOut; + soap_default_swad__getGroupsOutput(soap, &getGroupsOut); + soap_default_swad__getGroups(soap, &soap_tmp_swad__getGroups); + if (!soap_get_swad__getGroups(soap, &soap_tmp_swad__getGroups, "swad:getGroups", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getGroups(soap, soap_tmp_swad__getGroups.wsKey, soap_tmp_swad__getGroups.courseCode, &getGroupsOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getGroupsOutput(soap, &getGroupsOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getGroupsOutput(soap, &getGroupsOut, "swad:getGroupsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getGroupsOutput(soap, &getGroupsOut, "swad:getGroupsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendMyGroups(struct soap *soap) +{ struct swad__sendMyGroups soap_tmp_swad__sendMyGroups; + struct swad__sendMyGroupsOutput sendMyGroupsOut; + soap_default_swad__sendMyGroupsOutput(soap, &sendMyGroupsOut); + soap_default_swad__sendMyGroups(soap, &soap_tmp_swad__sendMyGroups); + if (!soap_get_swad__sendMyGroups(soap, &soap_tmp_swad__sendMyGroups, "swad:sendMyGroups", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__sendMyGroups(soap, soap_tmp_swad__sendMyGroups.wsKey, soap_tmp_swad__sendMyGroups.courseCode, soap_tmp_swad__sendMyGroups.myGroups, &sendMyGroupsOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__sendMyGroupsOutput(soap, &sendMyGroupsOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendMyGroupsOutput(soap, &sendMyGroupsOut, "swad:sendMyGroupsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendMyGroupsOutput(soap, &sendMyGroupsOut, "swad:sendMyGroupsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getDirectoryTree(struct soap *soap) +{ struct swad__getDirectoryTree soap_tmp_swad__getDirectoryTree; + struct swad__getDirectoryTreeOutput getDirectoryTreeOut; + soap_default_swad__getDirectoryTreeOutput(soap, &getDirectoryTreeOut); + soap_default_swad__getDirectoryTree(soap, &soap_tmp_swad__getDirectoryTree); + if (!soap_get_swad__getDirectoryTree(soap, &soap_tmp_swad__getDirectoryTree, "swad:getDirectoryTree", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getDirectoryTree(soap, soap_tmp_swad__getDirectoryTree.wsKey, soap_tmp_swad__getDirectoryTree.courseCode, soap_tmp_swad__getDirectoryTree.groupCode, soap_tmp_swad__getDirectoryTree.treeCode, &getDirectoryTreeOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getDirectoryTreeOutput(soap, &getDirectoryTreeOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getDirectoryTreeOutput(soap, &getDirectoryTreeOut, "swad:getDirectoryTreeOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getDirectoryTreeOutput(soap, &getDirectoryTreeOut, "swad:getDirectoryTreeOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getFile(struct soap *soap) +{ struct swad__getFile soap_tmp_swad__getFile; + struct swad__getFileOutput getFileOut; + soap_default_swad__getFileOutput(soap, &getFileOut); + soap_default_swad__getFile(soap, &soap_tmp_swad__getFile); + if (!soap_get_swad__getFile(soap, &soap_tmp_swad__getFile, "swad:getFile", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getFile(soap, soap_tmp_swad__getFile.wsKey, soap_tmp_swad__getFile.fileCode, &getFileOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getFileOutput(soap, &getFileOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getFileOutput(soap, &getFileOut, "swad:getFileOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getFileOutput(soap, &getFileOut, "swad:getFileOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getMarks(struct soap *soap) +{ struct swad__getMarks soap_tmp_swad__getMarks; + struct swad__getMarksOutput getMarksOut; + soap_default_swad__getMarksOutput(soap, &getMarksOut); + soap_default_swad__getMarks(soap, &soap_tmp_swad__getMarks); + if (!soap_get_swad__getMarks(soap, &soap_tmp_swad__getMarks, "swad:getMarks", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getMarks(soap, soap_tmp_swad__getMarks.wsKey, soap_tmp_swad__getMarks.fileCode, &getMarksOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getMarksOutput(soap, &getMarksOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getMarksOutput(soap, &getMarksOut, "swad:getMarksOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getMarksOutput(soap, &getMarksOut, "swad:getMarksOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getTestConfig(struct soap *soap) +{ struct swad__getTestConfig soap_tmp_swad__getTestConfig; + struct swad__getTestConfigOutput getTestConfigOut; + soap_default_swad__getTestConfigOutput(soap, &getTestConfigOut); + soap_default_swad__getTestConfig(soap, &soap_tmp_swad__getTestConfig); + if (!soap_get_swad__getTestConfig(soap, &soap_tmp_swad__getTestConfig, "swad:getTestConfig", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getTestConfig(soap, soap_tmp_swad__getTestConfig.wsKey, soap_tmp_swad__getTestConfig.courseCode, &getTestConfigOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getTestConfigOutput(soap, &getTestConfigOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getTestConfigOutput(soap, &getTestConfigOut, "swad:getTestConfigOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getTestConfigOutput(soap, &getTestConfigOut, "swad:getTestConfigOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getTests(struct soap *soap) +{ struct swad__getTests soap_tmp_swad__getTests; + struct swad__getTestsOutput getTestsOut; + soap_default_swad__getTestsOutput(soap, &getTestsOut); + soap_default_swad__getTests(soap, &soap_tmp_swad__getTests); + if (!soap_get_swad__getTests(soap, &soap_tmp_swad__getTests, "swad:getTests", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getTests(soap, soap_tmp_swad__getTests.wsKey, soap_tmp_swad__getTests.courseCode, soap_tmp_swad__getTests.beginTime, &getTestsOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getTestsOutput(soap, &getTestsOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getTestsOutput(soap, &getTestsOut, "swad:getTestsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getTestsOutput(soap, &getTestsOut, "swad:getTestsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getUsers(struct soap *soap) +{ struct swad__getUsers soap_tmp_swad__getUsers; + struct swad__getUsersOutput getUsersOut; + soap_default_swad__getUsersOutput(soap, &getUsersOut); + soap_default_swad__getUsers(soap, &soap_tmp_swad__getUsers); + if (!soap_get_swad__getUsers(soap, &soap_tmp_swad__getUsers, "swad:getUsers", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getUsers(soap, soap_tmp_swad__getUsers.wsKey, soap_tmp_swad__getUsers.courseCode, soap_tmp_swad__getUsers.groupCode, soap_tmp_swad__getUsers.userRole, &getUsersOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getUsersOutput(soap, &getUsersOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getUsersOutput(soap, &getUsersOut, "swad:getUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getUsersOutput(soap, &getUsersOut, "swad:getUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getAttendanceEvents(struct soap *soap) +{ struct swad__getAttendanceEvents soap_tmp_swad__getAttendanceEvents; + struct swad__getAttendanceEventsOutput getAttendanceEventsOut; + soap_default_swad__getAttendanceEventsOutput(soap, &getAttendanceEventsOut); + soap_default_swad__getAttendanceEvents(soap, &soap_tmp_swad__getAttendanceEvents); + if (!soap_get_swad__getAttendanceEvents(soap, &soap_tmp_swad__getAttendanceEvents, "swad:getAttendanceEvents", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getAttendanceEvents(soap, soap_tmp_swad__getAttendanceEvents.wsKey, soap_tmp_swad__getAttendanceEvents.courseCode, &getAttendanceEventsOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getAttendanceEventsOutput(soap, &getAttendanceEventsOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getAttendanceEventsOutput(soap, &getAttendanceEventsOut, "swad:getAttendanceEventsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getAttendanceEventsOutput(soap, &getAttendanceEventsOut, "swad:getAttendanceEventsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendAttendanceEvent(struct soap *soap) +{ struct swad__sendAttendanceEvent soap_tmp_swad__sendAttendanceEvent; + struct swad__sendAttendanceEventOutput sendAttendanceEventOut; + soap_default_swad__sendAttendanceEventOutput(soap, &sendAttendanceEventOut); + soap_default_swad__sendAttendanceEvent(soap, &soap_tmp_swad__sendAttendanceEvent); + if (!soap_get_swad__sendAttendanceEvent(soap, &soap_tmp_swad__sendAttendanceEvent, "swad:sendAttendanceEvent", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__sendAttendanceEvent(soap, soap_tmp_swad__sendAttendanceEvent.wsKey, soap_tmp_swad__sendAttendanceEvent.attendanceEventCode, soap_tmp_swad__sendAttendanceEvent.courseCode, soap_tmp_swad__sendAttendanceEvent.hidden, soap_tmp_swad__sendAttendanceEvent.startTime, soap_tmp_swad__sendAttendanceEvent.endTime, soap_tmp_swad__sendAttendanceEvent.commentsTeachersVisible, soap_tmp_swad__sendAttendanceEvent.title, soap_tmp_swad__sendAttendanceEvent.text, soap_tmp_swad__sendAttendanceEvent.groups, &sendAttendanceEventOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__sendAttendanceEventOutput(soap, &sendAttendanceEventOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendAttendanceEventOutput(soap, &sendAttendanceEventOut, "swad:sendAttendanceEventOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendAttendanceEventOutput(soap, &sendAttendanceEventOut, "swad:sendAttendanceEventOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getAttendanceUsers(struct soap *soap) +{ struct swad__getAttendanceUsers soap_tmp_swad__getAttendanceUsers; + struct swad__getAttendanceUsersOutput getAttendanceUsersOut; + soap_default_swad__getAttendanceUsersOutput(soap, &getAttendanceUsersOut); + soap_default_swad__getAttendanceUsers(soap, &soap_tmp_swad__getAttendanceUsers); + if (!soap_get_swad__getAttendanceUsers(soap, &soap_tmp_swad__getAttendanceUsers, "swad:getAttendanceUsers", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getAttendanceUsers(soap, soap_tmp_swad__getAttendanceUsers.wsKey, soap_tmp_swad__getAttendanceUsers.attendanceEventCode, &getAttendanceUsersOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getAttendanceUsersOutput(soap, &getAttendanceUsersOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getAttendanceUsersOutput(soap, &getAttendanceUsersOut, "swad:getAttendanceUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getAttendanceUsersOutput(soap, &getAttendanceUsersOut, "swad:getAttendanceUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendAttendanceUsers(struct soap *soap) +{ struct swad__sendAttendanceUsers soap_tmp_swad__sendAttendanceUsers; + struct swad__sendAttendanceUsersOutput sendAttendanceUsersOut; + soap_default_swad__sendAttendanceUsersOutput(soap, &sendAttendanceUsersOut); + soap_default_swad__sendAttendanceUsers(soap, &soap_tmp_swad__sendAttendanceUsers); + if (!soap_get_swad__sendAttendanceUsers(soap, &soap_tmp_swad__sendAttendanceUsers, "swad:sendAttendanceUsers", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__sendAttendanceUsers(soap, soap_tmp_swad__sendAttendanceUsers.wsKey, soap_tmp_swad__sendAttendanceUsers.attendanceEventCode, soap_tmp_swad__sendAttendanceUsers.users, soap_tmp_swad__sendAttendanceUsers.setOthersAsAbsent, &sendAttendanceUsersOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__sendAttendanceUsersOutput(soap, &sendAttendanceUsersOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendAttendanceUsersOutput(soap, &sendAttendanceUsersOut, "swad:sendAttendanceUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendAttendanceUsersOutput(soap, &sendAttendanceUsersOut, "swad:sendAttendanceUsersOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getNotifications(struct soap *soap) +{ struct swad__getNotifications soap_tmp_swad__getNotifications; + struct swad__getNotificationsOutput getNotificationsOut; + soap_default_swad__getNotificationsOutput(soap, &getNotificationsOut); + soap_default_swad__getNotifications(soap, &soap_tmp_swad__getNotifications); + if (!soap_get_swad__getNotifications(soap, &soap_tmp_swad__getNotifications, "swad:getNotifications", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__getNotifications(soap, soap_tmp_swad__getNotifications.wsKey, soap_tmp_swad__getNotifications.beginTime, &getNotificationsOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__getNotificationsOutput(soap, &getNotificationsOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getNotificationsOutput(soap, &getNotificationsOut, "swad:getNotificationsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__getNotificationsOutput(soap, &getNotificationsOut, "swad:getNotificationsOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__markNotificationsAsRead(struct soap *soap) +{ struct swad__markNotificationsAsRead soap_tmp_swad__markNotificationsAsRead; + struct swad__markNotificationsAsReadOutput markNotificationAsReadOut; + soap_default_swad__markNotificationsAsReadOutput(soap, &markNotificationAsReadOut); + soap_default_swad__markNotificationsAsRead(soap, &soap_tmp_swad__markNotificationsAsRead); + if (!soap_get_swad__markNotificationsAsRead(soap, &soap_tmp_swad__markNotificationsAsRead, "swad:markNotificationsAsRead", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__markNotificationsAsRead(soap, soap_tmp_swad__markNotificationsAsRead.wsKey, soap_tmp_swad__markNotificationsAsRead.notifications, &markNotificationAsReadOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__markNotificationsAsReadOutput(soap, &markNotificationAsReadOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__markNotificationsAsReadOutput(soap, &markNotificationAsReadOut, "swad:markNotificationsAsReadOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__markNotificationsAsReadOutput(soap, &markNotificationAsReadOut, "swad:markNotificationsAsReadOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendNotice(struct soap *soap) +{ struct swad__sendNotice soap_tmp_swad__sendNotice; + struct swad__sendNoticeOutput sendNoticeOut; + soap_default_swad__sendNoticeOutput(soap, &sendNoticeOut); + soap_default_swad__sendNotice(soap, &soap_tmp_swad__sendNotice); + if (!soap_get_swad__sendNotice(soap, &soap_tmp_swad__sendNotice, "swad:sendNotice", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__sendNotice(soap, soap_tmp_swad__sendNotice.wsKey, soap_tmp_swad__sendNotice.courseCode, soap_tmp_swad__sendNotice.body, &sendNoticeOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__sendNoticeOutput(soap, &sendNoticeOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendNoticeOutput(soap, &sendNoticeOut, "swad:sendNoticeOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendNoticeOutput(soap, &sendNoticeOut, "swad:sendNoticeOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendMessage(struct soap *soap) +{ struct swad__sendMessage soap_tmp_swad__sendMessage; + struct swad__sendMessageOutput sendMessageOut; + soap_default_swad__sendMessageOutput(soap, &sendMessageOut); + soap_default_swad__sendMessage(soap, &soap_tmp_swad__sendMessage); + if (!soap_get_swad__sendMessage(soap, &soap_tmp_swad__sendMessage, "swad:sendMessage", NULL)) + return soap->error; + if (soap_body_end_in(soap) + || soap_envelope_end_in(soap) + || soap_end_recv(soap)) + return soap->error; + soap->error = swad__sendMessage(soap, soap_tmp_swad__sendMessage.wsKey, soap_tmp_swad__sendMessage.messageCode, soap_tmp_swad__sendMessage.to, soap_tmp_swad__sendMessage.subject, soap_tmp_swad__sendMessage.body, &sendMessageOut); + if (soap->error) + return soap->error; + soap->encodingStyle = NULL; + soap_serializeheader(soap); + soap_serialize_swad__sendMessageOutput(soap, &sendMessageOut); + if (soap_begin_count(soap)) + return soap->error; + if (soap->mode & SOAP_IO_LENGTH) + { if (soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendMessageOutput(soap, &sendMessageOut, "swad:sendMessageOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap)) + return soap->error; + }; + if (soap_end_count(soap) + || soap_response(soap, SOAP_OK) + || soap_envelope_begin_out(soap) + || soap_putheader(soap) + || soap_body_begin_out(soap) + || soap_put_swad__sendMessageOutput(soap, &sendMessageOut, "swad:sendMessageOutput", NULL) + || soap_body_end_out(soap) + || soap_envelope_end_out(soap) + || soap_end_send(soap)) + return soap->error; + return soap_closesock(soap); +} + +#ifdef __cplusplus +} +#endif + +#if defined(__BORLANDC__) +#pragma option pop +#pragma option pop +#endif + +/* End of soapServer.c */ diff --git a/soap/soapServer.o b/soap/soapServer.o new file mode 100644 index 00000000..cce3756e Binary files /dev/null and b/soap/soapServer.o differ diff --git a/soap/soapServerLib.c b/soap/soapServerLib.c new file mode 100644 index 00000000..4cfcafef --- /dev/null +++ b/soap/soapServerLib.c @@ -0,0 +1,20 @@ +/* soapServerLib.c + Generated by gSOAP 2.8.18 from swad_web_service.h + +Copyright(C) 2000-2014, Robert van Engelen, Genivia Inc. All Rights Reserved. +The generated code is released under one of the following licenses: +GPL or Genivia's license for commercial use. +This program is released under the GPL with the additional exemption that +compiling, linking, and/or using OpenSSL is allowed. +*/ + +/** Use this file in your project build instead of the two files soapC.c and soapServer.c. This hides the serializer functions and avoids linking problems when linking multiple clients and servers. */ + +#ifndef WITH_NOGLOBAL +#define WITH_NOGLOBAL +#endif +#define SOAP_FMAC3 static +#include "soapC.c" +#include "soapServer.c" + +/* End of soapServerLib.c */ diff --git a/soap/soapStub.h b/soap/soapStub.h new file mode 100644 index 00000000..94c8ef87 --- /dev/null +++ b/soap/soapStub.h @@ -0,0 +1,1047 @@ +/* soapStub.h + Generated by gSOAP 2.8.18 from swad_web_service.h + +Copyright(C) 2000-2014, Robert van Engelen, Genivia Inc. All Rights Reserved. +The generated code is released under one of the following licenses: +GPL or Genivia's license for commercial use. +This program is released under the GPL with the additional exemption that +compiling, linking, and/or using OpenSSL is allowed. +*/ + +#ifndef soapStub_H +#define soapStub_H +#include "stdsoap2.h" +#if GSOAP_VERSION != 20818 +# error "GSOAP VERSION MISMATCH IN GENERATED CODE: PLEASE REINSTALL PACKAGE" +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/******************************************************************************\ + * * + * Enumerations * + * * +\******************************************************************************/ + + +/******************************************************************************\ + * * + * Types with Custom Serializers * + * * +\******************************************************************************/ + + +/******************************************************************************\ + * * + * Classes and Structs * + * * +\******************************************************************************/ + + +#if 0 /* volatile type: do not declare here, declared elsewhere */ + +#endif + +#ifndef SOAP_TYPE_swad__createAccountOutput +#define SOAP_TYPE_swad__createAccountOutput (7) +/* swad:createAccountOutput */ +struct swad__createAccountOutput +{ + int userCode; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + char *string; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__loginBySessionKeyOutput +#define SOAP_TYPE_swad__loginBySessionKeyOutput (8) +/* swad:loginBySessionKeyOutput */ +struct swad__loginBySessionKeyOutput +{ + int userCode; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + int degreeTypeCode; /* required element of type xsd:int */ + int degreeCode; /* required element of type xsd:int */ + int courseCode; /* required element of type xsd:int */ + char *wsKey; /* optional element of type xsd:string */ + char *userNickname; /* optional element of type xsd:string */ + char *userID; /* optional element of type xsd:string */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ + char *userBirthday; /* optional element of type xsd:string */ + int userRole; /* required element of type xsd:int */ + char *degreeTypeName; /* optional element of type xsd:string */ + char *degreeName; /* optional element of type xsd:string */ + char *courseName; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__loginByUserPasswordKeyOutput +#define SOAP_TYPE_swad__loginByUserPasswordKeyOutput (9) +/* swad:loginByUserPasswordKeyOutput */ +struct swad__loginByUserPasswordKeyOutput +{ + int userCode; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + char *wsKey; /* optional element of type xsd:string */ + char *userNickname; /* optional element of type xsd:string */ + char *userID; /* optional element of type xsd:string */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ + char *userBirthday; /* optional element of type xsd:string */ + int userRole; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getNewPasswordOutput +#define SOAP_TYPE_swad__getNewPasswordOutput (10) +/* swad:getNewPasswordOutput */ +struct swad__getNewPasswordOutput +{ + int success; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__course +#define SOAP_TYPE_swad__course (11) +/* swad:course */ +struct swad__course +{ + int courseCode; /* required element of type xsd:int */ + char *courseShortName; /* optional element of type xsd:string */ + char *courseFullName; /* optional element of type xsd:string */ + int userRole; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__coursesArray +#define SOAP_TYPE_swad__coursesArray (12) +/* Sequence of swad:coursesArray schema type: */ +struct swad__coursesArray +{ + struct swad__course *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getCoursesOutput +#define SOAP_TYPE_swad__getCoursesOutput (14) +/* swad:getCoursesOutput */ +struct swad__getCoursesOutput +{ + int numCourses; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__coursesArray coursesArray; /* required element of type swad:coursesArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getCourseInfoOutput +#define SOAP_TYPE_swad__getCourseInfoOutput (15) +/* swad:getCourseInfoOutput */ +struct swad__getCourseInfoOutput +{ + char *infoSrc; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* optional element of type xsd:string */ + char *infoTxt; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__groupType +#define SOAP_TYPE_swad__groupType (16) +/* swad:groupType */ +struct swad__groupType +{ + int groupTypeCode; /* required element of type xsd:int */ + char *groupTypeName; /* optional element of type xsd:string */ + int mandatory; /* required element of type xsd:int */ + int multiple; /* required element of type xsd:int */ + long openTime; /* required element of type xsd:long */ +}; +#endif + +#ifndef SOAP_TYPE_swad__groupTypesArray +#define SOAP_TYPE_swad__groupTypesArray (18) +/* Sequence of swad:groupTypesArray schema type: */ +struct swad__groupTypesArray +{ + struct swad__groupType *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getGroupTypesOutput +#define SOAP_TYPE_swad__getGroupTypesOutput (20) +/* swad:getGroupTypesOutput */ +struct swad__getGroupTypesOutput +{ + int numGroupTypes; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__groupTypesArray groupTypesArray; /* required element of type swad:groupTypesArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__group +#define SOAP_TYPE_swad__group (21) +/* swad:group */ +struct swad__group +{ + int groupCode; /* required element of type xsd:int */ + char *groupName; /* optional element of type xsd:string */ + int groupTypeCode; /* required element of type xsd:int */ + char *groupTypeName; /* optional element of type xsd:string */ + int open; /* required element of type xsd:int */ + int maxStudents; /* required element of type xsd:int */ + int numStudents; /* required element of type xsd:int */ + int fileZones; /* required element of type xsd:int */ + int member; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__groupsArray +#define SOAP_TYPE_swad__groupsArray (22) +/* Sequence of swad:groupsArray schema type: */ +struct swad__groupsArray +{ + struct swad__group *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getGroupsOutput +#define SOAP_TYPE_swad__getGroupsOutput (24) +/* swad:getGroupsOutput */ +struct swad__getGroupsOutput +{ + int numGroups; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__groupsArray groupsArray; /* required element of type swad:groupsArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendMyGroupsOutput +#define SOAP_TYPE_swad__sendMyGroupsOutput (25) +/* swad:sendMyGroupsOutput */ +struct swad__sendMyGroupsOutput +{ + int success; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + int numGroups; /* required element of type xsd:int */ + struct swad__groupsArray groupsArray; /* required element of type swad:groupsArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__notification +#define SOAP_TYPE_swad__notification (26) +/* swad:notification */ +struct swad__notification +{ + int notifCode; /* required element of type xsd:int */ + char *eventType; /* optional element of type xsd:string */ + int eventCode; /* required element of type xsd:int */ + long eventTime; /* required element of type xsd:long */ + char *userNickname; /* optional element of type xsd:string */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ + char *location; /* optional element of type xsd:string */ + int status; /* required element of type xsd:int */ + char *summary; /* optional element of type xsd:string */ + char *content; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__notificationsArray +#define SOAP_TYPE_swad__notificationsArray (27) +/* Sequence of swad:notificationsArray schema type: */ +struct swad__notificationsArray +{ + struct swad__notification *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getNotificationsOutput +#define SOAP_TYPE_swad__getNotificationsOutput (29) +/* swad:getNotificationsOutput */ +struct swad__getNotificationsOutput +{ + int numNotifications; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__notificationsArray notificationsArray; /* required element of type swad:notificationsArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__markNotificationsAsReadOutput +#define SOAP_TYPE_swad__markNotificationsAsReadOutput (30) +/* swad:markNotificationsAsReadOutput */ +struct swad__markNotificationsAsReadOutput +{ + int numNotifications; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getTestConfigOutput +#define SOAP_TYPE_swad__getTestConfigOutput (31) +/* swad:getTestConfigOutput */ +struct swad__getTestConfigOutput +{ + int pluggable; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + int numQuestions; /* required element of type xsd:int */ + int minQuestions; /* required element of type xsd:int */ + int defQuestions; /* required element of type xsd:int */ + int maxQuestions; /* required element of type xsd:int */ + char *feedback; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__tag +#define SOAP_TYPE_swad__tag (32) +/* swad:tag */ +struct swad__tag +{ + int tagCode; /* required element of type xsd:int */ + char *tagText; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__tagsArray +#define SOAP_TYPE_swad__tagsArray (33) +/* Sequence of swad:tagsArray schema type: */ +struct swad__tagsArray +{ + struct swad__tag *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__question +#define SOAP_TYPE_swad__question (35) +/* swad:question */ +struct swad__question +{ + int questionCode; /* required element of type xsd:int */ + char *answerType; /* optional element of type xsd:string */ + int shuffle; /* required element of type xsd:int */ + char *stem; /* optional element of type xsd:string */ + char *feedback; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__questionsArray +#define SOAP_TYPE_swad__questionsArray (36) +/* Sequence of swad:questionsArray schema type: */ +struct swad__questionsArray +{ + struct swad__question *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__answer +#define SOAP_TYPE_swad__answer (38) +/* swad:answer */ +struct swad__answer +{ + int questionCode; /* required element of type xsd:int */ + int answerIndex; /* required element of type xsd:int */ + int correct; /* required element of type xsd:int */ + char *answerText; /* optional element of type xsd:string */ + char *answerFeedback; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__answersArray +#define SOAP_TYPE_swad__answersArray (39) +/* Sequence of swad:answersArray schema type: */ +struct swad__answersArray +{ + struct swad__answer *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__questionTag +#define SOAP_TYPE_swad__questionTag (41) +/* swad:questionTag */ +struct swad__questionTag +{ + int questionCode; /* required element of type xsd:int */ + int tagCode; /* required element of type xsd:int */ + int tagIndex; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__questionTagsArray +#define SOAP_TYPE_swad__questionTagsArray (42) +/* Sequence of swad:questionTagsArray schema type: */ +struct swad__questionTagsArray +{ + struct swad__questionTag *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getTestsOutput +#define SOAP_TYPE_swad__getTestsOutput (44) +/* swad:getTestsOutput */ +struct swad__getTestsOutput +{ + struct swad__tagsArray tagsArray; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type swad:tagsArray */ + struct swad__questionsArray questionsArray; /* required element of type swad:questionsArray */ + struct swad__answersArray answersArray; /* required element of type swad:answersArray */ + struct swad__questionTagsArray questionTagsArray; /* required element of type swad:questionTagsArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__user +#define SOAP_TYPE_swad__user (45) +/* swad:user */ +struct swad__user +{ + int userCode; /* required element of type xsd:int */ + char *userNickname; /* optional element of type xsd:string */ + char *userID; /* optional element of type xsd:string */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__usersArray +#define SOAP_TYPE_swad__usersArray (46) +/* Sequence of swad:usersArray schema type: */ +struct swad__usersArray +{ + struct swad__user *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getUsersOutput +#define SOAP_TYPE_swad__getUsersOutput (48) +/* swad:getUsersOutput */ +struct swad__getUsersOutput +{ + int numUsers; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__usersArray usersArray; /* required element of type swad:usersArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__attendanceEvent +#define SOAP_TYPE_swad__attendanceEvent (49) +/* swad:attendanceEvent */ +struct swad__attendanceEvent +{ + int attendanceEventCode; /* required element of type xsd:int */ + int hidden; /* required element of type xsd:int */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ + int startTime; /* required element of type xsd:int */ + int endTime; /* required element of type xsd:int */ + int commentsTeachersVisible; /* required element of type xsd:int */ + char *title; /* optional element of type xsd:string */ + char *text; /* optional element of type xsd:string */ + char *groups; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__attendanceEventsArray +#define SOAP_TYPE_swad__attendanceEventsArray (50) +/* Sequence of swad:attendanceEventsArray schema type: */ +struct swad__attendanceEventsArray +{ + struct swad__attendanceEvent *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getAttendanceEventsOutput +#define SOAP_TYPE_swad__getAttendanceEventsOutput (52) +/* swad:getAttendanceEventsOutput */ +struct swad__getAttendanceEventsOutput +{ + int numEvents; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__attendanceEventsArray eventsArray; /* required element of type swad:attendanceEventsArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendAttendanceEventOutput +#define SOAP_TYPE_swad__sendAttendanceEventOutput (53) +/* swad:sendAttendanceEventOutput */ +struct swad__sendAttendanceEventOutput +{ + int attendanceEventCode; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__attendanceUser +#define SOAP_TYPE_swad__attendanceUser (54) +/* swad:attendanceUser */ +struct swad__attendanceUser +{ + int userCode; /* required element of type xsd:int */ + char *userNickname; /* optional element of type xsd:string */ + char *userID; /* optional element of type xsd:string */ + char *userSurname1; /* optional element of type xsd:string */ + char *userSurname2; /* optional element of type xsd:string */ + char *userFirstname; /* optional element of type xsd:string */ + char *userPhoto; /* optional element of type xsd:string */ + int present; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__attendanceUsersArray +#define SOAP_TYPE_swad__attendanceUsersArray (55) +/* Sequence of swad:attendanceUsersArray schema type: */ +struct swad__attendanceUsersArray +{ + struct swad__attendanceUser *__ptr; + int __size; +}; +#endif + +#ifndef SOAP_TYPE_swad__getAttendanceUsersOutput +#define SOAP_TYPE_swad__getAttendanceUsersOutput (57) +/* swad:getAttendanceUsersOutput */ +struct swad__getAttendanceUsersOutput +{ + int numUsers; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__attendanceUsersArray usersArray; /* required element of type swad:attendanceUsersArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendAttendanceUsersOutput +#define SOAP_TYPE_swad__sendAttendanceUsersOutput (58) +/* swad:sendAttendanceUsersOutput */ +struct swad__sendAttendanceUsersOutput +{ + int success; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + int numUsers; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getDirectoryTreeOutput +#define SOAP_TYPE_swad__getDirectoryTreeOutput (59) +/* swad:getDirectoryTreeOutput */ +struct swad__getDirectoryTreeOutput +{ + char *tree; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getFileOutput +#define SOAP_TYPE_swad__getFileOutput (60) +/* swad:getFileOutput */ +struct swad__getFileOutput +{ + char *fileName; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* optional element of type xsd:string */ + char *URL; /* optional element of type xsd:string */ + int size; /* required element of type xsd:int */ + int time; /* required element of type xsd:int */ + char *license; /* optional element of type xsd:string */ + char *publisherName; /* optional element of type xsd:string */ + char *publisherPhoto; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getMarksOutput +#define SOAP_TYPE_swad__getMarksOutput (61) +/* swad:getMarksOutput */ +struct swad__getMarksOutput +{ + char *content; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendNoticeOutput +#define SOAP_TYPE_swad__sendNoticeOutput (62) +/* swad:sendNoticeOutput */ +struct swad__sendNoticeOutput +{ + int noticeCode; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendMessageOutput +#define SOAP_TYPE_swad__sendMessageOutput (63) +/* swad:sendMessageOutput */ +struct swad__sendMessageOutput +{ + int numUsers; /* SOAP 1.2 RPC return element (when namespace qualified) */ /* required element of type xsd:int */ + struct swad__usersArray usersArray; /* required element of type swad:usersArray */ +}; +#endif + +#ifndef SOAP_TYPE_swad__createAccount +#define SOAP_TYPE_swad__createAccount (66) +/* swad:createAccount */ +struct swad__createAccount +{ + char *userNickname; /* optional element of type xsd:string */ + char *userEmail; /* optional element of type xsd:string */ + char *userID; /* optional element of type xsd:string */ + char *userPassword; /* optional element of type xsd:string */ + char *appKey; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__loginByUserPasswordKey +#define SOAP_TYPE_swad__loginByUserPasswordKey (69) +/* swad:loginByUserPasswordKey */ +struct swad__loginByUserPasswordKey +{ + char *userID; /* optional element of type xsd:string */ + char *userPassword; /* optional element of type xsd:string */ + char *appKey; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__loginBySessionKey +#define SOAP_TYPE_swad__loginBySessionKey (72) +/* swad:loginBySessionKey */ +struct swad__loginBySessionKey +{ + char *sessionID; /* optional element of type xsd:string */ + char *appKey; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getNewPassword +#define SOAP_TYPE_swad__getNewPassword (75) +/* swad:getNewPassword */ +struct swad__getNewPassword +{ + char *userID; /* optional element of type xsd:string */ + char *appKey; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getCourses +#define SOAP_TYPE_swad__getCourses (78) +/* swad:getCourses */ +struct swad__getCourses +{ + char *wsKey; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getCourseInfo +#define SOAP_TYPE_swad__getCourseInfo (81) +/* swad:getCourseInfo */ +struct swad__getCourseInfo +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + char *infoType; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getGroupTypes +#define SOAP_TYPE_swad__getGroupTypes (84) +/* swad:getGroupTypes */ +struct swad__getGroupTypes +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getGroups +#define SOAP_TYPE_swad__getGroups (87) +/* swad:getGroups */ +struct swad__getGroups +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendMyGroups +#define SOAP_TYPE_swad__sendMyGroups (90) +/* swad:sendMyGroups */ +struct swad__sendMyGroups +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + char *myGroups; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getDirectoryTree +#define SOAP_TYPE_swad__getDirectoryTree (93) +/* swad:getDirectoryTree */ +struct swad__getDirectoryTree +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + int groupCode; /* required element of type xsd:int */ + int treeCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getFile +#define SOAP_TYPE_swad__getFile (96) +/* swad:getFile */ +struct swad__getFile +{ + char *wsKey; /* optional element of type xsd:string */ + int fileCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getMarks +#define SOAP_TYPE_swad__getMarks (99) +/* swad:getMarks */ +struct swad__getMarks +{ + char *wsKey; /* optional element of type xsd:string */ + int fileCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getTestConfig +#define SOAP_TYPE_swad__getTestConfig (102) +/* swad:getTestConfig */ +struct swad__getTestConfig +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getTests +#define SOAP_TYPE_swad__getTests (105) +/* swad:getTests */ +struct swad__getTests +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + long beginTime; /* required element of type xsd:long */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getUsers +#define SOAP_TYPE_swad__getUsers (108) +/* swad:getUsers */ +struct swad__getUsers +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + int groupCode; /* required element of type xsd:int */ + int userRole; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getAttendanceEvents +#define SOAP_TYPE_swad__getAttendanceEvents (111) +/* swad:getAttendanceEvents */ +struct swad__getAttendanceEvents +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendAttendanceEvent +#define SOAP_TYPE_swad__sendAttendanceEvent (114) +/* swad:sendAttendanceEvent */ +struct swad__sendAttendanceEvent +{ + char *wsKey; /* optional element of type xsd:string */ + int attendanceEventCode; /* required element of type xsd:int */ + int courseCode; /* required element of type xsd:int */ + int hidden; /* required element of type xsd:int */ + int startTime; /* required element of type xsd:int */ + int endTime; /* required element of type xsd:int */ + int commentsTeachersVisible; /* required element of type xsd:int */ + char *title; /* optional element of type xsd:string */ + char *text; /* optional element of type xsd:string */ + char *groups; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getAttendanceUsers +#define SOAP_TYPE_swad__getAttendanceUsers (117) +/* swad:getAttendanceUsers */ +struct swad__getAttendanceUsers +{ + char *wsKey; /* optional element of type xsd:string */ + int attendanceEventCode; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendAttendanceUsers +#define SOAP_TYPE_swad__sendAttendanceUsers (120) +/* swad:sendAttendanceUsers */ +struct swad__sendAttendanceUsers +{ + char *wsKey; /* optional element of type xsd:string */ + int attendanceEventCode; /* required element of type xsd:int */ + char *users; /* optional element of type xsd:string */ + int setOthersAsAbsent; /* required element of type xsd:int */ +}; +#endif + +#ifndef SOAP_TYPE_swad__getNotifications +#define SOAP_TYPE_swad__getNotifications (123) +/* swad:getNotifications */ +struct swad__getNotifications +{ + char *wsKey; /* optional element of type xsd:string */ + long beginTime; /* required element of type xsd:long */ +}; +#endif + +#ifndef SOAP_TYPE_swad__markNotificationsAsRead +#define SOAP_TYPE_swad__markNotificationsAsRead (126) +/* swad:markNotificationsAsRead */ +struct swad__markNotificationsAsRead +{ + char *wsKey; /* optional element of type xsd:string */ + char *notifications; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendNotice +#define SOAP_TYPE_swad__sendNotice (129) +/* swad:sendNotice */ +struct swad__sendNotice +{ + char *wsKey; /* optional element of type xsd:string */ + int courseCode; /* required element of type xsd:int */ + char *body; /* optional element of type xsd:string */ +}; +#endif + +#ifndef SOAP_TYPE_swad__sendMessage +#define SOAP_TYPE_swad__sendMessage (132) +/* swad:sendMessage */ +struct swad__sendMessage +{ + char *wsKey; /* optional element of type xsd:string */ + int messageCode; /* required element of type xsd:int */ + char *to; /* optional element of type xsd:string */ + char *subject; /* optional element of type xsd:string */ + char *body; /* optional element of type xsd:string */ +}; +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Header +#define SOAP_TYPE_SOAP_ENV__Header (133) +/* SOAP Header: */ +struct SOAP_ENV__Header +{ +#ifdef WITH_NOEMPTYSTRUCT + char dummy; /* dummy member to enable compilation */ +#endif +}; +#endif + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Code +#define SOAP_TYPE_SOAP_ENV__Code (134) +/* SOAP Fault Code: */ +struct SOAP_ENV__Code +{ + char *SOAP_ENV__Value; /* optional element of type xsd:QName */ + struct SOAP_ENV__Code *SOAP_ENV__Subcode; /* optional element of type SOAP-ENV:Code */ +}; +#endif + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Detail +#define SOAP_TYPE_SOAP_ENV__Detail (136) +/* SOAP-ENV:Detail */ +struct SOAP_ENV__Detail +{ + char *__any; + int __type; /* any type of element (defined below) */ + void *fault; /* transient */ +}; +#endif + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Reason +#define SOAP_TYPE_SOAP_ENV__Reason (139) +/* SOAP-ENV:Reason */ +struct SOAP_ENV__Reason +{ + char *SOAP_ENV__Text; /* optional element of type xsd:string */ +}; +#endif + +#endif + +#ifndef WITH_NOGLOBAL + +#ifndef SOAP_TYPE_SOAP_ENV__Fault +#define SOAP_TYPE_SOAP_ENV__Fault (140) +/* SOAP Fault: */ +struct SOAP_ENV__Fault +{ + char *faultcode; /* optional element of type xsd:QName */ + char *faultstring; /* optional element of type xsd:string */ + char *faultactor; /* optional element of type xsd:string */ + struct SOAP_ENV__Detail *detail; /* optional element of type SOAP-ENV:Detail */ + struct SOAP_ENV__Code *SOAP_ENV__Code; /* optional element of type SOAP-ENV:Code */ + struct SOAP_ENV__Reason *SOAP_ENV__Reason; /* optional element of type SOAP-ENV:Reason */ + char *SOAP_ENV__Node; /* optional element of type xsd:string */ + char *SOAP_ENV__Role; /* optional element of type xsd:string */ + struct SOAP_ENV__Detail *SOAP_ENV__Detail; /* optional element of type SOAP-ENV:Detail */ +}; +#endif + +#endif + +/******************************************************************************\ + * * + * Typedefs * + * * +\******************************************************************************/ + +#ifndef SOAP_TYPE__QName +#define SOAP_TYPE__QName (5) +typedef char *_QName; +#endif + +#ifndef SOAP_TYPE__XML +#define SOAP_TYPE__XML (6) +typedef char *_XML; +#endif + + +/******************************************************************************\ + * * + * Externals * + * * +\******************************************************************************/ + + +/******************************************************************************\ + * * + * Server-Side Operations * + * * +\******************************************************************************/ + + +SOAP_FMAC5 int SOAP_FMAC6 swad__createAccount(struct soap*, char *userNickname, char *userEmail, char *userID, char *userPassword, char *appKey, struct swad__createAccountOutput *createAccountOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__loginByUserPasswordKey(struct soap*, char *userID, char *userPassword, char *appKey, struct swad__loginByUserPasswordKeyOutput *loginByUserPasswordKeyOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__loginBySessionKey(struct soap*, char *sessionID, char *appKey, struct swad__loginBySessionKeyOutput *loginBySessionKeyOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getNewPassword(struct soap*, char *userID, char *appKey, struct swad__getNewPasswordOutput *getNewPasswordOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getCourses(struct soap*, char *wsKey, struct swad__getCoursesOutput *getCoursesOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getCourseInfo(struct soap*, char *wsKey, int courseCode, char *infoType, struct swad__getCourseInfoOutput *getCourseInfoOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getGroupTypes(struct soap*, char *wsKey, int courseCode, struct swad__getGroupTypesOutput *getGroupTypesOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getGroups(struct soap*, char *wsKey, int courseCode, struct swad__getGroupsOutput *getGroupsOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__sendMyGroups(struct soap*, char *wsKey, int courseCode, char *myGroups, struct swad__sendMyGroupsOutput *sendMyGroupsOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getDirectoryTree(struct soap*, char *wsKey, int courseCode, int groupCode, int treeCode, struct swad__getDirectoryTreeOutput *getDirectoryTreeOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getFile(struct soap*, char *wsKey, int fileCode, struct swad__getFileOutput *getFileOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getMarks(struct soap*, char *wsKey, int fileCode, struct swad__getMarksOutput *getMarksOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getTestConfig(struct soap*, char *wsKey, int courseCode, struct swad__getTestConfigOutput *getTestConfigOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getTests(struct soap*, char *wsKey, int courseCode, long beginTime, struct swad__getTestsOutput *getTestsOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getUsers(struct soap*, char *wsKey, int courseCode, int groupCode, int userRole, struct swad__getUsersOutput *getUsersOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getAttendanceEvents(struct soap*, char *wsKey, int courseCode, struct swad__getAttendanceEventsOutput *getAttendanceEventsOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__sendAttendanceEvent(struct soap*, char *wsKey, int attendanceEventCode, int courseCode, int hidden, int startTime, int endTime, int commentsTeachersVisible, char *title, char *text, char *groups, struct swad__sendAttendanceEventOutput *sendAttendanceEventOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getAttendanceUsers(struct soap*, char *wsKey, int attendanceEventCode, struct swad__getAttendanceUsersOutput *getAttendanceUsersOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__sendAttendanceUsers(struct soap*, char *wsKey, int attendanceEventCode, char *users, int setOthersAsAbsent, struct swad__sendAttendanceUsersOutput *sendAttendanceUsersOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__getNotifications(struct soap*, char *wsKey, long beginTime, struct swad__getNotificationsOutput *getNotificationsOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__markNotificationsAsRead(struct soap*, char *wsKey, char *notifications, struct swad__markNotificationsAsReadOutput *markNotificationAsReadOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__sendNotice(struct soap*, char *wsKey, int courseCode, char *body, struct swad__sendNoticeOutput *sendNoticeOut); + +SOAP_FMAC5 int SOAP_FMAC6 swad__sendMessage(struct soap*, char *wsKey, int messageCode, char *to, char *subject, char *body, struct swad__sendMessageOutput *sendMessageOut); + +/******************************************************************************\ + * * + * Server-Side Skeletons to Invoke Service Operations * + * * +\******************************************************************************/ + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_request(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__createAccount(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__loginByUserPasswordKey(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__loginBySessionKey(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getNewPassword(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getCourses(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getCourseInfo(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getGroupTypes(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getGroups(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendMyGroups(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getDirectoryTree(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getFile(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getMarks(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getTestConfig(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getTests(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getUsers(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getAttendanceEvents(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendAttendanceEvent(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getAttendanceUsers(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendAttendanceUsers(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__getNotifications(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__markNotificationsAsRead(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendNotice(struct soap*); + +SOAP_FMAC5 int SOAP_FMAC6 soap_serve_swad__sendMessage(struct soap*); + +#ifdef __cplusplus +} +#endif + +#endif + +/* End of soapStub.h */ diff --git a/soap/swad.createAccount.req.xml b/soap/swad.createAccount.req.xml new file mode 100644 index 00000000..e5113c7e --- /dev/null +++ b/soap/swad.createAccount.req.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + diff --git a/soap/swad.createAccount.res.xml b/soap/swad.createAccount.res.xml new file mode 100644 index 00000000..32fd972f --- /dev/null +++ b/soap/swad.createAccount.res.xml @@ -0,0 +1,14 @@ + + + + + 0 + + + + diff --git a/soap/swad.getAttendanceEvents.req.xml b/soap/swad.getAttendanceEvents.req.xml new file mode 100644 index 00000000..a54d2b45 --- /dev/null +++ b/soap/swad.getAttendanceEvents.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getAttendanceEvents.res.xml b/soap/swad.getAttendanceEvents.res.xml new file mode 100644 index 00000000..95f54afd --- /dev/null +++ b/soap/swad.getAttendanceEvents.res.xml @@ -0,0 +1,29 @@ + + + + + 0 + + + 0 + 0 + + + + + 0 + 0 + 0 + + + + + + + + diff --git a/soap/swad.getAttendanceUsers.req.xml b/soap/swad.getAttendanceUsers.req.xml new file mode 100644 index 00000000..e8512792 --- /dev/null +++ b/soap/swad.getAttendanceUsers.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getAttendanceUsers.res.xml b/soap/swad.getAttendanceUsers.res.xml new file mode 100644 index 00000000..25f39494 --- /dev/null +++ b/soap/swad.getAttendanceUsers.res.xml @@ -0,0 +1,25 @@ + + + + + 0 + + + 0 + + + + + + + 0 + + + + + diff --git a/soap/swad.getCourseInfo.req.xml b/soap/swad.getCourseInfo.req.xml new file mode 100644 index 00000000..33a6edec --- /dev/null +++ b/soap/swad.getCourseInfo.req.xml @@ -0,0 +1,15 @@ + + + + + + 0 + + + + diff --git a/soap/swad.getCourseInfo.res.xml b/soap/swad.getCourseInfo.res.xml new file mode 100644 index 00000000..96c3f927 --- /dev/null +++ b/soap/swad.getCourseInfo.res.xml @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/soap/swad.getCourses.req.xml b/soap/swad.getCourses.req.xml new file mode 100644 index 00000000..85d17d81 --- /dev/null +++ b/soap/swad.getCourses.req.xml @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/soap/swad.getCourses.res.xml b/soap/swad.getCourses.res.xml new file mode 100644 index 00000000..068167d7 --- /dev/null +++ b/soap/swad.getCourses.res.xml @@ -0,0 +1,21 @@ + + + + + 0 + + + 0 + + + 0 + + + + + diff --git a/soap/swad.getDirectoryTree.req.xml b/soap/swad.getDirectoryTree.req.xml new file mode 100644 index 00000000..11df56bf --- /dev/null +++ b/soap/swad.getDirectoryTree.req.xml @@ -0,0 +1,16 @@ + + + + + + 0 + 0 + 0 + + + diff --git a/soap/swad.getDirectoryTree.res.xml b/soap/swad.getDirectoryTree.res.xml new file mode 100644 index 00000000..7e4d9627 --- /dev/null +++ b/soap/swad.getDirectoryTree.res.xml @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/soap/swad.getFile.req.xml b/soap/swad.getFile.req.xml new file mode 100644 index 00000000..e82d9559 --- /dev/null +++ b/soap/swad.getFile.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getFile.res.xml b/soap/swad.getFile.res.xml new file mode 100644 index 00000000..bbb821b6 --- /dev/null +++ b/soap/swad.getFile.res.xml @@ -0,0 +1,19 @@ + + + + + + + 0 + + + + + + + diff --git a/soap/swad.getGroupTypes.req.xml b/soap/swad.getGroupTypes.req.xml new file mode 100644 index 00000000..86056700 --- /dev/null +++ b/soap/swad.getGroupTypes.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getGroupTypes.res.xml b/soap/swad.getGroupTypes.res.xml new file mode 100644 index 00000000..c93c47cd --- /dev/null +++ b/soap/swad.getGroupTypes.res.xml @@ -0,0 +1,22 @@ + + + + + 0 + + + 0 + + 0 + 0 + 0 + + + + + diff --git a/soap/swad.getGroups.req.xml b/soap/swad.getGroups.req.xml new file mode 100644 index 00000000..4bd00472 --- /dev/null +++ b/soap/swad.getGroups.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getGroups.res.xml b/soap/swad.getGroups.res.xml new file mode 100644 index 00000000..a00c42c2 --- /dev/null +++ b/soap/swad.getGroups.res.xml @@ -0,0 +1,26 @@ + + + + + 0 + + + 0 + + 0 + + 0 + 0 + 0 + 0 + 0 + + + + + diff --git a/soap/swad.getMarks.req.xml b/soap/swad.getMarks.req.xml new file mode 100644 index 00000000..88ad9441 --- /dev/null +++ b/soap/swad.getMarks.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getMarks.res.xml b/soap/swad.getMarks.res.xml new file mode 100644 index 00000000..dc63f461 --- /dev/null +++ b/soap/swad.getMarks.res.xml @@ -0,0 +1,13 @@ + + + + + + + + diff --git a/soap/swad.getNewPassword.req.xml b/soap/swad.getNewPassword.req.xml new file mode 100644 index 00000000..a3c0a968 --- /dev/null +++ b/soap/swad.getNewPassword.req.xml @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/soap/swad.getNewPassword.res.xml b/soap/swad.getNewPassword.res.xml new file mode 100644 index 00000000..cf0a982d --- /dev/null +++ b/soap/swad.getNewPassword.res.xml @@ -0,0 +1,13 @@ + + + + + 0 + + + diff --git a/soap/swad.getNotifications.req.xml b/soap/swad.getNotifications.req.xml new file mode 100644 index 00000000..981ebd26 --- /dev/null +++ b/soap/swad.getNotifications.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getNotifications.res.xml b/soap/swad.getNotifications.res.xml new file mode 100644 index 00000000..e2b62108 --- /dev/null +++ b/soap/swad.getNotifications.res.xml @@ -0,0 +1,30 @@ + + + + + 0 + + + 0 + + 0 + 0 + + + + + + + 0 + + + + + + + diff --git a/soap/swad.getTestConfig.req.xml b/soap/swad.getTestConfig.req.xml new file mode 100644 index 00000000..1405283d --- /dev/null +++ b/soap/swad.getTestConfig.req.xml @@ -0,0 +1,14 @@ + + + + + + 0 + + + diff --git a/soap/swad.getTestConfig.res.xml b/soap/swad.getTestConfig.res.xml new file mode 100644 index 00000000..de632e06 --- /dev/null +++ b/soap/swad.getTestConfig.res.xml @@ -0,0 +1,18 @@ + + + + + 0 + 0 + 0 + 0 + 0 + + + + diff --git a/soap/swad.getTests.req.xml b/soap/swad.getTests.req.xml new file mode 100644 index 00000000..9bdc8bd8 --- /dev/null +++ b/soap/swad.getTests.req.xml @@ -0,0 +1,15 @@ + + + + + + 0 + 0 + + + diff --git a/soap/swad.getTests.res.xml b/soap/swad.getTests.res.xml new file mode 100644 index 00000000..9af2c477 --- /dev/null +++ b/soap/swad.getTests.res.xml @@ -0,0 +1,43 @@ + + + + + + + 0 + + + + + + 0 + + 0 + + + + + + + 0 + 0 + 0 + + + + + + + 0 + 0 + 0 + + + + + diff --git a/soap/swad.getUsers.req.xml b/soap/swad.getUsers.req.xml new file mode 100644 index 00000000..b6c40588 --- /dev/null +++ b/soap/swad.getUsers.req.xml @@ -0,0 +1,16 @@ + + + + + + 0 + 0 + 0 + + + diff --git a/soap/swad.getUsers.res.xml b/soap/swad.getUsers.res.xml new file mode 100644 index 00000000..edc65dd6 --- /dev/null +++ b/soap/swad.getUsers.res.xml @@ -0,0 +1,24 @@ + + + + + 0 + + + 0 + + + + + + + + + + + diff --git a/soap/swad.loginBySessionKey.req.xml b/soap/swad.loginBySessionKey.req.xml new file mode 100644 index 00000000..53699db0 --- /dev/null +++ b/soap/swad.loginBySessionKey.req.xml @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/soap/swad.loginBySessionKey.res.xml b/soap/swad.loginBySessionKey.res.xml new file mode 100644 index 00000000..80f28a3a --- /dev/null +++ b/soap/swad.loginBySessionKey.res.xml @@ -0,0 +1,28 @@ + + + + + 0 + 0 + 0 + 0 + + + + + + + + + 0 + + + + + + diff --git a/soap/swad.loginByUserPasswordKey.req.xml b/soap/swad.loginByUserPasswordKey.req.xml new file mode 100644 index 00000000..7ba65073 --- /dev/null +++ b/soap/swad.loginByUserPasswordKey.req.xml @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/soap/swad.loginByUserPasswordKey.res.xml b/soap/swad.loginByUserPasswordKey.res.xml new file mode 100644 index 00000000..12a186f9 --- /dev/null +++ b/soap/swad.loginByUserPasswordKey.res.xml @@ -0,0 +1,22 @@ + + + + + 0 + + + + + + + + + 0 + + + diff --git a/soap/swad.markNotificationsAsRead.req.xml b/soap/swad.markNotificationsAsRead.req.xml new file mode 100644 index 00000000..b1b5e806 --- /dev/null +++ b/soap/swad.markNotificationsAsRead.req.xml @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/soap/swad.markNotificationsAsRead.res.xml b/soap/swad.markNotificationsAsRead.res.xml new file mode 100644 index 00000000..f41a7192 --- /dev/null +++ b/soap/swad.markNotificationsAsRead.res.xml @@ -0,0 +1,13 @@ + + + + + 0 + + + diff --git a/soap/swad.nsmap b/soap/swad.nsmap new file mode 100644 index 00000000..14510c7d --- /dev/null +++ b/soap/swad.nsmap @@ -0,0 +1,11 @@ + +#include "soapH.h" +SOAP_NMAC struct Namespace namespaces[] = +{ + {"SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/", "http://www.w3.org/*/soap-envelope", NULL}, + {"SOAP-ENC", "http://schemas.xmlsoap.org/soap/encoding/", "http://www.w3.org/*/soap-encoding", NULL}, + {"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL}, + {"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL}, + {"swad", "urn:swad", NULL, NULL}, + {NULL, NULL, NULL, NULL} +}; diff --git a/soap/swad.sendAttendanceEvent.req.xml b/soap/swad.sendAttendanceEvent.req.xml new file mode 100644 index 00000000..3442eaff --- /dev/null +++ b/soap/swad.sendAttendanceEvent.req.xml @@ -0,0 +1,22 @@ + + + + + + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + diff --git a/soap/swad.sendAttendanceEvent.res.xml b/soap/swad.sendAttendanceEvent.res.xml new file mode 100644 index 00000000..6a683b9d --- /dev/null +++ b/soap/swad.sendAttendanceEvent.res.xml @@ -0,0 +1,13 @@ + + + + + 0 + + + diff --git a/soap/swad.sendAttendanceUsers.req.xml b/soap/swad.sendAttendanceUsers.req.xml new file mode 100644 index 00000000..6e6e0be3 --- /dev/null +++ b/soap/swad.sendAttendanceUsers.req.xml @@ -0,0 +1,16 @@ + + + + + + 0 + + 0 + + + diff --git a/soap/swad.sendAttendanceUsers.res.xml b/soap/swad.sendAttendanceUsers.res.xml new file mode 100644 index 00000000..c79523f0 --- /dev/null +++ b/soap/swad.sendAttendanceUsers.res.xml @@ -0,0 +1,14 @@ + + + + + 0 + 0 + + + diff --git a/soap/swad.sendMessage.req.xml b/soap/swad.sendMessage.req.xml new file mode 100644 index 00000000..11ec1f10 --- /dev/null +++ b/soap/swad.sendMessage.req.xml @@ -0,0 +1,17 @@ + + + + + + 0 + + + + + + diff --git a/soap/swad.sendMessage.res.xml b/soap/swad.sendMessage.res.xml new file mode 100644 index 00000000..3b75eb3f --- /dev/null +++ b/soap/swad.sendMessage.res.xml @@ -0,0 +1,24 @@ + + + + + 0 + + + 0 + + + + + + + + + + + diff --git a/soap/swad.sendMyGroups.req.xml b/soap/swad.sendMyGroups.req.xml new file mode 100644 index 00000000..3b3fdd4d --- /dev/null +++ b/soap/swad.sendMyGroups.req.xml @@ -0,0 +1,15 @@ + + + + + + 0 + + + + diff --git a/soap/swad.sendMyGroups.res.xml b/soap/swad.sendMyGroups.res.xml new file mode 100644 index 00000000..1da2bf43 --- /dev/null +++ b/soap/swad.sendMyGroups.res.xml @@ -0,0 +1,27 @@ + + + + + 0 + 0 + + + 0 + + 0 + + 0 + 0 + 0 + 0 + 0 + + + + + diff --git a/soap/swad.sendNotice.req.xml b/soap/swad.sendNotice.req.xml new file mode 100644 index 00000000..b92e2713 --- /dev/null +++ b/soap/swad.sendNotice.req.xml @@ -0,0 +1,15 @@ + + + + + + 0 + + + + diff --git a/soap/swad.sendNotice.res.xml b/soap/swad.sendNotice.res.xml new file mode 100644 index 00000000..afe7934d --- /dev/null +++ b/soap/swad.sendNotice.res.xml @@ -0,0 +1,13 @@ + + + + + 0 + + + diff --git a/soap/swad.wsdl b/soap/swad.wsdl new file mode 100644 index 00000000..2055193b --- /dev/null +++ b/soap/swad.wsdl @@ -0,0 +1,1213 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Service definition of function swad__createAccount + + + + + Service definition of function swad__loginByUserPasswordKey + + + + + Service definition of function swad__loginBySessionKey + + + + + Service definition of function swad__getNewPassword + + + + + Service definition of function swad__getCourses + + + + + Service definition of function swad__getCourseInfo + + + + + Service definition of function swad__getGroupTypes + + + + + Service definition of function swad__getGroups + + + + + Service definition of function swad__sendMyGroups + + + + + Service definition of function swad__getDirectoryTree + + + + + Service definition of function swad__getFile + + + + + Service definition of function swad__getMarks + + + + + Service definition of function swad__getTestConfig + + + + + Service definition of function swad__getTests + + + + + Service definition of function swad__getUsers + + + + + Service definition of function swad__getAttendanceEvents + + + + + Service definition of function swad__sendAttendanceEvent + + + + + Service definition of function swad__getAttendanceUsers + + + + + Service definition of function swad__sendAttendanceUsers + + + + + Service definition of function swad__getNotifications + + + + + Service definition of function swad__markNotificationsAsRead + + + + + Service definition of function swad__sendNotice + + + + + Service definition of function swad__sendMessage + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + gSOAP 2.8.18 generated service definition + + + + + + diff --git a/soap/swad.xsd b/soap/swad.xsd new file mode 100644 index 00000000..91672cb4 --- /dev/null +++ b/soap/swad.xsd @@ -0,0 +1,673 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/soap/swad_web_service.h b/soap/swad_web_service.h new file mode 100644 index 00000000..1a52f1dc --- /dev/null +++ b/soap/swad_web_service.h @@ -0,0 +1,430 @@ +// File: swad_web_service.h +//gsoap swad service name: swad +//gsoap swad service namespace: urn:swad +//gsoap swad service location: https://swad.ugr.es/ + +/*****************************************************************************/ +/******* Data structures used to return data in web service functions ********/ +/*****************************************************************************/ + +/* createAccount */ +struct swad__createAccountOutput + { + int userCode; + char *string; + }; + +/* loginBySessionKey */ +struct swad__loginBySessionKeyOutput + { + int userCode; + int degreeTypeCode; + int degreeCode; + int courseCode; + char *wsKey; // key used in subsequent calls to other web services + char *userNickname; + char *userID; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + char *userBirthday; + int userRole; // 1 = guest, no courses; 2 = student in all courses; 3 = teacher in one course at least + char *degreeTypeName; + char *degreeName; + char *courseName; + }; + +/* loginByUserPasswordKey */ +struct swad__loginByUserPasswordKeyOutput + { + int userCode; + char *wsKey; // key used in subsequent calls to other web services + char *userNickname; + char *userID; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + char *userBirthday; + int userRole; // 1 = guest, no courses; 2 = student in all courses; 3 = teacher in one course at least + }; + +/* getNewPassword */ +struct swad__getNewPasswordOutput + { + int success; + }; + +/* getCourses */ +struct swad__course + { + int courseCode; + char *courseShortName; + char *courseFullName; + int userRole; // 2 = student, 3 = teacher + }; +struct swad__coursesArray + { + struct swad__course *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getCoursesOutput + { + int numCourses; + struct swad__coursesArray coursesArray; + }; + +/* getCourseInfo */ +struct swad__getCourseInfoOutput + { + char *infoSrc; + char *infoTxt; + }; + +/* getGroupTypes */ +struct swad__groupType + { + int groupTypeCode; + char *groupTypeName; + int mandatory; + int multiple; + long openTime; + }; +struct swad__groupTypesArray + { + struct swad__groupType *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getGroupTypesOutput + { + int numGroupTypes; + struct swad__groupTypesArray groupTypesArray; + }; + +/* structs used in getGroups and sendMyGroups */ +struct swad__group + { + int groupCode; + char *groupName; + int groupTypeCode; + char *groupTypeName; + int open; + int maxStudents; + int numStudents; + int fileZones; + int member; + }; +struct swad__groupsArray + { + struct swad__group *__ptr; // pointer to array + int __size; // number of elements pointed to + }; + +/* getGroups */ +struct swad__getGroupsOutput + { + int numGroups; + struct swad__groupsArray groupsArray; + }; + +/* sendMyGroups */ +struct swad__sendMyGroupsOutput + { + int success; + int numGroups; + struct swad__groupsArray groupsArray; + }; + +/* getNotifications */ +struct swad__notification + { + int notifCode; + char *eventType; + int eventCode; + long eventTime; + char *userNickname; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + char *location; + int status; + char *summary; + char *content; + }; +struct swad__notificationsArray + { + struct swad__notification *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getNotificationsOutput + { + int numNotifications; + struct swad__notificationsArray notificationsArray; + }; + +/* markNotificationsAsRead */ +struct swad__markNotificationsAsReadOutput + { + int numNotifications; + }; + +/* getTestConfig */ +struct swad__getTestConfigOutput + { + int pluggable; + int numQuestions; + int minQuestions; + int defQuestions; + int maxQuestions; + char *feedback; + }; + +/* getTests */ +struct swad__tag + { + int tagCode; + char *tagText; + }; +struct swad__tagsArray + { + struct swad__tag *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__question + { + int questionCode; + char *answerType; + int shuffle; + char *stem; + char *feedback; + }; +struct swad__questionsArray + { + struct swad__question *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__answer + { + int questionCode; + int answerIndex; + int correct; + char *answerText; + char *answerFeedback; + }; +struct swad__answersArray + { + struct swad__answer *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__questionTag + { + int questionCode; + int tagCode; + int tagIndex; + }; +struct swad__questionTagsArray + { + struct swad__questionTag *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getTestsOutput + { + struct swad__tagsArray tagsArray; + struct swad__questionsArray questionsArray; + struct swad__answersArray answersArray; + struct swad__questionTagsArray questionTagsArray; + }; + +/* structs used in getUsers and sendMessage */ +struct swad__user + { + int userCode; + char *userNickname; + char *userID; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + }; +struct swad__usersArray + { + struct swad__user *__ptr; // pointer to array + int __size; // number of elements pointed to + }; + +/* getUsers */ +struct swad__getUsersOutput + { + int numUsers; + struct swad__usersArray usersArray; + }; + +/* getAttendanceEvents */ +struct swad__attendanceEvent + { + int attendanceEventCode; + int hidden; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + int startTime; + int endTime; + int commentsTeachersVisible; + char *title; + char *text; + char *groups; + }; +struct swad__attendanceEventsArray + { + struct swad__attendanceEvent *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getAttendanceEventsOutput + { + int numEvents; + struct swad__attendanceEventsArray eventsArray; + }; + +/* sendAttendanceEvent */ +struct swad__sendAttendanceEventOutput + { + int attendanceEventCode; + }; + +/* getAttendanceUsers */ +struct swad__attendanceUser + { + int userCode; + char *userNickname; + char *userID; + char *userSurname1; + char *userSurname2; + char *userFirstname; + char *userPhoto; + int present; + }; +struct swad__attendanceUsersArray + { + struct swad__attendanceUser *__ptr; // pointer to array + int __size; // number of elements pointed to + }; +struct swad__getAttendanceUsersOutput + { + int numUsers; + struct swad__attendanceUsersArray usersArray; + }; + +/* sendAttendanceUsers */ +struct swad__sendAttendanceUsersOutput + { + int success; // 1 ==> success; 0 ==> error + int numUsers; + }; + +/* getDirectoryTree */ +struct swad__getDirectoryTreeOutput + { + char *tree; // full tree in xml format + }; + +/* getFile */ +struct swad__getFileOutput + { + char *fileName; + char *URL; + int size; + int time; + char *license; + char *publisherName; + char *publisherPhoto; + }; + +/* getMarks */ +struct swad__getMarksOutput + { + char *content; + }; + +/* sendNotice */ +struct swad__sendNoticeOutput + { + int noticeCode; + }; + +/* sendMessage */ +struct swad__sendMessageOutput + { + int numUsers; + struct swad__usersArray usersArray; + }; + +/*****************************************************************************/ +/*************************** Web service functions ***************************/ +/*****************************************************************************/ + +/* Login */ +int swad__createAccount (char *userNickname,char *userEmail,char *userID,char *userPassword,char *appKey, + struct swad__createAccountOutput *createAccountOut); +int swad__loginByUserPasswordKey (char *userID,char *userPassword,char *appKey, + struct swad__loginByUserPasswordKeyOutput *loginByUserPasswordKeyOut); +int swad__loginBySessionKey (char *sessionID,char *appKey, + struct swad__loginBySessionKeyOutput *loginBySessionKeyOut); +int swad__getNewPassword (char *userID,char *appKey, + struct swad__getNewPasswordOutput *getNewPasswordOut); + +/* Courses */ +int swad__getCourses (char *wsKey, + struct swad__getCoursesOutput *getCoursesOut); +int swad__getCourseInfo (char *wsKey,int courseCode,char *infoType, + struct swad__getCourseInfoOutput *getCourseInfoOut); + +/* Groups */ +int swad__getGroupTypes (char *wsKey,int courseCode, + struct swad__getGroupTypesOutput *getGroupTypesOut); +int swad__getGroups (char *wsKey,int courseCode, + struct swad__getGroupsOutput *getGroupsOut); +int swad__sendMyGroups (char *wsKey,int courseCode,char *myGroups, + struct swad__sendMyGroupsOutput *sendMyGroupsOut); + +/* File browsers */ +int swad__getDirectoryTree (char *wsKey,int courseCode,int groupCode,int treeCode, + struct swad__getDirectoryTreeOutput *getDirectoryTreeOut); +int swad__getFile (char *wsKey,int fileCode, + struct swad__getFileOutput *getFileOut); +int swad__getMarks (char *wsKey,int fileCode, + struct swad__getMarksOutput *getMarksOut); + +/* Self assessment tests */ +int swad__getTestConfig (char *wsKey,int courseCode, + struct swad__getTestConfigOutput *getTestConfigOut); +int swad__getTests (char *wsKey,int courseCode,long beginTime, + struct swad__getTestsOutput *getTestsOut); + +/* List of users of a course / group */ +int swad__getUsers (char *wsKey,int courseCode,int groupCode,int userRole, + struct swad__getUsersOutput *getUsersOut); + +/* Control of attendance */ +int swad__getAttendanceEvents (char *wsKey,int courseCode, + struct swad__getAttendanceEventsOutput *getAttendanceEventsOut); +int swad__sendAttendanceEvent (char *wsKey,int attendanceEventCode,int courseCode,int hidden,int startTime,int endTime,int commentsTeachersVisible,char *title,char *text,char *groups, + struct swad__sendAttendanceEventOutput *sendAttendanceEventOut); +int swad__getAttendanceUsers (char *wsKey,int attendanceEventCode, + struct swad__getAttendanceUsersOutput *getAttendanceUsersOut); +int swad__sendAttendanceUsers (char *wsKey,int attendanceEventCode,char *users,int setOthersAsAbsent, + struct swad__sendAttendanceUsersOutput *sendAttendanceUsersOut); + +/* Notifications */ +int swad__getNotifications (char *wsKey,long beginTime, + struct swad__getNotificationsOutput *getNotificationsOut); +int swad__markNotificationsAsRead (char *wsKey,char *notifications, + struct swad__markNotificationsAsReadOutput *markNotificationAsReadOut); + +/* Notices and messages */ +int swad__sendNotice (char *wsKey,int courseCode,char *body, + struct swad__sendNoticeOutput *sendNoticeOut); +int swad__sendMessage (char *wsKey,int messageCode,char *to,char *subject,char *body, + struct swad__sendMessageOutput *sendMessageOut); diff --git a/sql/actions.sql b/sql/actions.sql new file mode 100644 index 00000000..c7c7a9f6 --- /dev/null +++ b/sql/actions.sql @@ -0,0 +1,54 @@ +-- MySQL dump 10.11 +-- +-- Host: localhost Database: swad +-- ------------------------------------------------------ +-- Server version 5.0.95-log + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Table structure for table `actions` +-- + +DROP TABLE IF EXISTS `actions`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `actions` ( + `ActCod` int(11) NOT NULL default '-1', + `Language` char(2) NOT NULL default 'es', + `Obsolete` enum('N','Y') NOT NULL default 'N', + `Txt` varchar(255) NOT NULL, + UNIQUE KEY `ActCod` (`ActCod`,`Language`), + KEY `Txt` (`Txt`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `actions` +-- + +LOCK TABLES `actions` WRITE; +/*!40000 ALTER TABLE `actions` DISABLE KEYS */; +INSERT INTO `actions` VALUES (0,'es','N','Ver documentos'),(1,'es','Y','Descargar archivo'),(2,'es','N','Ver menú'),(3,'es','N','Ver mensajes recibidos'),(4,'es','Y','Ver registro accesos'),(5,'es','Y','Ver descripción'),(6,'es','N','Autenticar usuario'),(7,'es','Y','Ver foro'),(8,'es','Y','Ver mensajes tema foro'),(9,'es','N','Ver enlaces'),(10,'es','N','Cerrar sesión'),(11,'es','Y','Ver orla alumnos'),(12,'es','N','Administrar documentos asignatura'),(13,'es','Y','Solicitar nueva descarga'),(14,'es','Y','Enviar archivo descarga'),(15,'es','N','Ver evaluación'),(16,'es','N','Ver calendario'),(17,'es','N','Ver calificaciones'),(18,'es','Y','Solicitar consulta accesos'),(19,'es','Y','Solicitar estadísticas acceso'),(20,'es','N','Ver prácticas'),(21,'es','N','Ver tutorías'),(22,'es','N','Ver fichas profesores'),(23,'es','N','Ver maletín'),(24,'es','Y','Eliminar descarga'),(25,'es','N','Ver horario'),(26,'es','N','Solicitar mensaje nuevo'),(27,'es','N','Enviar mensaje'),(28,'es','N','Ver teoría'),(29,'es','N','Ver test'),(30,'es','N','Solicitar envío foto'),(31,'es','Y','Cambiar foto'),(32,'es','N','Ver bibliografía'),(33,'es','Y','Crear carpeta descarga'),(34,'es','N','Solicitar cambio contraseña'),(35,'es','N','Cambiar contraseña'),(36,'es','N','Solicitar cambio apodo'),(37,'es','N','Cambiar apodo'),(38,'es','Y','Solicitar cambio ficha'),(39,'es','Y','Cambiar ficha'),(40,'es','Y','Solicitar alta usuario'),(41,'es','Y','Dar alta usuario'),(42,'es','N','Ver lista alumnos'),(43,'es','Y','Renombrar carpeta descarga'),(44,'es','N','Editar teoría'),(45,'es','N','Editar horario asignatura'),(46,'es','Y','Editar descripción'),(47,'es','Y','Ver HTML acceso directo'),(48,'es','N','Cambiar horario tutorías'),(49,'es','Y','Eliminar item'),(50,'es','Y','Enviar respuesta foro'),(51,'es','N','Ver salas chat y pizarra'),(52,'es','N','Abrir chat y pizarra'),(53,'es','N','Cambiar horario asignatura'),(54,'es','N','Ver FAQ'),(55,'es','Y','Eliminar mensaje foro'),(56,'es','Y','Solicitar cambio otra contraseña'),(57,'es','Y','Solicitar baja usuario'),(58,'es','N','Dar baja usuario'),(59,'es','N','Solicitar aviso nuevo'),(60,'es','N','Crear aviso nuevo'),(61,'es','Y','Solicitar baja total usuario'),(62,'es','N','Dar baja total usuario'),(63,'es','Y','Ver estadísticas acceso'),(64,'es','N','Eliminar mensaje recibido'),(65,'es','N','Editar horario tutorías'),(66,'es','Y','Solicitar envío calificaciones'),(67,'es','Y','Enviar página'),(68,'es','Y','Editar item'),(69,'es','N','Editar evaluación'),(70,'es','N','Ver mensajes enviados'),(71,'es','N','Imprimir calendario'),(72,'es','Y','Solicitar eliminación avisos'),(73,'es','N','Eliminar aviso'),(74,'es','N','Editar prácticas'),(75,'es','Y','Insertar item'),(76,'es','N','Editar bibliografía'),(77,'es','Y','Dar alta usuarios (formulario)'),(78,'es','Y','Solicitar alta usuarios'),(79,'es','N','Ver accesos SWAD'),(80,'es','Y','Aumentar nivel item'),(81,'es','Y','Disminuir nivel item'),(82,'es','N','Cambiar otra contraseña'),(83,'es','Y','Ver lista resumida alumnos'),(84,'es','N','Ver uso de SWAD'),(85,'es','N','Ver convocatorias'),(86,'es','Y','Enviar descripción'),(87,'es','N','Dar baja todos alumnos'),(88,'es','N','Solicitar baja todos alumnos'),(89,'es','N','Ver fichas alumnos'),(90,'es','N','Eliminar mensaje enviado'),(91,'es','N','Editar convocatoria'),(92,'es','Y','Solicitar edición convocatorias'),(93,'es','Y','Ver foro profesores'),(94,'es','Y','Ver mensajes tema foro prof.'),(95,'es','N','Ver foros'),(96,'es','N','Editar enlaces'),(97,'es','Y','Enviar enlace'),(98,'es','N','Evaluar test'),(99,'es','Y','Enviar calificaciones'),(100,'es','N','Solicitar envío correo'),(101,'es','Y','Solicitar eliminación registro'),(102,'es','Y','Eliminar registro accesos'),(103,'es','N','Solicitar test'),(104,'es','N','Solicitar edición de tests'),(105,'es','N','Editar pregunta test'),(106,'es','N','Cambiar máx. alumnos en grupo'),(107,'es','N','Solicitar eliminación grupo'),(108,'es','N','Solicitar edición de grupos'),(109,'es','N','Editar FAQ'),(110,'es','N','Enviar convocatoria'),(111,'es','N','Imprimir fichas alumnos'),(112,'es','Y','Solicitar consulta accesos asig.'),(113,'es','Y','Solicitar consulta accesos SWAD'),(114,'es','Y','Enviar tema foro'),(115,'es','Y','Cambiar usuarios a MySQL'),(116,'es','N','Solicitar unión a grupos'),(117,'es','Y','Pasar apodos a BD'),(118,'es','N','Cambiar de grupos'),(119,'es','N','Ver accesos asignatura'),(120,'es','N','Imprimir orla alumnos'),(121,'es','N','Renombrar grupo'),(122,'es','N','Crear grupo'),(123,'es','Y','Subir posición item'),(124,'es','Y','Bajar posición item'),(125,'es','Y','Editar test'),(126,'es','N','Enviar pregunta test'),(127,'es','N','Imprimir fichas profesores'),(128,'es','Y','Ver mensajes tema foro asig.'),(129,'es','Y','Ver foro asignatura'),(130,'es','Y','Editar trabajos'),(131,'es','Y','Editar pregunta test'),(132,'es','N','Editar preguntas test'),(133,'es','N','Eliminar pregunta test'),(134,'es','Y','Solicitar preguntas test'),(135,'es','Y','Enviar respuesta foro usrs.'),(136,'es','Y','Eliminar mensaje foro usrs.'),(137,'es','Y','Ver mensajes tema foro usrs.'),(138,'es','Y','Ver foro usuarios'),(139,'es','N','Editar trabajos de asignatura'),(140,'es','Y','Importar tests'),(141,'es','Y','Solicitar cambio descriptor test'),(142,'es','Y','Cambiar descriptor test'),(143,'es','N','Renombrar descriptor test'),(144,'es','Y','Enviar respuesta foro asig.'),(145,'es','Y','Eliminar carpeta descarga'),(146,'es','Y','Dar alta usuarios (archivo)'),(147,'es','Y','Exportar fichas a base de datos'),(148,'es','N','Enviar archivo mis trabajos'),(149,'es','Y','Solicitar nuevo arch/carp desc.'),(150,'es','N','Solic. nuevo arch/carp mis trab.'),(151,'es','Y','Editar trabajos de alumno'),(152,'es','N','Imprimir horario'),(153,'es','N','Enviar archivo a maletín'),(154,'es','Y','Solicitar nuevo arch/carp malet.'),(155,'es','N','Eliminar archivo maletín'),(156,'es','Y','Eliminar mensaje foro prof.'),(157,'es','Y','Eliminar mensaje foro asig.'),(158,'es','Y','Enviar tema foro prof.'),(159,'es','Y','Enviar tema foro asig.'),(160,'es','Y','Enviar respuesta foro prof.'),(161,'es','N','Confirmar alta usuario'),(162,'es','Y','Solicitar DNI cambio contraseña'),(163,'es','Y','Solicitar creación grupo'),(164,'es','N','Enviar página de enlaces'),(165,'es','Y','Solicitar edición grupos'),(166,'es','Y','Borrar grupo'),(167,'es','N','Cambiar tipo de grupo'),(168,'es','Y','Ver mis calificaciones'),(169,'es','N','Eliminar archivo mis trabajos'),(170,'es','N','Crear carpeta en maletín'),(171,'es','Y','Ver centros y departamentos'),(172,'es','N','Crear carpeta mis trabajos'),(173,'es','Y','Eliminar archivo descarga'),(174,'es','N','Crear tipo de grupo'),(175,'es','N','Eliminar grupo'),(176,'es','Y','Enviar tema foro usrs.'),(177,'es','N','Solicitar DNI alta usuario'),(178,'es','Y','Cambiar de grupo'),(179,'es','N','Imprimir convocatoria'),(180,'es','Y','Convertir horarios'),(181,'es','N','Insertar item prácticas'),(182,'es','N','Enviar enlace a enlaces'),(183,'es','N','Eliminar item prácticas'),(184,'es','N','Enviar página de evaluación'),(185,'es','N','Enviar página de bibliografía'),(186,'es','Y','Añadir convocatoria'),(187,'es','N','Eliminar convocatoria'),(188,'es','Y','Eliminar hebra foro asig.'),(189,'es','Y','Solicitar elim. hebra foro asig.'),(190,'es','Y','Solicitar elim. hebra foro prof.'),(191,'es','Y','Solicitar elim. hebra foro usrs.'),(192,'es','Y','Eliminar hebra foro usrs.'),(193,'es','Y','Eliminar hebra foro prof.'),(194,'es','N','Acción desconocida'),(195,'es','Y','Editar trabajos de usuario'),(196,'es','N','Eliminar carpeta maletín'),(197,'es','N','Renombrar carpeta en maletín'),(198,'es','Y','Solicitar nuevo arch/carp trab.'),(199,'es','Y','Crear carpeta de trabajos'),(200,'es','Y','Renombrar carpeta de trabajos'),(201,'es','Y','Enviar archivo de trabajo'),(202,'es','Y','Eliminar archivo trabajo'),(203,'es','Y','Eliminar carpeta trabajos'),(204,'es','N','Renombrar carpeta mis trabajos'),(205,'es','N','Solic. nuevo arch/carp trab.asg.'),(206,'es','N','Crear carpeta trabajos asg.'),(207,'es','N','Enviar archivo trabajos asg.'),(208,'es','N','Renombrar carpeta trabajos asg.'),(209,'es','N','Eliminar archivo trabajos asg.'),(210,'es','N','Eliminar carpeta trabajos asg.'),(211,'es','N','Editar item teoría'),(212,'es','N','Bajar posición item prácticas'),(213,'es','N','Subir posición item prácticas'),(214,'es','N','Disminuir nivel item prácticas'),(215,'es','N','Aumentar nivel item prácticas'),(216,'es','N','Editar item prácticas'),(217,'es','N','Insertar item teoría'),(218,'es','N','Eliminar item teoría'),(219,'es','N','Enviar página de FAQ'),(220,'es','N','Bajar posición item teoría'),(221,'es','N','Subir posición item teoría'),(222,'es','N','Disminuir nivel item teoría'),(223,'es','N','Aumentar nivel item teoría'),(224,'es','N','Enviar enlace a bibliografía'),(225,'es','Y','Solicitar baja alumnos'),(226,'es','Y','Dar baja usuarios (formulario)'),(227,'es','Y','Dar baja usuarios (archivo)'),(228,'es','N','Eliminar carpeta mis trabajos'),(229,'es','Y','Solicitar DNI baja total'),(230,'es','Y','Confirmar baja total usuario'),(231,'es','Y','Solicitar DNI baja usuario'),(232,'es','Y','Confirmar baja usuario'),(233,'es','Y','Confirmar cambio otra contraseña'),(234,'es','N','Enviar enlace a FAQ'),(235,'es','N','Enviar enlace a evaluación'),(236,'es','N','Solicitar eliminación tipo grupo'),(237,'es','N','Eliminar tipo de grupo'),(238,'es','Y','Cambiar obligatoriedad grupo'),(239,'es','Y','Cambiar multiplicidad grupo'),(240,'es','Y','Ver lista resumida profes. SWAD'),(241,'es','N','Ver foro usuarios titulación'),(242,'es','N','Ver foro usuarios SWAD'),(243,'es','N','Ver foro profesores titulación'),(244,'es','N','Ver msjs. tema foro usrs.SWAD'),(245,'es','N','Ver foro profesores SWAD'),(246,'es','N','Ver msjs. tema foro prof.SWAD'),(247,'es','N','Enviar tema foro prof.tit.'),(248,'es','Y','Enviar respuesta foro prof.tit.'),(249,'es','Y','Solic. elim.hebra foro prof.tit.'),(250,'es','Y','Eliminar hebra foro prof.tit.'),(251,'es','Y','Eliminar mensaje foro prof.tit.'),(252,'es','N','Enviar tema foro usrs.tit.'),(253,'es','Y','Solic. elim.hebra foro usrs.tit.'),(254,'es','Y','Eliminar hebra foro usrs.tit.'),(255,'es','N','Ver msjs. tema foro usrs.tit.'),(256,'es','Y','Eliminar mensaje foro usrs.tit.'),(257,'es','Y','Ver msjs. tema foro asig.'),(258,'es','N','Enviar tema foro usrs.SWAD'),(259,'es','N','Enviar tema foro prof.SWAD'),(260,'es','Y','Solic. elim.hebra foro usrs.SWAD'),(261,'es','Y','Eliminar hebra foro usrs.SWAD'),(262,'es','Y','Eliminar mensaje foro prof.SWAD'),(263,'es','Y','Enviar respuesta foro prof.SWAD'),(264,'es','Y','Enviar respuesta foro usrs.SWAD'),(265,'es','Y','Solic. elim.hebra foro asig.'),(266,'es','Y','Eliminar mensaje foro usrs.SWAD'),(267,'es','Y','Administrar zona común asg.'),(268,'es','Y','Administrar zona común grp.'),(269,'es','Y','Enviar respuesta foro usrs.tit.'),(270,'es','Y','Solicitar nuevo arch/carp calif.'),(271,'es','Y','Crear carpeta calificaciones'),(272,'es','Y','Eliminar archivo calificaciones'),(273,'es','Y','Eliminar carpeta calificaciones'),(274,'es','Y','Enviar archivo calificaciones'),(275,'es','Y','Renombrar carpeta calificaciones'),(276,'es','N','Eliminar árbol maletín'),(277,'es','Y','Eliminar árbol descarga'),(278,'es','N','Eliminar árbol mis trabajos'),(279,'es','N','Eliminar árbol trabajos asg.'),(280,'es','Y','Eliminar árbol calificaciones'),(281,'es','Y','Cambiar filas de cabecera'),(282,'es','Y','Cambiar filas de pie'),(283,'es','Y','Cambiar calificaciones'),(284,'es','N','Administrar calificaciones asignatura'),(285,'es','N','Solicitar cambio ficha común'),(286,'es','N','Solicitar elim. arch. maletín'),(287,'es','Y','Solicitar elim. arch. descarga'),(288,'es','N','Solicitar elim. arch. mis trab.'),(289,'es','N','Solicitar elim. arch. trab. asg.'),(290,'es','Y','Solicitar elim. arch. calif.'),(291,'es','N','Ver msjs. tema foro prof.tit.'),(292,'es','N','Solicitar edición campos fichas'),(293,'es','N','Crear campo de fichas'),(294,'es','N','Solicitar elimin. campo fichas'),(295,'es','N','Eliminar campo de fichas'),(296,'es','N','Renombrar campo de fichas'),(297,'es','N','Cambiar visibilidad campo'),(298,'es','N','Cambiar ficha común'),(299,'es','N','Solicitar cambio ficha asig.'),(300,'es','N','Cambiar ficha alumno en asig.'),(301,'es','N','Cambiar ficha asignatura'),(302,'es','N','Cambiar multiplic. tipo grupo'),(303,'es','N','Cambiar obligator. tipo grupo'),(304,'es','N','Renombrar tipo de grupo'),(305,'es','N','Cambiar líneas campo'),(306,'es','Y','Solicitar fichas alumnos'),(307,'es','Y','Ocultar arch/carp descarga'),(308,'es','Y','Inhabilitar arch/carp descarga'),(309,'es','Y','Habilitar arch/carp descarga'),(310,'es','Y','Copiar descarga'),(311,'es','N','Copiar de maletín'),(312,'es','N','Copiar de trabajos asg.'),(313,'es','Y','Copiar de calificaciones'),(314,'es','N','Copiar de mis trabajos'),(315,'es','N','Pegar en maletín'),(316,'es','Y','Copiar de descarga'),(317,'es','Y','Pegar en descarga'),(318,'es','N','Pegar en mis trabajos'),(319,'es','N','Pegar en trabajos asg.'),(320,'es','Y','Pegar en calificaciones'),(321,'es','N','Cerrar grupo'),(322,'es','N','Abrir grupo'),(323,'es','N','Solic.nuevo arch/carp común asg.'),(324,'es','N','Crear carpeta común asg.'),(325,'es','N','Eliminar carpeta común asg.'),(326,'es','N','Enviar archivo común asg.'),(327,'es','N','Solicitar elim. arch. común asg.'),(328,'es','N','Eliminar archivo común asg.'),(329,'es','N','Renombrar carpeta común asg.'),(330,'es','N','Copiar de zona común asg.'),(331,'es','N','Pegar en zona común asg.'),(332,'es','N','Eliminar árbol común asg.'),(333,'es','N','Solic.nuevo arch/carp común grp.'),(334,'es','N','Crear carpeta común grp.'),(335,'es','N','Enviar archivo común grp.'),(336,'es','N','Copiar de zona común grp.'),(337,'es','N','Pegar en zona común grp.'),(338,'es','N','Eliminar carpeta común grp.'),(339,'es','N','Eliminar árbol común grp.'),(340,'es','N','Renombrar carpeta común grp.'),(341,'es','N','Solicitar elim. arch. común grp.'),(342,'es','N','Eliminar archivo común grp.'),(343,'es','Y','Ver lista profes. SWAD'),(344,'es','Y','Pasar mensajes a base de datos'),(345,'es','N','Ver foro usuarios asignatura'),(346,'es','N','Ver msjs. tema foro usrs.asig.'),(347,'es','N','Ver msjs. tema foro prof.asig.'),(348,'es','N','Ver msjs. tema foro usrs.cent.'),(349,'es','Y','Enviar respuesta foro usrs.asig.'),(350,'es','N','Enviar tema foro usrs.asig.'),(351,'es','Y','Eliminar mensaje foro usrs.asig.'),(352,'es','Y','Solic. elim.hebra foro usrs.asig'),(353,'es','Y','Eliminar hebra foro usrs.asig.'),(354,'es','Y','Pasar avisos a base de datos'),(355,'es','Y','Pasar foros a base de datos'),(356,'es','Y','Pasar mensajes 9 a base de datos'),(357,'es','Y','Pasar mensajes 0 a base de datos'),(358,'es','Y','Pasar mensajes 1 a base de datos'),(359,'es','Y','Pasar mensajes 2 a base de datos'),(360,'es','Y','Pasar mensajes 3 a base de datos'),(361,'es','Y','Pasar mensajes 4 a base de datos'),(362,'es','Y','Pasar mensajes 5 a base de datos'),(363,'es','Y','Pasar mensajes 6 a base de datos'),(364,'es','Y','Pasar mensajes 7 a base de datos'),(365,'es','Y','Pasar mensajes 8 a base de datos'),(366,'es','Y','Solic. elim.hebra foro prof.SWAD'),(367,'es','Y','Eliminar hebra foro prof.SWAD'),(368,'es','Y','Cambiar ficha común de otro usr.'),(369,'es','Y','Selec. tipo de info. asignatura'),(370,'es','N','Selec. tipo de bibliografía'),(371,'es','N','Editor integrado de prácticas'),(372,'es','N','Editor integrado de teoría'),(373,'es','Y','Solicitar DNI foto usuario'),(374,'es','N','Cambiar foto otro usuario'),(375,'es','N','Solicitar cambio foto otro usr.'),(376,'es','N','Editor integrado de bibliografía'),(377,'es','N','Editor de texto plano de bibliografía'),(378,'es','N','Selec. tipo de prog. de teoría'),(379,'es','N','Editor de texto plano de teoría'),(380,'es','N','Selec. tipo de FAQ'),(381,'es','N','Enviar página de teoría'),(382,'es','N','Selec. tipo de prog. de práct.'),(383,'es','N','Enviar página de prácticas'),(384,'es','N','Selec. tipo de evaluación'),(385,'es','N','Selec. tipo de enlaces'),(386,'es','N','Editor integrado de evaluación'),(387,'es','N','Editor de texto plano de evaluación'),(388,'es','N','Editor integrado de enlaces'),(389,'es','N','Editor de texto plano de prácticas'),(390,'es','Y','Selec. tipo de descripción'),(391,'es','Y','Pasar descrip.
a base datos'),(392,'es','Y','Editor de texto de descripción'),(393,'es','Y','Enviar texto de descripción'),(394,'es','N','Enviar texto plano de teoría'),(395,'es','Y','Editor integrado de descripción'),(396,'es','N','Enviar texto plano de prácticas'),(397,'es','N','Enviar texto plano de evaluación'),(398,'es','N','Enviar texto plano de bibliografía'),(399,'es','Y','Enviar página de descripción'),(400,'es','N','Editor de texto plano de enlaces'),(401,'es','N','Enviar texto plano de enlaces'),(402,'es','N','Enviar enlace a prácticas'),(403,'es','N','Enviar enlace a teoría'),(404,'es','N','Editor integrado de FAQ'),(405,'es','N','Editor de texto plano de FAQ'),(406,'es','N','Enviar texto plano de FAQ'),(407,'es','Y','Enviar enlace a descripción'),(408,'es','N','Ver horario todas clases'),(409,'es','N','Imprimir horario todas clases'),(410,'es','N','Expandir carpeta maletín'),(411,'es','N','Contraer carpeta maletín'),(412,'es','Y','Expandir carpeta ver calif.'),(413,'es','Y','Contraer carpeta ver calif.'),(414,'es','Y','Expandir carpeta ver descarga'),(415,'es','Y','Expandir carpeta admin. descarga'),(416,'es','N','Expandir carpeta trabajos asg.'),(417,'es','Y','Contraer carpeta admin. calif.'),(418,'es','Y','Expandir carpeta admin. calif.'),(419,'es','Y','Contraer carpeta ver descarga'),(420,'es','Y','Contraer carpeta admin. descarga'),(421,'es','N','Expandir carpeta común asg.'),(422,'es','N','Contraer carpeta común asg.'),(423,'es','N','Expandir carpeta mis trabajos'),(424,'es','N','Contraer carpeta trabajos asg.'),(425,'es','N','Contraer carpeta mis trabajos'),(426,'es','N','Contraer carpeta común grupo'),(427,'es','N','Expandir carpeta común grupo'),(428,'es','N','Eliminar foto'),(429,'es','N','Eliminar foto otro usuario'),(430,'es','N','Ver foro profesores centro'),(431,'es','N','Ver foro profesores asignatura'),(432,'es','Y','Solicitar elim. usuarios antiguo'),(433,'es','Y','Solic. elimin. mensajes enviados'),(434,'es','N','Eliminar mensajes enviados'),(435,'es','Y','Solic. elimin. mensajes recibido'),(436,'es','N','Eliminar mensajes recibidos'),(437,'es','Y','Solicitar edición titulación'),(438,'es','Y','Dar alta usr. sin cambiar datos'),(439,'es','N','Dar alta usr. cambiando datos'),(440,'es','N','Dar alta usuario nuevo'),(441,'es','Y','Ver orla profes. SWAD'),(442,'es','Y','Ver orla profesores'),(443,'es','N','Imprimir orla profesores'),(444,'es','N','Calcular fotos promedio'),(445,'es','Y','Ver fotos promedio'),(446,'es','Y','Imprimir fotos promedio'),(447,'es','N','Ver orla de titulaciones'),(448,'es','N','Imprimir orla de titulaciones'),(449,'es','Y','Ver salas pizarra'),(450,'es','Y','Abrir pizarra virtual'),(451,'es','N','Solicitar configuración test'),(452,'es','N','Prohibir descriptor test'),(453,'es','N','Permitir descriptor test'),(454,'es','N','Recibir configuración test'),(455,'es','N','Cambiar orden. respuestas test'),(456,'es','Y','Censurar mensaje foro usrs.asig.'),(457,'es','Y','Permitir mensaje foro usrs.asig.'),(458,'es','Y','Censurar mensaje foro usrs.SWAD'),(459,'es','Y','Permitir mensaje foro usrs.SWAD'),(460,'es','Y','Censurar mensaje foro usrs.tit.'),(461,'es','N','Administrar zona común'),(462,'es','N','Expandir carpeta ver desc. asg.'),(463,'es','Y','Ver documentos asignatura'),(464,'es','N','Habilitar arch/carp desc. asg.'),(465,'es','N','Inhabilitar arch/carp desc. asg.'),(466,'es','Y','Ver documentos grupo'),(467,'es','Y','Administrar documentos grupo'),(468,'es','N','Solicitar nueva descarga grp.'),(469,'es','N','Crear carpeta descarga grp.'),(470,'es','N','Copiar de descarga asg.'),(471,'es','N','Pegar en descarga grp.'),(472,'es','N','Copiar de descarga grp.'),(473,'es','N','Solicitar elim. arch. desc. grp.'),(474,'es','N','Eliminar archivo descarga grp.'),(475,'es','Y','Administrar documentos asignatura'),(476,'es','N','Contraer carpeta ver desc. asg.'),(477,'es','N','Expandir carpeta admin.desc.asg.'),(478,'es','N','Pegar en descarga asg.'),(479,'es','N','Solicitar elim. arch. desc. asg.'),(480,'es','N','Eliminar archivo descarga asg.'),(481,'es','N','Solicitar nueva descarga asg.'),(482,'es','N','Enviar archivo descarga asg.'),(483,'es','N','Enviar archivo descarga grp.'),(484,'es','N','Eliminar carpeta descarga grp.'),(485,'es','N','Eliminar árbol descarga grp.'),(486,'es','N','Expandir carpeta admin.desc.grp.'),(487,'es','N','Contraer carpeta admin.desc.grp.'),(488,'es','N','Expandir carpeta ver desc. grp.'),(489,'es','N','Contraer carpeta ver desc. grp.'),(490,'es','N','Renombrar carpeta descarga grp.'),(491,'es','N','Crear carpeta descarga asg.'),(492,'es','N','Inhabilitar arch/carp desc. grp.'),(493,'es','N','Habilitar arch/carp desc. grp.'),(494,'es','N','Contraer carpeta admin.desc.asg.'),(495,'es','N','Habilitar zonas archivos grupo'),(496,'es','N','Inhabilitar zonas archivos grupo'),(497,'es','N','Eliminar carpeta descarga asg.'),(498,'es','N','Eliminar árbol descarga asg.'),(499,'es','Y','Administrar calificaciones asg.'),(500,'es','Y','Administrar calificaciones grp.'),(501,'es','N','Copiar de calif. asg.'),(502,'es','N','Pegar en calif. grp.'),(503,'es','N','Cambiar filas de cabecera asg.'),(504,'es','N','Cambiar filas de pie asg.'),(505,'es','Y','Solic. nuevo arch/carp calif.asg'),(506,'es','N','Crear carpeta calif. asg.'),(507,'es','N','Pegar en calif. asg.'),(508,'es','Y','Solicitar elim. arch. calif. grp'),(509,'es','N','Eliminar archivo calif. grp.'),(510,'es','N','Cambiar filas de cabecera grp.'),(511,'es','N','Cambiar filas de pie grp.'),(512,'es','Y','Solic. nuevo arch/carp calif.grp'),(513,'es','N','Crear carpeta calif. grp.'),(514,'es','N','Enviar archivo calif. grp.'),(515,'es','Y','Contraer carpeta admin.calif.asg'),(516,'es','N','Enviar archivo calif. asg.'),(517,'es','Y','Expandir carpeta admin.calif.grp'),(518,'es','Y','Contraer carpeta admin.calif.grp'),(519,'es','N','Copiar de calif. grp.'),(520,'es','N','Eliminar carpeta calif. grp.'),(521,'es','N','Eliminar árbol calif. grp.'),(522,'es','Y','Expandir carpeta ver calif. grp'),(523,'es','N','Ver mis calificaciones asg.'),(524,'es','N','Ver mis calificaciones grp.'),(525,'es','Y','Ver calificaciones asignatura'),(526,'es','Y','Ver calificaciones grupo'),(527,'es','N','Contraer carpeta ver calif. asg.'),(528,'es','N','Expandir carpeta ver calif. asg.'),(529,'es','N','Renombrar carpeta calif. grp.'),(530,'es','N','Eliminar carpeta calif. asg.'),(531,'es','Y','Expandir carpeta admin.calif.asg'),(532,'es','Y','Solicitar elim. arch. calif. asg'),(533,'es','N','Eliminar archivo calif. asg.'),(534,'es','N','Eliminar árbol calif. asg.'),(535,'es','N','Renombrar carpeta descarga asg.'),(536,'es','N','Solicitar edición titulaciones'),(537,'es','N','Crear tipo de titulación'),(538,'es','N','Renombrar tipo de titulación'),(539,'es','Y','Solicitar eliminación tipo titul'),(540,'es','N','Crear titulación'),(541,'es','Y','Solicitar eliminación titulación'),(542,'es','N','Eliminar titulación'),(543,'es','Y','Renombrar titulación'),(544,'es','N','Cambiar tipo de titulación'),(545,'es','N','Eliminar tipo titulación'),(546,'es','N','Cambiar nombre breve titulación'),(547,'es','N','Cambiar nombre completo titulac.'),(548,'es','Y','Cambiar campus de titulación'),(549,'es','Y','Contraer carpeta ver calif. grp.'),(550,'es','N','Cambiar primer año de titulación'),(551,'es','N','Cambiar último año de titulación'),(552,'es','N','Cambiar año opcional titulación'),(553,'es','N','Cambiar logo de titulación'),(554,'es','N','Cambiar web de titulación'),(555,'es','N','Solicitar edición asignaturas'),(556,'es','N','Crear asignatura'),(557,'es','Y','Solicitar acept./rechazo mi alta'),(558,'es','N','Aceptar mi alta'),(559,'es','N','Rechazar mi alta'),(560,'es','N','Eliminar asignatura'),(561,'es','N','Cambiar curso de asignatura'),(562,'es','N','Cambiar semestre de asignatura'),(563,'es','N','Cambiar nombre breve asignatura'),(564,'es','N','Cambiar nombre completo asig.'),(565,'es','N','Mover asignatura a otra titulac.'),(566,'es','Y','Importar titulaciones'),(567,'es','Y','Importar asignaturas'),(568,'es','Y','Solicitar cambio resp. secreta'),(569,'es','Y','Cambiar respuesta secreta'),(570,'es','Y','Solicitar recuerdo contraseña'),(571,'es','Y','Recordar contraseña'),(572,'es','Y','Censurar mensaje foro prof.SWAD'),(573,'es','N','Solicitar edición tipos titul.'),(574,'es','N','Renombrar carpeta calif. asg.'),(575,'es','Y','Solicitar búsqueda asignaturas'),(576,'es','Y','Buscar asignaturas'),(577,'es','Y','Ver lista resumida profesores'),(578,'es','N','Ver lista profesores'),(579,'es','Y','Ver lista resumida administrador'),(580,'es','Y','Solicitar DNI alta administrador'),(581,'es','Y','Confirmar alta administrador'),(582,'es','Y','Solicitar DNI baja administrador'),(583,'es','Y','Solicitar baja administrador'),(584,'es','N','Dar baja administrador'),(585,'es','Y','Confirmar baja administrador'),(586,'es','N','Dar alta administrador'),(587,'es','N','Ver lista administradores'),(588,'es','Y','Cambiar tipo de usuario identifi'),(589,'es','N','Cambiar tipo de usuario identif.'),(590,'es','N','Solicitar elim.usuarios antiguos'),(591,'es','N','Solic. consulta accesos SWAD'),(592,'es','N','Solicitar acept/rechazo mi alta'),(593,'es','N','Solic. elim. mensajes recibidos'),(594,'es','N','Solic. consulta accesos asig.'),(595,'es','N','Solicitar elim.arch.calif.asg.'),(596,'es','N','Solic.nuevo arch/carp calif.asg.'),(597,'es','N','Solic. nuevo arch/carp malet.'),(598,'es','N','Confirm. cambio otra contraseña'),(599,'es','N','Enviar resp. foro usrs.asig.'),(600,'es','N','Solicitar elim.arch.calif.grp.'),(601,'es','N','Solic.nuevo arch/carp calif.grp.'),(602,'es','N','Eliminar mens. foro usrs.asig.'),(603,'es','N','Enviar resp. foro usrs.SWAD'),(604,'es','N','Solic. elim. mensajes enviados'),(605,'es','N','Expandir carpeta ver calif.grp'),(606,'es','N','Enviar resp. foro usrs.tit.'),(607,'es','N','Expandir carp. admin.calif.asg.'),(608,'es','N','Eliminar mens. foro usrs.tit.'),(609,'es','N','Contraer carpeta ver calif.grp.'),(610,'es','N','Censurar mens. foro usrs.asig.'),(611,'es','Y','Solic.elim.hebra foro usrs.asig'),(612,'es','Y','Solic. elim. usuarios antiguos'),(613,'es','N','Eliminar mens. foro usrs.SWAD'),(614,'es','Y','Solic.elim.hebra foro usrs.tit.'),(615,'es','N','Censurar mens. foro usrs.tit.'),(616,'es','N','Permitir mens. foro usrs.tit.'),(617,'es','N','Enviar resp. foro prof.tit.'),(618,'es','N','Censurar mens. foro prof.tit.'),(619,'es','N','Permitir mens. foro prof.tit.'),(620,'es','Y','Solic.elim.hebra foro prof.tit.'),(621,'es','N','Contraer carp. admin.calif.asg.'),(622,'es','N','Enviar resp. foro prof.SWAD'),(623,'es','N','Eliminar mens. foro prof.SWAD'),(624,'es','N','Permitir mens. foro usrs.asig.'),(625,'es','N','Censurar mens. foro usrs.SWAD'),(626,'es','Y','Solic.elim.hebra foro prof.SWAD'),(627,'es','N','Solicitar búsqueda desde plataforma'),(628,'es','N','Buscar desde plataforma'),(629,'es','Y','Ver mensajes recibidos nuevos'),(630,'es','Y','Solic.elim.hebra foro usrs.SWAD'),(631,'es','N','Expandir carp. admin.calif.grp.'),(632,'es','N','Permitir mens. foro usrs.SWAD'),(633,'es','N','Enviar contraseña por correo'),(634,'es','N','Permitir mens. foro prof.SWAD'),(635,'es','N','Censurar mens. foro prof.SWAD'),(636,'es','Y','Pegar hebra foro usrs.asig.'),(637,'es','Y','Cortar hebra foro usrs.asig.'),(638,'es','Y','Cortar hebra foro usrs.SWAD'),(639,'es','Y','Pegar hebra foro usrs.SWAD'),(640,'es','Y','Pegar hebra foro usrs.tit.'),(641,'es','Y','Cortar hebra foro prof.SWAD'),(642,'es','Y','Ver foro profesores univ.'),(643,'es','Y','Ver msjs. tema foro prof.univ.'),(644,'es','Y','Cortar hebra foro prof.univ.'),(645,'es','N','Cualquier acción'),(646,'es','Y','Ver foro usuarios univ.'),(647,'es','Y','Pegar hebra foro prof.SWAD'),(648,'es','Y','Ver msjs. tema foro usrs.univ.'),(649,'es','Y','Cortar hebra foro usrs.univ.'),(650,'es','Y','Pegar hebra foro usrs.univ.'),(651,'es','Y','Enviar resp. foro prof.univ.'),(652,'es','Y','Eliminar mens. foro prof.univ.'),(653,'es','Y','Cortar hebra foro usrs.tit.'),(654,'es','N','Cambiar idioma'),(655,'es','Y','Enviar tema foro prof.univ.'),(656,'es','Y','Enviar resp. foro usrs.univ.'),(657,'es','Y','Eliminar mens. foro usrs.univ.'),(658,'es','Y','Enviar tema foro usrs.univ.'),(659,'es','Y','Censurar mens. foro usrs.univ.'),(660,'es','Y','Solic.elim.hebra foro usrs.univ.'),(661,'es','Y','Eliminar hebra foro usrs.univ.'),(662,'es','Y','Permitir mens. foro usrs.univ.'),(663,'es','N','Ver mensaje recibido'),(664,'es','N','Ver mensaje enviado'),(665,'es','N','Solicitar envío contraseña'),(666,'es','Y','Ocultar columnas laterales'),(667,'es','Y','Mostrar columnas laterales'),(668,'es','N','Ocultar columna izquierda'),(669,'es','N','Ocultar columna derecha'),(670,'es','N','Mostrar columna izquierda'),(671,'es','N','Mostrar columna derecha'),(672,'es','N','Cambiar diseño'),(673,'es','N','Editar preferencias'),(674,'es','N','Cambiar columnas'),(675,'es','N','Ver departamentos'),(676,'es','N','Ver centros'),(677,'es','N','Editar departamentos'),(678,'es','N','Ver orla o lista de alumnos'),(679,'es','N','Ver orla o lista de profesores'),(680,'es','N','Eliminar mens. foro prof.tit.'),(681,'es','N','Editar centros'),(682,'es','N','Cambiar nombre breve centro'),(683,'es','N','Cambiar web de centro'),(684,'es','N','Cambiar nombre completo centro'),(685,'es','N','Crear centro'),(686,'es','N','Eliminar centro'),(687,'es','N','Crear departamento'),(688,'es','N','Cambiar nombre breve depar.'),(689,'es','N','Cambiar nombre completo depar.'),(690,'es','N','Eliminar departamento'),(691,'es','N','Cambiar web de departamento'),(692,'es','Y','Recibir foto y detectar rostros'),(693,'es','N','Detectar rostros mi foto'),(694,'es','N','Cambiar mi foto'),(695,'es','N','Detectar rostros en foto otro us'),(696,'es','N','Ver instituciones'),(697,'es','N','Editar instituciones'),(698,'es','N','Crear institución'),(699,'es','N','Cambiar logo de institución'),(700,'es','N','Cambiar web de institución'),(701,'es','N','Cambiar nombre completo ins.'),(702,'es','N','Cambiar nombre breve ins.'),(703,'es','N','Ver lugares'),(704,'es','N','Editar lugares'),(705,'es','N','Crear lugar'),(706,'es','N','Cambiar lugar de titulación'),(707,'es','N','Ver días festivos'),(708,'es','Y','Editar días festivos'),(709,'es','Y','Cambiar fecha día festivo'),(710,'es','Y','Cambiar nombre día festivo'),(711,'es','Y','Crear día festivo'),(712,'es','Y','Cambiar lugar día festivo'),(713,'es','N','Editar festivo.'),(714,'es','N','Crear festiv.'),(715,'es','N','Cambiar tipo festiv.'),(716,'es','N','Eliminar festiv.'),(717,'es','N','Cambiar fecha inicio festiv.'),(718,'es','N','Cambiar fecha fin festiv.'),(719,'es','Y','Cambiar instititución de titul.'),(720,'es','N','Cambiar institución centro'),(721,'es','N','Cambiar institución depar.'),(722,'es','Y','Cambiar institución de titul.'),(723,'es','N','Ver foro profesores general'),(724,'es','N','Ver foro profesores instit.'),(725,'es','N','Ver foro usuarios instit.'),(726,'es','N','Ver foro usuarios general'),(727,'es','N','Ver msjs. tema foro usrs.gral.'),(728,'es','Y','Cortar hebra foro usrs.gral.'),(729,'es','Y','Pegar hebra foro usrs.inst.'),(730,'es','N','Ver msjs. tema foro usrs.inst.'),(731,'es','N','Ver msjs. tema foro prof.gral.'),(732,'es','Y','Cortar hebra foro prof.gral.'),(733,'es','Y','Pegar hebra foro prof.inst.'),(734,'es','Y','Pegar hebra foro prof.gral.'),(735,'es','N','Eliminar mens. foro usrs.gral.'),(736,'es','N','Enviar tema foro usrs.gral.'),(737,'es','N','Enviar tema foro usrs.inst.'),(738,'es','Y','Cortar hebra foro usrs.inst.'),(739,'es','Y','Pegar hebra foro usrs.gral.'),(740,'es','N','Enviar resp. foro usrs.inst.'),(741,'es','Y','Solic.elim.hebra foro usrs.inst.'),(742,'es','Y','Eliminar hebra foro usrs.inst.'),(743,'es','N','Eliminar mens. foro usrs.inst.'),(744,'es','Y','Solic.elim.hebra foro usrs.gral.'),(745,'es','Y','Eliminar hebra foro usrs.gral.'),(746,'es','N','Ver msjs. tema foro prof.inst.'),(747,'es','N','Enviar resp. foro usrs.gral.'),(748,'es','N','Ver enlaces institucionales'),(749,'es','N','Editar enlaces institucionales'),(750,'es','N','Crear enlace institucional'),(751,'es','N','Cambiar nombre completo enlace i'),(752,'es','N','Cambiar web de enlace institucio'),(753,'es','N','Cambiar nombre breve enlace ins.'),(754,'es','N','Enviar tema foro prof.asig.'),(755,'es','N','Enviar resp. foro prof.asig.'),(756,'es','N','Eliminar mens. foro prof.asig.'),(757,'es','Y','Solic.elim.hebra foro prof.asig'),(758,'es','Y','Eliminar hebra foro prof.asig.'),(759,'es','N','Eliminar institución'),(760,'es','N','Cambiar iconos seguros'),(761,'es','N','Solicitar ver uso de SWAD'),(762,'es','N','Ver avisos'),(763,'es','N','Ocultar aviso'),(764,'es','N','Mostrar aviso'),(765,'es','N','Enviar tema foro prof.gral.'),(766,'es','N','Cambiar nombre festiv.'),(767,'es','N','Solicitar estad. asignaturas'),(768,'es','N','Ver estad. asignaturas'),(769,'es','N','Enviar tema foro prof.inst.'),(770,'es','N','Enviar resp. foro prof.inst.'),(771,'es','Y','Cortar hebra foro prof.inst.'),(772,'es','N','Eliminar mens. foro prof.inst.'),(773,'es','N','Eliminar usuarios antiguos'),(774,'es','N','Cambiar privacidad foto'),(775,'es','N','Cambiar notificación mensajes'),(776,'es','N','Eliminar lugar'),(777,'es','N','Listar plugins'),(778,'es','N','Editar plugins'),(779,'es','N','Crear plugin'),(780,'es','N','Cambiar IP de plugin'),(781,'es','N','Cambiar logo de plugin'),(782,'es','N','Cambiar nombre de plugin'),(783,'es','N','Cambiar URL de plugin'),(784,'es','N','Ver guía docente'),(785,'es','N','Editar guía docente'),(786,'es','N','Editor integrado de guía docente'),(787,'es','N','Editor de texto plano de guía docente'),(788,'es','N','Enviar página de guía docente'),(789,'es','N','Selec. tipo de guía docente'),(790,'es','N','Enviar texto plano de guía docente'),(791,'es','N','Enviar enlace a guía docente'),(792,'es','N','Editar mis trabajos'),(793,'es','Y','Pruebas de PRADO'),(794,'es','N','Autenticar usuario desde fuera'),(795,'es','Y','Solicitar importación de alumnos'),(796,'es','N','Ver lista de alumnos oficiales'),(797,'es','N','Solicitar alta/baja alumnos'),(798,'es','Y','Dar alta/baja alumnos (archivo)'),(799,'es','N','Dar alta/baja alumnos (formul.)'),(800,'es','Y','Eliminando ceros de los DNI'),(801,'es','N','Ver actividades'),(802,'es','Y','Editar actividades'),(803,'es','N','Crear actividad'),(804,'es','Y','Cambiar tipo actividad'),(805,'es','Y','Cambiar fecha fin actividad'),(806,'es','N','Eliminar actividad'),(807,'es','Y','Cambiar fecha inicio actividad'),(808,'es','Y','Cambiar nombre actividad'),(809,'es','Y','Cambiar texto actividad'),(810,'es','Y','Cambiar envío trabajo actividad'),(811,'es','Y','Editar actividad'),(812,'es','N','Solicitar creación actividad'),(813,'es','N','Solicitar elim. actividad'),(814,'es','N','Solicitar edición actividad'),(815,'es','N','Modificar actividad'),(816,'es','N','Enviar resp. foro prof.gral.'),(817,'es','N','Solic. nuevo arch/carp act.asg.'),(818,'es','N','Crear carpeta activid. asg.'),(819,'es','N','Expandir carpeta activid. asg.'),(820,'es','N','Eliminar carpeta activid. asg.'),(821,'es','N','Pegar en actividades asg.'),(822,'es','N','Eliminar árbol activid. asg.'),(823,'es','N','Renombrar carpeta activid. asg.'),(824,'es','N','Expandir carpeta mis activid.'),(825,'es','N','Solic. nuevo arch/carp mis act.'),(826,'es','N','Crear carpeta mis actividades'),(827,'es','N','Eliminar carpeta mis activid.'),(828,'es','N','Eliminar árbol mis activid.'),(829,'es','N','Copiar de mis actividades'),(830,'es','N','Pegar en mis actividades'),(831,'es','N','Contraer carpeta mis activid.'),(832,'es','N','Enviar archivo mis actividades'),(833,'es','N','Eliminar archivo mis activid.'),(834,'es','N','Solicitar elim. arch. mis act.'),(835,'es','N','Contraer carpeta activid. asg.'),(836,'es','N','Copiar de actividades asg.'),(837,'es','N','Solicitar elim. arch. act. asg.'),(838,'es','N','Eliminar archivo activid. asg.'),(839,'es','N','Renombrar carpeta mis activid.'),(840,'es','N','Instalación inicial'),(841,'es','N','Cambiar tema (colores)'),(842,'es','Y','Seleccionar titulación/asignatura'),(843,'es','N','Solicitar inicio sesión'),(844,'es','N','Ver menú inicial'),(845,'es','N','Refrescar mensajes y usuarios'),(846,'es','N','Enviar archivo activid. asg.'),(847,'es','N','Ver info. asignatura'),(848,'es','N','Editar info. asignatura'),(849,'es','N','Selec. tipo de info. asg.'),(850,'es','N','Editor de texto plano de info. asg.'),(851,'es','N','Enviar texto plano de info. asg.'),(852,'es','N','Editor integrado de info. asg.'),(853,'es','N','Enviar página de info. asg.'),(854,'es','N','Enviar enlace a info asg.'),(855,'es','N','Ver dominios de correo'),(856,'es','N','Editar dominios de correo'),(857,'es','N','Crear dominio de correo'),(858,'es','N','Cambiar dominio de correo'),(859,'es','N','Cambiar información dominio corr'),(860,'es','N','Eliminar dominio de correo'),(861,'es','N','Pasar lista'),(862,'es','N','Ver países'),(863,'es','N','Editar países'),(864,'es','N','Crear país'),(865,'es','N','Cambiar país de institución'),(866,'es','N','Cambiar nombre breve país'),(867,'es','N','Solic.elim.discus.foro usrs.asig'),(868,'es','N','Eliminar discus. foro usrs.asig.'),(869,'es','N','Solic.elim.discus.foro prof.asig'),(870,'es','N','Cambiar oblig. leer guía docente'),(871,'es','N','Cambiar oblig. leer prog. de teo'),(872,'es','N','Cambiar oblig. leer prog. de prá'),(873,'es','N','Cambiar oblig. leer bibliografía'),(874,'es','N','Cambiar oblig. leer FAQ'),(875,'es','N','Cambiar oblig. leer enlaces'),(876,'es','N','Eliminar discus. foro prof.asig.'),(877,'es','N','Cambiar oblig. leer info. asg.'),(878,'es','N','Cambiar alumno leido info. asg.'),(879,'es','N','Cambiar alumno leido FAQ'),(880,'es','N','Cambiar alumno leido prog. de te'),(881,'es','N','Solic.elim.discus.foro usrs.SWAD'),(882,'es','N','Eliminar discus. foro usrs.SWAD'),(883,'es','N','Cambiar oblig. leer evaluación'),(884,'es','N','Cambiar alumno leido bibliografí'),(885,'es','N','Cambiar alumno leido enlaces'),(886,'es','N','Cambiar alumno leido guía docent'),(887,'es','N','Cambiar alumno leido prog. de pr'),(888,'es','N','Cambiar descripción de plugin'),(889,'es','N','Eliminar plugin'),(890,'es','N','Cortar discus. foro usrs.SWAD'),(891,'es','N','Pegar discus. foro usrs.asig.'),(892,'es','N','Servicio web'),(893,'es','N','Eliminar país'),(894,'es','N','Cambiar nombre breve lugar'),(895,'es','N','Cambiar nombre completo lugar'),(896,'es','N','Cambiar lugar festiv.'),(897,'es','N','Eliminar enlace institucional'),(898,'es','N','Cambiar alumno leido evaluación'),(899,'es','N','Solicitar editar trabajos asig.'),(900,'es','N','Contraer carp. admin.calif.grp.'),(901,'es','N','Ver foro usuarios centro'),(902,'es','N','Ver msjs. tema foro prof.cent.'),(903,'es','N','Enviar tema foro usrs.cent.'),(904,'es','N','Enviar tema foro prof.cent.'),(905,'es','N','Enviar resp. foro usrs.cent.'),(906,'es','N','Enviar resp. foro prof.cent.'),(907,'es','N','Solic.elim.discus.foro usrs.tit.'),(908,'es','N','Solic.elim.discus.foro prof.tit.'),(909,'es','N','Solic.elim.discus.foro usrs.cent'),(910,'es','N','Solic.elim.discus.foro prof.cent'),(911,'es','N','Solic.elim.discus.foro usrs.inst'),(912,'es','N','Solic.elim.discus.foro prof.inst'),(913,'es','N','Solic.elim.discus.foro usrs.gral'),(914,'es','N','Solic.elim.discus.foro prof.gral'),(915,'es','N','Solic.elim.discus.foro prof.SWAD'),(916,'es','N','Eliminar discus. foro usrs.tit.'),(917,'es','N','Eliminar discus. foro prof.tit.'),(918,'es','N','Eliminar discus. foro usrs.cent.'),(919,'es','N','Eliminar discus. foro prof.cent.'),(920,'es','N','Eliminar discus. foro usrs.inst.'),(921,'es','N','Eliminar discus. foro prof.inst.'),(922,'es','N','Eliminar discus. foro usrs.gral.'),(923,'es','N','Eliminar discus. foro prof.gral.'),(924,'es','N','Eliminar discus. foro prof.SWAD'),(925,'es','N','Censurar mens. foro prof.gral.'),(926,'es','N','Cortar discus. foro usrs.asig.'),(927,'es','N','Cortar discus. foro prof.asig.'),(928,'es','N','Cortar discus. foro usrs.tit.'),(929,'es','N','Cortar discus. foro prof.tit.'),(930,'es','N','Cortar discus. foro usrs.cent.'),(931,'es','N','Cortar discus. foro prof.cent.'),(932,'es','N','Cortar discus. foro usrs.inst.'),(933,'es','N','Cortar discus. foro prof.inst.'),(934,'es','N','Cortar discus. foro usrs.gral.'),(935,'es','N','Cortar discus. foro prof.gral.'),(936,'es','N','Cortar discus. foro prof.SWAD'),(937,'es','N','Pegar discus. foro prof.asig.'),(938,'es','N','Pegar discus. foro usrs.tit.'),(939,'es','N','Pegar discus. foro prof.tit.'),(940,'es','N','Pegar discus. foro usrs.cent.'),(941,'es','N','Pegar discus. foro prof.cent.'),(942,'es','N','Pegar discus. foro usrs.inst.'),(943,'es','N','Pegar discus. foro prof.inst.'),(944,'es','N','Pegar discus. foro usrs.gral.'),(945,'es','N','Pegar discus. foro prof.gral.'),(946,'es','N','Pegar discus. foro usrs.SWAD'),(947,'es','N','Pegar discus. foro prof.SWAD'),(948,'es','N','Eliminar mens. foro usrs.cent.'),(949,'es','N','Eliminar mens. foro prof.cent.'),(950,'es','N','Eliminar mens. foro prof.gral.'),(951,'es','N','Permitir mens. foro prof.asig.'),(952,'es','N','Permitir mens. foro usrs.cent.'),(953,'es','N','Permitir mens. foro prof.cent.'),(954,'es','N','Permitir mens. foro usrs.inst.'),(955,'es','N','Permitir mens. foro prof.inst.'),(956,'es','N','Permitir mens. foro usrs.gral.'),(957,'es','N','Permitir mens. foro prof.gral.'),(958,'es','N','Censurar mens. foro prof.asig.'),(959,'es','N','Censurar mens. foro usrs.cent.'),(960,'es','N','Censurar mens. foro prof.cent.'),(961,'es','N','Censurar mens. foro usrs.inst.'),(962,'es','N','Censurar mens. foro prof.inst.'),(963,'es','N','Censurar mens. foro usrs.gral.'),(964,'es','N','Ocultar actividad'),(965,'es','N','Mostrar actividad'),(966,'es','N','Ver encuestas'),(967,'es','Y','Editar encuestas'),(968,'es','N','Crear encuesta'),(969,'es','N','Eliminar encuesta'),(970,'es','Y','Cambiar nombre de encuesta'),(971,'es','Y','Cambiar descripción de encuesta'),(972,'es','Y','Cambiar IP de encuesta'),(973,'es','N','Solicitar creación encuesta'),(974,'es','N','Solicitar edición encuesta'),(975,'es','N','Modificar encuesta'),(976,'es','N','Solicitar elim. encuesta'),(977,'es','N','Ocultar encuesta'),(978,'es','N','Mostrar encuesta'),(979,'es','N','Solicitar creación pregunta encuesta'),(980,'es','N','Enviar pregunta encuesta'),(981,'es','N','Eliminar pregunta encuesta'),(982,'es','N','Ver una encuesta'),(983,'es','N','Responder encuesta'),(984,'es','N','Solicitar puesta a cero encuesta'),(985,'es','N','Poner a cero encuesta'),(986,'es','N','Cambiar clave aplicación plugin'),(987,'es','N','Seleccionar una de mis asignaturas'),(988,'es','Y','Cambiar a una de mis asignaturas'),(989,'es','N','Ver últimos clics'),(990,'es','N','Ver notificaciones'),(991,'es','N','Ver notificaciones nuevas'),(992,'es','N','Solicitar cambio idioma'),(993,'es','N','Ver acciones frecuentes'),(994,'es','N','Refrescar últimos clics'),(995,'es','N','Ver últimos clics'),(996,'es','N','Ver metadatos arch. doc. asg.'),(997,'es','Y','Hacer priv. arch. doc. asg.'),(998,'es','N','Ver metadatos arch. doc. grp.'),(999,'es','Y','Hacer priv. arch. doc. grp.'),(1000,'es','N','Ver metadatos arch. com. asg.'),(1001,'es','Y','Hacer priv. arch. com. asg.'),(1002,'es','N','Ver metadatos arch. com. grp.'),(1003,'es','Y','Hacer priv. arch. com. grp.'),(1004,'es','Y','Solicitar edición de tipos de grupo'),(1005,'es','Y','Importar preguntas de test'),(1006,'es','N','Cambiar método autenticación tipo titulación'),(1007,'es','N','Solicitar importación preguntas test'),(1008,'es','N','Importar preguntas test'),(1009,'es','N','Ver asignaturas de titulación'),(1010,'es','Y','Cambiar a otra asignatura'),(1011,'es','N','Ver titulaciones'),(1012,'es','Y','Ir a titulación de un tipo'),(1013,'es','N','Ver tipos de titulación'),(1014,'es','Y','Ir a tipo de titulación'),(1015,'es','N','Bloquear remitente'),(1016,'es','N','Desbloquear remitente'),(1017,'es','N','Ver usuarios bloqueados'),(1018,'es','N','Quitar remitente de bloqueados'),(1019,'es','N','Ocultar mensaje recibido'),(1020,'es','N','Ocultar mensaje enviado'),(1021,'es','Y','Ver mi código QR'),(1022,'es','N','Imprimir mi código QR'),(1023,'es','Y','Ver configuración asignatura'),(1024,'es','N','Cambiar configuración asignatura'),(1025,'es','N','Cambiar cód. institucional asignatura'),(1026,'es','Y','Ir a institución'),(1027,'es','Y','Ir a país'),(1028,'es','N','Imprimir configuración asignatura'),(1029,'es','N','Ver metadatos arch. doc. asg.'),(1030,'es','N','Ver metadatos arch. doc. grp.'),(1031,'es','N','Ver metadatos arch. com. asg.'),(1032,'es','N','Ver metadatos arch. com. grp.'),(1033,'es','N','Ver datos arch. doc. asg.'),(1034,'es','N','Ver datos arch. doc. grp.'),(1035,'es','N','Ver datos arch. admin.calif.asg.'),(1036,'es','N','Cambiar datos arch. admin.calif.asg.'),(1037,'es','N','Ver datos arch. admin.calif.grp.'),(1038,'es','N','Cambiar datos arch. admin.calif.grp.'),(1039,'es','N','Ver datos arch. mis actividades'),(1040,'es','N','Cambiar datos arch. mis actividades'),(1041,'es','N','Ver datos arch. mis trabajos'),(1042,'es','N','Cambiar datos arch. mis trabajos'),(1043,'es','N','Ver datos arch. activ. asg.'),(1044,'es','N','Cambiar datos arch. activ. asg.'),(1045,'es','N','Ver datos arch. trab. asg.'),(1046,'es','N','Cambiar datos arch. trab. asg.'),(1047,'es','N','Ver datos arch. maletín'),(1048,'es','N','Cambiar datos arch. maletín'),(1049,'es','N','Cambiar centro de titul.'),(1050,'es','Y','Ir a un centro'),(1051,'es','N','Cambiar logo de centro'),(1052,'es','Y','Solicitar asignaturas'),(1053,'es','N','Solicitar asignatura'),(1054,'es','N','Formulario solicitud inscripción'),(1055,'es','N','Cambiar estado asignatura'),(1056,'es','N','Solicitar inscripción'),(1057,'es','N','Listar inscripciones pendientes'),(1058,'es','N','Preguntar si rechazar solicitud inscripción'),(1059,'es','N','Rechazar solicitud inscripción'),(1060,'es','N','Ver instit., centros, titul. y asig. pendientes'),(1061,'es','N','Cambiar fecha apertura tipo grupo'),(1062,'es','Y','Administrar documentos (opción antigua)'),(1063,'es','N','Solicitar creación evento asistencia'),(1064,'es','N','Solicitar edición evento asistencia'),(1065,'es','N','Crear evento asistencia'),(1066,'es','N','Modificar evento asistencia'),(1067,'es','N','Solicitar elim. evento asistencia'),(1068,'es','N','Eliminar evento asistencia'),(1069,'es','N','Ocultar evento asistencia'),(1070,'es','N','Mostrar evento asistencia'),(1071,'es','N','Listar estudiantes asistentes a evento'),(1072,'es','N','Registrar estudiantes asistentes a evento'),(1073,'es','N','Selec. estud. y eventos listado asistencia'),(1074,'es','N','Listar asistencia a varios eventos'),(1075,'es','N','Imprimir asistencia a varios eventos'),(1076,'es','N','Registrar estudiante asistente a evento'),(1077,'es','N','Cambiar de idioma tras autenticar'),(1080,'es','N','Seleccionar usuarios para result. test'),(1081,'es','N','Ver resultados de tests de usuarios'),(1082,'es','N','Ver un examen de test ya realizado'),(1083,'es','N','Seleccionar fechas para mis result. test'),(1084,'es','N','Ver mis resultados de tests'),(1085,'es','N','Ver un examen de test mío ya realizado'),(1086,'es','N','Ver datos arch. calif. asg.'),(1087,'es','N','Ver datos arch. calif. grp.'),(1088,'es','N','Cambiar mi dirección de correo'),(1089,'es','N','Eliminar apodo'),(1090,'es','N','Eliminar dirección de correo'),(1091,'es','N','Confirmar dirección de correo'),(1092,'es','N','Cambiar conjunto de iconos'),(1093,'es','N','Editor de texto enriq. de info. asg.'),(1094,'es','N','Editor de texto enriq. de guía docente'),(1095,'es','N','Editor de texto enriq. de teoría'),(1096,'es','N','Editor de texto enriq. de prácticas'),(1097,'es','N','Editor de texto enriq. de bibliografía'),(1098,'es','N','Editor de texto enriq. de FAQ'),(1099,'es','N','Editor de texto enriq. de enlaces'),(1100,'es','N','Editor de texto enriq. de evaluación'),(1101,'es','N','Enviar texto enriq. de info. asg.'),(1102,'es','N','Enviar texto enriq. de guía docente'),(1103,'es','N','Enviar texto enriq. de teoría'),(1104,'es','N','Enviar texto enriq. de prácticas'),(1105,'es','N','Enviar texto enriq. de bibliografía'),(1106,'es','N','Enviar texto enriq. de FAQ'),(1107,'es','N','Enviar texto enriq. de enlaces'),(1108,'es','N','Enviar texto enriq. de evaluación'),(1109,'es','N','Solicitar elim. asignaturas antiguas'),(1110,'es','N','Eliminar asignaturas antiguas'),(1111,'es','N','Descargar arch. doc. asg.'),(1112,'es','N','Descargar arch. doc. grp.'),(1113,'es','N','Descargar arch. doc. asg.'),(1114,'es','N','Descargar arch. doc. grp.'),(1115,'es','N','Descargar arch. com. asg.'),(1116,'es','N','Descargar arch. com. grp.'),(1117,'es','N','Descargar arch. mis actividades'),(1118,'es','N','Descargar arch. mis trabajos'),(1119,'es','N','Descargar arch. activ. asg.'),(1120,'es','N','Descargar arch. trab. asg.'),(1121,'es','N','Descargar arch. admin.calif.asg.'),(1122,'es','N','Descargar arch. admin.calif.grp.'),(1123,'es','N','Descargar arch. maletín'),(1124,'es','N','Crear ZIP doc. asg.'),(1125,'es','N','Crear ZIP doc. grp.'),(1126,'es','N','Crear ZIP admin.doc.asg.'),(1127,'es','N','Crear ZIP admin.doc.grp.'),(1128,'es','N','Crear ZIP compart.asg.'),(1129,'es','N','Crear ZIP compart.grp.'),(1130,'es','N','Crear ZIP carpeta mis activid.'),(1131,'es','N','Crear ZIP carpeta mis trabajos'),(1132,'es','N','Crear ZIP carpeta activid. asg.'),(1133,'es','N','Crear ZIP carpeta trabajos asg.'),(1134,'es','N','Crear ZIP carpeta admin. calif. asg.'),(1135,'es','N','Crear ZIP carpeta admin. calif. grp.'),(1136,'es','N','Crear ZIP carpeta maletín'),(1137,'es','N','Ver banners'),(1138,'es','N','Editar banners'),(1139,'es','N','Crear banner'),(1140,'es','N','Eliminar banner'),(1141,'es','N','Cambiar nombre corto de banner'),(1142,'es','N','Cambiar nombre largo de banner ('),(1143,'es','N','Cambiar URL de banner'),(1144,'es','N','Cambiar imagen de banner'),(1145,'es','N','Clic en un banner'),(1146,'es','N','Marcar notificaciones como vistas'),(1147,'es','N','Eliminar uno de mis ID'),(1148,'es','N','Crear un nuevo ID para mí'),(1149,'es','N','Ver configuración titulación'),(1150,'es','N','Imprimir configuración titulación'),(1151,'es','N','Ver información centro'),(1152,'es','N','Imprimir información centro'),(1153,'es','N','Ver información institución'),(1154,'es','N','Imprimir información institución'),(1155,'es','N','Ver información institución'),(1156,'es','N','Imprimir información institución'),(1157,'es','N','Cambiar web país'),(1158,'es','N','Cambiar atribución mapa país'),(1159,'es','N','Cambiar atribución foto centro'),(1160,'es','N','Solicitar envío de foto del centro'),(1161,'es','N','Enviar foto del centro'),(1162,'es','Y','Solicitar la creación de una cuenta'),(1163,'es','N','Crear una nueva cuenta'),(1176,'es','N','Solicitar búsqueda desde país'),(1177,'es','N','Solicitar búsqueda desde institución'),(1178,'es','N','Solicitar búsqueda desde centro'),(1179,'es','N','Solicitar búsqueda desde titulación'),(1180,'es','N','Solicitar búsqueda desde asignatura'),(1181,'es','N','Buscar desde país'),(1182,'es','N','Buscar desde institución'),(1183,'es','N','Buscar desde centro'),(1184,'es','N','Buscar desde titulación'),(1185,'es','N','Buscar desde asignatura'),(1078,'es','N','Ver documentos'),(1079,'es','N','Ver calificaciones'),(1186,'es','N','Ver orla o lista de invitados'),(1187,'es','N','Ver fichas invitados'),(1188,'es','N','Imprimir fichas invitados'),(1189,'es','N','Ver lista invitados'),(1190,'es','N','Imprimir orla ionvitados'),(1191,'es','N','Habilitar arch/carp calif. grp.'),(1192,'es','N','Inhabilitar arch/carp calif. grp.'),(1193,'es','N','Habilitar arch/carp calif. asig.'),(1194,'es','N','Inhabilitar arch/carp calif. asig.'),(1195,'es','N','Cambiar a ver documentos'),(1196,'es','N','Cambiar a admin. documentos'),(1197,'es','N','Cambiar a admin. archivos compartidos'),(1198,'es','N','Cambiar a ver archivos calificaciones'),(1199,'es','N','Cambiar a admin. archivos calificaciones'),(1200,'es','N','Ver documentos grupo'),(1201,'es','N','Administrar documentos grupo'),(1202,'es','N','Administrar archivos compartidos asignatura'),(1203,'es','N','Administrar archivos compartidos grupo'),(1204,'es','N','Ver calificaciones grupo'),(1205,'es','N','Administrar calificaciones grupo'),(1206,'es','N','Solicitar titulación'),(1207,'es','N','Cambiar estado titulación'),(1208,'es','N','Solicitar centro'),(1209,'es','N','Cambiar estado centro'),(1210,'es','N','Solicitar institución'),(1211,'es','N','Cambiar estado institución'); +/*!40000 ALTER TABLE `actions` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2014-07-18 19:53:23 diff --git a/sql/cambios.sql b/sql/cambios.sql new file mode 100644 index 00000000..85b976f0 --- /dev/null +++ b/sql/cambios.sql @@ -0,0 +1,10444 @@ +RENAME TABLE tbl_name TO new_tbl_name; + +RENAME TABLE accesos TO log; +ALTER TABLE log CHANGE CodTit DegCod VARCHAR(16) NOT NULL; + +CREATE TABLE deg_types (DegTypCod INT NOT NULL AUTO_INCREMENT, DegTypName VARCHAR(255) NOT NULL, UNIQUE INDEX(DegTypCod)); +DESCRIBE deg_types; +CREATE TABLE degrees (DegCod VARCHAR(16) NOT NULL, DegTypCod INT NOT NULL, DegName VARCHAR(255) NOT NULL, UNIQUE INDEX(DegCod), INDEX(DegTypCod)); +DESCRIBE degrees; + +ALTER TABLE degrees CHANGE DegName FullName VARCHAR(255) NOT NULL; +ALTER TABLE degrees ADD COLUMN ShortName VARCHAR(32) NOT NULL AFTER DegTypCod; +ALTER TABLE degrees ADD COLUMN CampusCod INT NOT NULL AFTER DegTypCod; +ALTER TABLE degrees ADD COLUMN FirstYear TINYINT NOT NULL DEFAULT 0 AFTER FullName; +ALTER TABLE degrees ADD COLUMN LastYear TINYINT NOT NULL DEFAULT 0 AFTER FirstYear; +ALTER TABLE degrees ADD COLUMN OptYear ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER LastYear; +ALTER TABLE degrees ADD COLUMN Logo VARCHAR(16) NOT NULL AFTER OptYear; +ALTER TABLE degrees ADD COLUMN WWW VARCHAR(255) NOT NULL AFTER Logo; + +SELECT messages.MsgCod,DATE_FORMAT(messages.CreatTime,'%Y%m%d%H%i%S') AS F,messages.AuthorDNI,messages.Location,messages.Subject,messages.Content,msg_received.Replied FROM msg_received,messages WHERE msg_received.DstDNI='24243619' AND msg_received.MsgCod=messages.MsgCod ORDER BY F DESC; + +INSERT INTO apodos (DNI,Apodo) VALUES ('74641103','mataran'); + +CREATE TABLE courses (CrsCod INT NOT NULL AUTO_INCREMENT, DegCod INT NOT NULL DEFAULT -1, Semester TINYINT NOT NULL DEFAULT 0, ShortName VARCHAR(32) NOT NULL, FullName VARCHAR(255) NOT NULL, UNIQUE INDEX(CrsCod), INDEX(DegCod), INDEX(Semester)); + +SELECT DISTINCT(messages.Location) FROM messages,msg_received WHERE msg_received.DstDNI='27518991' AND msg_received.MsgCod=messages.MsgCod ORDER BY messages.Location; + +SELECT msg_received.MsgCod,messages.CreatTime AS F FROM msg_received,messages WHERE msg_received.DstDNI='24243619' AND msg_received.MsgCod=messages.MsgCod ORDER BY F DESC; + +DROP INDEX DstDNI ON msg_received; +CREATE INDEX DstDNI_MsgCod ON msg_received (DstDNI,MsgCod); + +SELECT messages.MsgCod AS M FROM messages,msg_sent WHERE messages.AuthorDNI='24243619' AND messages.MsgCod=msg_sent.MsgCod GROUP BY M ORDER BY M DESC; + +SELECT DISTINCT(asg_usr.DNI,asg_usr.Accepted) FROM asg_usr,fichas_profesor WHERE asg_usr.DNI=fichas_profesor.DNI; + +ALTER TABLE courses ADD COLUMN NumTeachers INT NOT NULL DEFAULT 0 AFTER FullName; +ALTER TABLE courses ADD COLUMN NumStudents INT NOT NULL DEFAULT 0 AFTER NumTeachers; + +SELECT CrsCod,Year,Semester,ShortName,FullName,NumTeachers,NumStudents FROM courses WHERE DegCod='11' ORDER BY Year,ShortName; + +ALTER TABLE sessions CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE sessions ADD COLUMN CrsCod INT NOT NULL AFTER Password; +ALTER TABLE sessions CHANGE CrsCod CrsCod INT NOT NULL DEFAULT -1; + +ALTER TABLE connected CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE connected ADD COLUMN CrsCod INT NOT NULL AFTER DNI; +ALTER TABLE connected CHANGE CrsCod CrsCod INT NOT NULL DEFAULT -1; +ALTER TABLE connected ADD INDEX (CrsCod); + +ALTER TABLE log CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE log ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER DegCod; +ALTER TABLE log ADD INDEX (CrsCod); +ALTER TABLE log CHANGE DegCod DegCod_old CHAR(16) NOT NULL; + +ALTER TABLE crs_info_src CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE crs_info_src ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE crs_info_src ADD INDEX (CrsCod); + +ALTER TABLE crs_info_txt CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE crs_info_txt ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE crs_info_txt ADD INDEX (CrsCod); + +ALTER TABLE asg_usr CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE asg_usr ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE asg_usr ADD INDEX (CrsCod,DNI); + +ALTER TABLE crs_grp_types CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE crs_grp_types ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER GrpTypCod; +ALTER TABLE crs_grp_types ADD INDEX (CrsCod); + +ALTER TABLE crs_card_fields CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE crs_card_fields ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER CodCampo; +ALTER TABLE crs_card_fields ADD INDEX (CrsCod); + +ALTER TABLE messages CHANGE Location Location_old CHAR(16) NOT NULL; +ALTER TABLE messages ADD COLUMN Location INT NOT NULL DEFAULT -1 AFTER MsgCod; +ALTER TABLE messages ADD INDEX (Location); + +ALTER TABLE msg_notices CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE msg_notices ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER MsgCod; +ALTER TABLE msg_notices ADD INDEX (CrsCod); + +ALTER TABLE forum_thread CHANGE Location Location_old CHAR(16) NOT NULL; +ALTER TABLE forum_thread ADD COLUMN Location INT NOT NULL DEFAULT -1 AFTER ForumType; +ALTER TABLE forum_thread ADD INDEX (Location); + +ALTER TABLE crs_common_files CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE crs_common_files ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE crs_common_files ADD INDEX (CrsCod,CodGrupo); + +ALTER TABLE calificaciones CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE calificaciones ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE calificaciones ADD INDEX (CrsCod,GrpCod); + +ALTER TABLE convocatorias CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE convocatorias ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER CodConv; +ALTER TABLE convocatorias ADD INDEX (CrsCod); + +ALTER TABLE hidden_downloads CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE hidden_downloads ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE hidden_downloads ADD INDEX (CrsCod,GrpCod); + +ALTER TABLE expanded_folders CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE expanded_folders ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER TreeType; +ALTER TABLE expanded_folders ADD INDEX (CrsCod); + +ALTER TABLE timetable_crs CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE timetable_crs ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE timetable_crs ADD INDEX (CrsCod,GrpCod); + +ALTER TABLE portapapeles CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE portapapeles ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER Tipo; +ALTER TABLE portapapeles ADD INDEX (CrsCod); + +ALTER TABLE tst_config CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE tst_config ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 FIRST; +ALTER TABLE tst_config ADD INDEX (CrsCod); + +ALTER TABLE tst_questions CHANGE CodAsg FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE tst_questions ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER CodPrg; +ALTER TABLE tst_questions ADD INDEX (CrsCod); + +ALTER TABLE tst_tags CHANGE CrsCod FullCrsCod_old CHAR(16) NOT NULL; +ALTER TABLE tst_tags ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER TagCod; +ALTER TABLE tst_tags ADD INDEX (CrsCod); + +ALTER TABLE connected ADD COLUMN UsrType TINYINT NOT NULL AFTER DNI; + +SELECT DISTINCT(connected.DNI,connected.UsrType) FROM connected,asg_usr WHERE asg_usr.FullCrsCod_old='PID00SWAD' AND asg_usr.DNI=connected.DNI; + +ALTER TABLE courses ADD COLUMN FullCrsCod_old CHAR(16) NOT NULL AFTER CrsCod; + +CREATE UNIQUE INDEX FullCrsCod_old ON courses (FullCrsCod_old); + +CREATE UNIQUE INDEX DegCod_old ON degrees (DegCod_old); + +ALTER TABLE sessions DROP COLUMN FullCrsCod_old; + +SELECT sessions.DNI,sessions.Password,sessions.CrsCod,courses.FullCrsCod_old FROM sessions,courses WHERE sessions.IdSession='bbPI3AhWYE05FWN82-sOnw' AND sessions.CrsCod=courses.CrsCod; + +ALTER TABLE connected DROP COLUMN FullCrsCod_old; +ALTER TABLE portapapeles DROP COLUMN FullCrsCod_old; + +UPDATE timetable_crs,courses SET timetable_crs.CrsCod=courses.CrsCod WHERE timetable_crs.FullCrsCod_old=courses.FullCrsCod_old; +ALTER TABLE timetable_crs DROP COLUMN FullCrsCod_old; + +UPDATE asg_usr,courses SET asg_usr.CrsCod=courses.CrsCod WHERE asg_usr.FullCrsCod_old=courses.FullCrsCod_old; + +SELECT COUNT(DISTINCT(asg_usr.DNI)) FROM degrees,asg_usr,fichas_alumno WHERE degrees.DegCod_old='II' AND degrees.DegCod=courses.DegCod AND courses.CrsCod=asg_usr.CrsCod AND asg_usr.DNI=fichas_alumno.DNI; +SELECT COUNT(DISTINCT(asg_usr.DNI)) FROM courses,asg_usr,fichas_alumno WHERE courses.DegCod='57' AND courses.CrsCod=asg_usr.CrsCod AND asg_usr.DNI=fichas_alumno.DNI; +SELECT DISTINCT(asg_usr.DNI),'Y' FROM courses,asg_usr,fichas_profesor WHERE courses.DegCod='57' AND courses.CrsCod=asg_usr.CrsCod AND asg_usr.Accepted='Y' AND asg_usr.DNI=fichas_profesor.DNI; +SELECT DISTINCT(asg_usr.DNI) FROM courses,asg_usr,fichas_alumno WHERE courses.DegCod='57' AND courses.CrsCod=asg_usr.CrsCod AND asg_usr.DNI=fichas_alumno.DNI; + +ALTER TABLE asg_usr DROP COLUMN FullCrsCod_old; + +UPDATE crs_common_files,courses SET crs_common_files.CrsCod=courses.CrsCod WHERE crs_common_files.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE crs_common_files ADD COLUMN Path2 TEXT COLLATE latin1_bin NOT NULL AFTER Path; +ALTER TABLE crs_common_files CHANGE Path Path TEXT COLLATE latin1_bin NOT NULL; +ALTER TABLE crs_common_files DROP COLUMN Path2; + +ALTER TABLE portapapeles CHANGE Path Path TEXT COLLATE latin1_bin NOT NULL; +ALTER TABLE expanded_folders CHANGE Path Path TEXT COLLATE latin1_bin NOT NULL; +ALTER TABLE hidden_downloads CHANGE Path Path TEXT COLLATE latin1_bin NOT NULL; +ALTER TABLE calificaciones CHANGE Path Path TEXT COLLATE latin1_bin NOT NULL; + +UPDATE crs_grp_types,courses SET crs_grp_types.CrsCod=courses.CrsCod WHERE crs_grp_types.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE crs_common_files DROP COLUMN FullCrsCod_old; +ALTER TABLE crs_grp_types DROP COLUMN FullCrsCod_old; + +UPDATE calificaciones,courses SET calificaciones.CrsCod=courses.CrsCod WHERE calificaciones.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE calificaciones DROP COLUMN FullCrsCod_old; + +UPDATE crs_card_fields,courses SET crs_card_fields.CrsCod=courses.CrsCod WHERE crs_card_fields.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE crs_card_fields DROP COLUMN FullCrsCod_old; + +UPDATE expanded_folders,courses SET expanded_folders.CrsCod=courses.CrsCod WHERE expanded_folders.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE expanded_folders DROP COLUMN FullCrsCod_old; + +UPDATE hidden_downloads,courses SET hidden_downloads.CrsCod=courses.CrsCod WHERE hidden_downloads.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE hidden_downloads DROP COLUMN FullCrsCod_old; + +UPDATE tst_config,courses SET tst_config.CrsCod=courses.CrsCod WHERE tst_config.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE tst_config DROP COLUMN FullCrsCod_old; + +UPDATE tst_questions,courses SET tst_questions.CrsCod=courses.CrsCod WHERE tst_questions.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE tst_questions DROP COLUMN FullCrsCod_old; + +UPDATE tst_tags,courses SET tst_tags.CrsCod=courses.CrsCod WHERE tst_tags.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE tst_tags DROP COLUMN FullCrsCod_old; + +UPDATE convocatorias,courses SET convocatorias.CrsCod=courses.CrsCod WHERE convocatorias.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE convocatorias DROP COLUMN FullCrsCod_old; + +UPDATE crs_info_src,courses SET crs_info_src.CrsCod=courses.CrsCod WHERE crs_info_src.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE crs_info_src DROP COLUMN FullCrsCod_old; + +UPDATE crs_info_txt,courses SET crs_info_txt.CrsCod=courses.CrsCod WHERE crs_info_txt.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE crs_info_txt DROP COLUMN FullCrsCod_old; + +ALTER TABLE messages ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER Location; + +ALTER TABLE messages ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER Location; +ALTER TABLE messages ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER DegCod; +UPDATE messages,courses SET messages.CrsCod=courses.CrsCod WHERE messages.Location_old=courses.FullCrsCod_old; + +ALTER TABLE messages DROP COLUMN Location; +ALTER TABLE messages DROP COLUMN DegCod; +ALTER TABLE messages DROP COLUMN Location_old; + +UPDATE msg_notices,courses SET msg_notices.CrsCod=courses.CrsCod WHERE msg_notices.FullCrsCod_old=courses.FullCrsCod_old; + +ALTER TABLE msg_notices DROP COLUMN FullCrsCod_old; + +SELECT DISTINCT(messages.CrsCod,courses.ShortName) FROM messages,msg_sent,courses WHERE messages.AuthorDNI='24243619' AND messages.MsgCod=msg_sent.MsgCod AND messages.CrsCod=courses.CrsCod ORDER BY courses.ShortName; + +ALTER TABLE forum_thread ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER Location; +ALTER TABLE forum_thread ADD COLUMN CrsCod INT NOT NULL DEFAULT -1 AFTER DegCod; + +UPDATE forum_thread,courses SET forum_thread.CrsCod=courses.CrsCod WHERE forum_thread.Location_old=courses.FullCrsCod_old; +UPDATE forum_thread,degrees SET forum_thread.DegCod=degrees.DegCod WHERE forum_thread.Location_old=degrees.DegCod_old; +UPDATE forum_thread,courses SET forum_thread.Location=courses.CrsCod WHERE forum_thread.Location_old=courses.FullCrsCod_old; +UPDATE forum_thread,degrees SET forum_thread.Location=degrees.DegCod WHERE forum_thread.Location_old=degrees.DegCod_old; + +ALTER TABLE forum_thread DROP COLUMN DegCod; +ALTER TABLE forum_thread DROP COLUMN CrsCod; +ALTER TABLE forum_thread DROP COLUMN Location_old; + +ALTER TABLE log ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER DegCod_old; +CREATE INDEX DegCod ON log (DegCod); + + + + + +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FullCrsCod_old=courses.FullCrsCod_old; + +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20071201000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20071101000000' AND log.FechaHora<='20071202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20071001000000' AND log.FechaHora<='20071102000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070901000000' AND log.FechaHora<='20071002000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070801000000' AND log.FechaHora<='20070902000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070701000000' AND log.FechaHora<='20070802000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070601000000' AND log.FechaHora<='20070702000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070501000000' AND log.FechaHora<='20070602000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070401000000' AND log.FechaHora<='20070502000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070301000000' AND log.FechaHora<='20070402000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070201000000' AND log.FechaHora<='20070302000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20070101000000' AND log.FechaHora<='20070202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; + +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20061201000000' AND log.FechaHora<='20070102000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20061101000000' AND log.FechaHora<='20061202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20061001000000' AND log.FechaHora<='20061102000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060901000000' AND log.FechaHora<='20061002000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060801000000' AND log.FechaHora<='20060902000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060701000000' AND log.FechaHora<='20060802000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060601000000' AND log.FechaHora<='20060702000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060501000000' AND log.FechaHora<='20060602000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060401000000' AND log.FechaHora<='20060502000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060301000000' AND log.FechaHora<='20060402000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060201000000' AND log.FechaHora<='20060302000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20060101000000' AND log.FechaHora<='20060202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; + +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20051201000000' AND log.FechaHora<='20060102000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20051101000000' AND log.FechaHora<='20051202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20051001000000' AND log.FechaHora<='20051102000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050901000000' AND log.FechaHora<='20051002000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050801000000' AND log.FechaHora<='20050902000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050701000000' AND log.FechaHora<='20050802000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050601000000' AND log.FechaHora<='20050702000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050501000000' AND log.FechaHora<='20050602000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050401000000' AND log.FechaHora<='20050502000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050301000000' AND log.FechaHora<='20050402000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20050201000000' AND log.FechaHora<='20050302000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora<='20050202000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; + + + + + + +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.DegCod_old=degrees.DegCod_old; + +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20071201000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20071101000000' AND log.FechaHora<='20071202000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20071001000000' AND log.FechaHora<='20071102000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070901000000' AND log.FechaHora<='20071002000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070801000000' AND log.FechaHora<='20070902000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070701000000' AND log.FechaHora<='20070802000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070601000000' AND log.FechaHora<='20070702000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070501000000' AND log.FechaHora<='20070602000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070401000000' AND log.FechaHora<='20070502000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070301000000' AND log.FechaHora<='20070402000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070201000000' AND log.FechaHora<='20070302000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20070101000000' AND log.FechaHora<='20070202000000' AND log.DegCod_old=degrees.DegCod_old; + +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20061201000000' AND log.FechaHora<='20070102000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20061101000000' AND log.FechaHora<='20061202000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20061001000000' AND log.FechaHora<='20061102000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060901000000' AND log.FechaHora<='20061002000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060801000000' AND log.FechaHora<='20060902000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060701000000' AND log.FechaHora<='20060802000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060601000000' AND log.FechaHora<='20060702000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060501000000' AND log.FechaHora<='20060602000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060401000000' AND log.FechaHora<='20060502000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060301000000' AND log.FechaHora<='20060402000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060201000000' AND log.FechaHora<='20060302000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20060101000000' AND log.FechaHora<='20060202000000' AND log.DegCod_old=degrees.DegCod_old; + +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20051201000000' AND log.FechaHora<='20060102000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20051101000000' AND log.FechaHora<='20051202000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20051001000000' AND log.FechaHora<='20051102000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050901000000' AND log.FechaHora<='20051002000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050801000000' AND log.FechaHora<='20050902000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050701000000' AND log.FechaHora<='20050802000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050601000000' AND log.FechaHora<='20050702000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050501000000' AND log.FechaHora<='20050602000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050401000000' AND log.FechaHora<='20050502000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050301000000' AND log.FechaHora<='20050402000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20050201000000' AND log.FechaHora<='20050302000000' AND log.DegCod_old=degrees.DegCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora<='20050202000000' AND log.DegCod_old=degrees.DegCod_old; + + + +UPDATE log,courses SET log.CrsCod=courses.CrsCod WHERE log.FechaHora>='20071201000000' AND log.FullCrsCod_old=courses.FullCrsCod_old; +UPDATE log,degrees SET log.DegCod=degrees.DegCod WHERE log.FechaHora>='20071201000000' AND log.DegCod_old=degrees.DegCod_old; + +SELECT FullCrsCod_old,CrsCod_old,DegCod,Year,Semester,ShortName,FullName,NumTeachers,NumStudents FROM courses WHERE CrsCod='-1'; + +DROP INDEX DegCod ON sta_degrees; +ALTER TABLE sta_degrees CHANGE DegCod DegCod_old CHAR(16) NOT NULL; +ALTER TABLE sta_degrees ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER DegCod_old; +UPDATE sta_degrees,degrees SET sta_degrees.DegCod=degrees.DegCod WHERE sta_degrees.DegCod_old=degrees.DegCod_old; +ALTER TABLE sta_degrees ADD UNIQUE INDEX (DegCod); +ALTER TABLE sta_degrees DROP COLUMN DegCod_old; + +SELECT asg_usr.CrsCod,courses.ShortName AS Name FROM asg_usr,courses WHERE asg_usr.DNI='24243619' AND asg_usr.CrsCod=courses.CrsCod ORDER BY Name; + +SELECT COUNT(DISTINCT(courses.DegCod)) FROM asg_usr,courses WHERE asg_usr.DNI='24243619' AND courses.DegCod='57' AND asg_usr.CrsCod=courses.CrsCod; + +ALTER TABLE log DROP COLUMN DegCod_old; +ALTER TABLE log DROP COLUMN FullCrsCod_old; + +mv /var/www/swad/asg/ARQ/0/2/AP /var/www/swad/crs/1 +mv /var/www/html/asg/ARQ/0/2/AP /var/www/html/crs/1 + +mv /var/www/swad/asg/ARQ/0/0/DAO /var/www/swad/crs/2 +mv /var/www/html/asg/ARQ/0/0/DAO /var/www/html/crs/2 + +mv /var/www/swad/asg/ARQ/1/0/FMA /var/www/swad/crs/3 +mv /var/www/html/asg/ARQ/1/0/FMA /var/www/html/crs/3 + +mv /var/www/swad/asg/ARQ/2/2/AF /var/www/swad/crs/4 +mv /var/www/html/asg/ARQ/2/2/AF /var/www/html/crs/4 + +mv /var/www/swad/asg/ARQ/3/0/P3 /var/www/swad/crs/5 +mv /var/www/html/asg/ARQ/3/0/P3 /var/www/html/crs/5 + +mv /var/www/swad/asg/ARQ/5/0/APFC /var/www/swad/crs/6 +mv /var/www/html/asg/ARQ/5/0/APFC /var/www/html/crs/6 + +mv /var/www/swad/asg/ARQ/5/1/E4 /var/www/swad/crs/7 +mv /var/www/html/asg/ARQ/5/1/E4 /var/www/html/crs/7 + +mv /var/www/swad/asg/ARQ/5/2/LA /var/www/swad/crs/8 +mv /var/www/html/asg/ARQ/5/2/LA /var/www/html/crs/8 + +mv /var/www/swad/asg/ARQ/5/2/LB /var/www/swad/crs/9 +mv /var/www/html/asg/ARQ/5/2/LB /var/www/html/crs/9 + +mv /var/www/swad/asg/AT/1/0/F /var/www/swad/crs/10 +mv /var/www/html/asg/AT/1/0/F /var/www/html/crs/10 + +mv /var/www/swad/asg/AT/2/0/I1AB /var/www/swad/crs/11 +mv /var/www/html/asg/AT/2/0/I1AB /var/www/html/crs/11 + +mv /var/www/swad/asg/AT/3/0/I2AB /var/www/swad/crs/12 +mv /var/www/html/asg/AT/3/0/I2AB /var/www/html/crs/12 + +mv /var/www/swad/asg/AT/3/0/MPVB /var/www/swad/crs/13 +mv /var/www/html/asg/AT/3/0/MPVB /var/www/html/crs/13 + +mv /var/www/swad/asg/AA/0/0/PF82 /var/www/swad/crs/14 +mv /var/www/html/asg/AA/0/0/PF82 /var/www/html/crs/14 + +mv /var/www/swad/asg/CAP/1/0/EEAFLE /var/www/swad/crs/15 +mv /var/www/html/asg/CAP/1/0/EEAFLE /var/www/html/crs/15 + +mv /var/www/swad/asg/CAP/1/1/ECD04 /var/www/swad/crs/16 +mv /var/www/html/asg/CAP/1/1/ECD04 /var/www/html/crs/16 + +mv /var/www/swad/asg/CEH/0/2/ASPE /var/www/swad/crs/17 +mv /var/www/html/asg/CEH/0/2/ASPE /var/www/html/crs/17 + +mv /var/www/swad/asg/CEH/0/1/PGE /var/www/swad/crs/18 +mv /var/www/html/asg/CEH/0/1/PGE /var/www/html/crs/18 + +mv /var/www/swad/asg/CLCE/0/0/CCH /var/www/swad/crs/19 +mv /var/www/html/asg/CLCE/0/0/CCH /var/www/html/crs/19 + +mv /var/www/swad/asg/CFC/0/0/MCDAPC /var/www/swad/crs/20 +mv /var/www/html/asg/CFC/0/0/MCDAPC /var/www/html/crs/20 + +mv /var/www/swad/asg/CFC/0/0/DJANGO /var/www/swad/crs/21 +mv /var/www/html/asg/CFC/0/0/DJANGO /var/www/html/crs/21 + +mv /var/www/swad/asg/DBD/1/0/HCDCA /var/www/swad/crs/22 +mv /var/www/html/asg/DBD/1/0/HCDCA /var/www/html/crs/22 + +mv /var/www/swad/asg/DCE/0/2/RFEA /var/www/swad/crs/23 +mv /var/www/html/asg/DCE/0/2/RFEA /var/www/html/crs/23 + +mv /var/www/swad/asg/DCE/1/1/AD /var/www/swad/crs/24 +mv /var/www/html/asg/DCE/1/1/AD /var/www/html/crs/24 + +mv /var/www/swad/asg/DCE/1/2/CF1 /var/www/swad/crs/25 +mv /var/www/html/asg/DCE/1/2/CF1 /var/www/html/crs/25 + +mv /var/www/swad/asg/DCE/1/1/CG /var/www/swad/crs/26 +mv /var/www/html/asg/DCE/1/1/CG /var/www/html/crs/26 + +mv /var/www/swad/asg/DCE/1/2/DMB /var/www/swad/crs/27 +mv /var/www/html/asg/DCE/1/2/DMB /var/www/html/crs/27 + +mv /var/www/swad/asg/DCE/1/1/EP /var/www/swad/crs/28 +mv /var/www/html/asg/DCE/1/1/EP /var/www/html/crs/28 + +mv /var/www/swad/asg/DCE/1/1/DC /var/www/swad/crs/29 +mv /var/www/html/asg/DCE/1/1/DC /var/www/html/crs/29 + +mv /var/www/swad/asg/DCE/1/1/DCCD /var/www/swad/crs/30 +mv /var/www/html/asg/DCE/1/1/DCCD /var/www/html/crs/30 + +mv /var/www/swad/asg/DCE/1/1/DCF /var/www/swad/crs/31 +mv /var/www/html/asg/DCE/1/1/DCF /var/www/html/crs/31 + +mv /var/www/swad/asg/DCE/1/2/INF /var/www/swad/crs/32 +mv /var/www/html/asg/DCE/1/2/INF /var/www/html/crs/32 + +mv /var/www/swad/asg/DCE/1/1/ME1 /var/www/swad/crs/33 +mv /var/www/html/asg/DCE/1/1/ME1 /var/www/html/crs/33 + +mv /var/www/swad/asg/DCE/1/2/ME2 /var/www/swad/crs/34 +mv /var/www/html/asg/DCE/1/2/ME2 /var/www/html/crs/34 + +mv /var/www/swad/asg/DCE/1/2/MC /var/www/swad/crs/35 +mv /var/www/html/asg/DCE/1/2/MC /var/www/html/crs/35 + +mv /var/www/swad/asg/DCE/1/2/MI /var/www/swad/crs/36 +mv /var/www/html/asg/DCE/1/2/MI /var/www/html/crs/36 + +mv /var/www/swad/asg/DCE/2/1/COS1 /var/www/swad/crs/37 +mv /var/www/html/asg/DCE/2/1/COS1 /var/www/html/crs/37 + +mv /var/www/swad/asg/DCE/2/2/COS2 /var/www/swad/crs/38 +mv /var/www/html/asg/DCE/2/2/COS2 /var/www/html/crs/38 + +mv /var/www/swad/asg/DCE/2/1/CF2 /var/www/swad/crs/39 +mv /var/www/html/asg/DCE/2/1/CF2 /var/www/html/crs/39 + +mv /var/www/swad/asg/DCE/2/2/DFAB /var/www/swad/crs/40 +mv /var/www/html/asg/DCE/2/2/DFAB /var/www/html/crs/40 + +mv /var/www/swad/asg/DCE/2/2/DFDE /var/www/swad/crs/41 +mv /var/www/html/asg/DCE/2/2/DFDE /var/www/html/crs/41 + +mv /var/www/swad/asg/DCE/2/1/DTS /var/www/swad/crs/42 +mv /var/www/html/asg/DCE/2/1/DTS /var/www/html/crs/42 + +mv /var/www/swad/asg/DCE/2/1/EE1 /var/www/swad/crs/43 +mv /var/www/html/asg/DCE/2/1/EE1 /var/www/html/crs/43 + +mv /var/www/swad/asg/DCE/2/2/EE2 /var/www/swad/crs/44 +mv /var/www/html/asg/DCE/2/2/EE2 /var/www/html/crs/44 + +mv /var/www/swad/asg/DCE/2/0/EEM /var/www/swad/crs/45 +mv /var/www/html/asg/DCE/2/0/EEM /var/www/html/crs/45 + +mv /var/www/swad/asg/DCE/2/2/EC /var/www/swad/crs/46 +mv /var/www/html/asg/DCE/2/2/EC /var/www/html/crs/46 + +mv /var/www/swad/asg/DCE/2/1/MARK /var/www/swad/crs/47 +mv /var/www/html/asg/DCE/2/1/MARK /var/www/html/crs/47 + +mv /var/www/swad/asg/DCE/2/2/MF /var/www/swad/crs/48 +mv /var/www/html/asg/DCE/2/2/MF /var/www/html/crs/48 + +mv /var/www/swad/asg/DCE/3/2/AC /var/www/swad/crs/49 +mv /var/www/html/asg/DCE/3/2/AC /var/www/html/crs/49 + +mv /var/www/swad/asg/DCE/3/1/AOF /var/www/swad/crs/50 +mv /var/www/html/asg/DCE/3/1/AOF /var/www/html/crs/50 + +mv /var/www/swad/asg/DCE/3/2/AEF /var/www/swad/crs/51 +mv /var/www/html/asg/DCE/3/2/AEF /var/www/html/crs/51 + +mv /var/www/swad/asg/DCE/3/1/CE /var/www/swad/crs/52 +mv /var/www/html/asg/DCE/3/1/CE /var/www/html/crs/52 + +mv /var/www/swad/asg/DCE/3/2/CC /var/www/swad/crs/53 +mv /var/www/html/asg/DCE/3/2/CC /var/www/html/crs/53 + +mv /var/www/swad/asg/DCE/3/1/CAP /var/www/swad/crs/54 +mv /var/www/html/asg/DCE/3/1/CAP /var/www/html/crs/54 + +mv /var/www/swad/asg/DCE/3/1/CSOE /var/www/swad/crs/55 +mv /var/www/html/asg/DCE/3/1/CSOE /var/www/html/crs/55 + +mv /var/www/swad/asg/DCE/3/1/CMTV /var/www/swad/crs/56 +mv /var/www/html/asg/DCE/3/1/CMTV /var/www/html/crs/56 + +mv /var/www/swad/asg/DCE/3/2/CG /var/www/swad/crs/57 +mv /var/www/html/asg/DCE/3/2/CG /var/www/html/crs/57 + +mv /var/www/swad/asg/DCE/3/2/DSS /var/www/swad/crs/58 +mv /var/www/html/asg/DCE/3/2/DSS /var/www/html/crs/58 + +mv /var/www/swad/asg/DCE/3/1/DO /var/www/swad/crs/59 +mv /var/www/html/asg/DCE/3/1/DO /var/www/html/crs/59 + +mv /var/www/swad/asg/DCE/3/1/DV /var/www/swad/crs/60 +mv /var/www/html/asg/DCE/3/1/DV /var/www/html/crs/60 + +mv /var/www/swad/asg/DCE/3/1/EGE /var/www/swad/crs/61 +mv /var/www/html/asg/DCE/3/1/EGE /var/www/html/crs/61 + +mv /var/www/swad/asg/DCE/3/2/GRH /var/www/swad/crs/62 +mv /var/www/html/asg/DCE/3/2/GRH /var/www/html/crs/62 + +mv /var/www/swad/asg/DCE/3/1/GF /var/www/swad/crs/63 +mv /var/www/html/asg/DCE/3/1/GF /var/www/html/crs/63 + +mv /var/www/swad/asg/DCE/3/2/HECOA /var/www/swad/crs/64 +mv /var/www/html/asg/DCE/3/2/HECOA /var/www/html/crs/64 + +mv /var/www/swad/asg/DCE/3/2/HECOB /var/www/swad/crs/65 +mv /var/www/html/asg/DCE/3/2/HECOB /var/www/html/crs/65 + +mv /var/www/swad/asg/DCE/3/1/MA1 /var/www/swad/crs/66 +mv /var/www/html/asg/DCE/3/1/MA1 /var/www/html/crs/66 + +mv /var/www/swad/asg/DCE/3/2/MA2 /var/www/swad/crs/67 +mv /var/www/html/asg/DCE/3/2/MA2 /var/www/html/crs/67 + +mv /var/www/swad/asg/DCE/3/2/OE /var/www/swad/crs/68 +mv /var/www/html/asg/DCE/3/2/OE /var/www/html/crs/68 + +mv /var/www/swad/asg/DCE/3/2/OAE /var/www/swad/crs/69 +mv /var/www/html/asg/DCE/3/2/OAE /var/www/html/crs/69 + +mv /var/www/swad/asg/DCE/3/2/RL /var/www/swad/crs/70 +mv /var/www/html/asg/DCE/3/2/RL /var/www/html/crs/70 + +mv /var/www/swad/asg/DCE/3/2/TGBI /var/www/swad/crs/71 +mv /var/www/html/asg/DCE/3/2/TGBI /var/www/html/crs/71 + +mv /var/www/swad/asg/DCEC/2/1/MARK1 /var/www/swad/crs/72 +mv /var/www/html/asg/DCEC/2/1/MARK1 /var/www/html/crs/72 + +mv /var/www/swad/asg/DCEC/2/2/MARK2 /var/www/swad/crs/73 +mv /var/www/html/asg/DCEC/2/2/MARK2 /var/www/html/crs/73 + +mv /var/www/swad/asg/DCEC/3/1/CC /var/www/swad/crs/74 +mv /var/www/html/asg/DCEC/3/1/CC /var/www/html/crs/74 + +mv /var/www/swad/asg/DCEC/3/2/CC /var/www/swad/crs/75 +mv /var/www/html/asg/DCEC/3/2/CC /var/www/html/crs/75 + +mv /var/www/swad/asg/DES/0/1/ISAF /var/www/swad/crs/76 +mv /var/www/html/asg/DES/0/1/ISAF /var/www/html/crs/76 + +mv /var/www/swad/asg/DES/0/2/SSAM /var/www/swad/crs/77 +mv /var/www/html/asg/DES/0/2/SSAM /var/www/html/crs/77 + +mv /var/www/swad/asg/DES/1/1/PLES /var/www/swad/crs/78 +mv /var/www/html/asg/DES/1/1/PLES /var/www/html/crs/78 + +mv /var/www/swad/asg/DES/2/1/CSRG /var/www/swad/crs/79 +mv /var/www/html/asg/DES/2/1/CSRG /var/www/html/crs/79 + +mv /var/www/swad/asg/DES/2/1/DOAENF /var/www/swad/crs/80 +mv /var/www/html/asg/DES/2/1/DOAENF /var/www/html/crs/80 + +mv /var/www/swad/asg/DES/2/1/DEPS /var/www/swad/crs/81 +mv /var/www/html/asg/DES/2/1/DEPS /var/www/html/crs/81 + +mv /var/www/swad/asg/DES/2/1/ESPIP /var/www/swad/crs/82 +mv /var/www/html/asg/DES/2/1/ESPIP /var/www/html/crs/82 + +mv /var/www/swad/asg/DES/2/1/EP /var/www/swad/crs/83 +mv /var/www/html/asg/DES/2/1/EP /var/www/html/crs/83 + +mv /var/www/swad/asg/DES/2/0/IEPFDS /var/www/swad/crs/84 +mv /var/www/html/asg/DES/2/0/IEPFDS /var/www/html/crs/84 + +mv /var/www/swad/asg/DES/2/0/IEPFD3 /var/www/swad/crs/85 +mv /var/www/html/asg/DES/2/0/IEPFD3 /var/www/html/crs/85 + +mv /var/www/swad/asg/DES/2/2/PEPM /var/www/swad/crs/86 +mv /var/www/html/asg/DES/2/2/PEPM /var/www/html/crs/86 + +mv /var/www/swad/asg/DES/3/1/P /var/www/swad/crs/87 +mv /var/www/html/asg/DES/3/1/P /var/www/html/crs/87 + +mv /var/www/swad/asg/DES/3/2/NTAE /var/www/swad/crs/88 +mv /var/www/html/asg/DES/3/2/NTAE /var/www/html/crs/88 + +mv /var/www/swad/asg/DENF/1/2/B /var/www/swad/crs/89 +mv /var/www/html/asg/DENF/1/2/B /var/www/html/crs/89 + +mv /var/www/swad/asg/DENF/1/0/FE /var/www/swad/crs/90 +mv /var/www/html/asg/DENF/1/0/FE /var/www/html/crs/90 + +mv /var/www/swad/asg/DENF/2/0/EM1 /var/www/swad/crs/91 +mv /var/www/html/asg/DENF/2/0/EM1 /var/www/html/crs/91 + +mv /var/www/swad/asg/DENF/2/0/EQ1 /var/www/swad/crs/92 +mv /var/www/html/asg/DENF/2/0/EQ1 /var/www/html/crs/92 + +mv /var/www/swad/asg/DENF/3/0/ASE /var/www/swad/crs/93 +mv /var/www/html/asg/DENF/3/0/ASE /var/www/html/crs/93 + +mv /var/www/swad/asg/DENF/3/0/ER /var/www/swad/crs/94 +mv /var/www/html/asg/DENF/3/0/ER /var/www/html/crs/94 + +mv /var/www/swad/asg/DENF/3/2/FEJFG /var/www/swad/crs/95 +mv /var/www/html/asg/DENF/3/2/FEJFG /var/www/html/crs/95 + +mv /var/www/swad/asg/DENFM/2/0/EMQ2 /var/www/swad/crs/96 +mv /var/www/html/asg/DENFM/2/0/EMQ2 /var/www/html/crs/96 + +mv /var/www/swad/asg/DENFM/3/0/EMQ4 /var/www/swad/crs/97 +mv /var/www/html/asg/DENFM/3/0/EMQ4 /var/www/html/crs/97 + +mv /var/www/swad/asg/DE/1/2/ACP /var/www/swad/crs/98 +mv /var/www/html/asg/DE/1/2/ACP /var/www/html/crs/98 + +mv /var/www/swad/asg/DE/1/1/CP /var/www/swad/crs/99 +mv /var/www/html/asg/DE/1/1/CP /var/www/html/crs/99 + +mv /var/www/swad/asg/DE/1/1/ED /var/www/swad/crs/100 +mv /var/www/html/asg/DE/1/1/ED /var/www/html/crs/100 + +mv /var/www/swad/asg/DE/1/1/FI /var/www/swad/crs/101 +mv /var/www/html/asg/DE/1/1/FI /var/www/html/crs/101 + +mv /var/www/swad/asg/DE/2/2/EP /var/www/swad/crs/102 +mv /var/www/html/asg/DE/2/2/EP /var/www/html/crs/102 + +mv /var/www/swad/asg/DE/2/1/M1 /var/www/swad/crs/103 +mv /var/www/html/asg/DE/2/1/M1 /var/www/html/crs/103 + +mv /var/www/swad/asg/DE/3/1/SC /var/www/swad/crs/104 +mv /var/www/html/asg/DE/3/1/SC /var/www/html/crs/104 + +mv /var/www/swad/asg/DE/3/1/TEE /var/www/swad/crs/105 +mv /var/www/html/asg/DE/3/1/TEE /var/www/html/crs/105 + +mv /var/www/swad/asg/DF/0/2/FD /var/www/swad/crs/106 +mv /var/www/html/asg/DF/0/2/FD /var/www/html/crs/106 + +mv /var/www/swad/asg/DF/0/1/TACM /var/www/swad/crs/107 +mv /var/www/html/asg/DF/0/1/TACM /var/www/html/crs/107 + +mv /var/www/swad/asg/DF/0/1/TAMJF /var/www/swad/crs/108 +mv /var/www/html/asg/DF/0/1/TAMJF /var/www/html/crs/108 + +mv /var/www/swad/asg/DF/1/2/EF /var/www/swad/crs/109 +mv /var/www/html/asg/DF/1/2/EF /var/www/html/crs/109 + +mv /var/www/swad/asg/DF/1/0/FGAM /var/www/swad/crs/110 +mv /var/www/html/asg/DF/1/0/FGAM /var/www/html/crs/110 + +mv /var/www/swad/asg/DF/1/0/FGCV /var/www/swad/crs/111 +mv /var/www/html/asg/DF/1/0/FGCV /var/www/html/crs/111 + +mv /var/www/swad/asg/DF/1/0/FGEC /var/www/swad/crs/112 +mv /var/www/html/asg/DF/1/0/FGEC /var/www/html/crs/112 + +mv /var/www/swad/asg/DF/1/0/FGJFG /var/www/swad/crs/113 +mv /var/www/html/asg/DF/1/0/FGJFG /var/www/html/crs/113 + +mv /var/www/swad/asg/DF/2/0/BAM /var/www/swad/crs/114 +mv /var/www/html/asg/DF/2/0/BAM /var/www/html/crs/114 + +mv /var/www/swad/asg/DF/2/0/BCV /var/www/swad/crs/115 +mv /var/www/html/asg/DF/2/0/BCV /var/www/html/crs/115 + +mv /var/www/swad/asg/DF/2/0/BGV /var/www/swad/crs/116 +mv /var/www/html/asg/DF/2/0/BGV /var/www/html/crs/116 + +mv /var/www/swad/asg/DF/2/0/BT /var/www/swad/crs/117 +mv /var/www/html/asg/DF/2/0/BT /var/www/html/crs/117 + +mv /var/www/swad/asg/DF/2/0/FE1BE /var/www/swad/crs/118 +mv /var/www/html/asg/DF/2/0/FE1BE /var/www/html/crs/118 + +mv /var/www/swad/asg/DF/2/0/FE1CM /var/www/swad/crs/119 +mv /var/www/html/asg/DF/2/0/FE1CM /var/www/html/crs/119 + +mv /var/www/swad/asg/DF/2/0/FE1MJF /var/www/swad/crs/120 +mv /var/www/html/asg/DF/2/0/FE1MJF /var/www/html/crs/120 + +mv /var/www/swad/asg/DF/3/0/FE2A /var/www/swad/crs/121 +mv /var/www/html/asg/DF/3/0/FE2A /var/www/html/crs/121 + +mv /var/www/swad/asg/DF/3/0/FE2E /var/www/swad/crs/122 +mv /var/www/html/asg/DF/3/0/FE2E /var/www/html/crs/122 + +mv /var/www/swad/asg/DF/3/1/NS /var/www/swad/crs/123 +mv /var/www/html/asg/DF/3/1/NS /var/www/html/crs/123 + +mv /var/www/swad/asg/DF/3/0/SPLS /var/www/swad/crs/124 +mv /var/www/html/asg/DF/3/0/SPLS /var/www/html/crs/124 + +mv /var/www/swad/asg/DL/1/2/FOAL /var/www/swad/crs/125 +mv /var/www/html/asg/DL/1/2/FOAL /var/www/html/crs/125 + +mv /var/www/swad/asg/DL/1/2/PPDHP /var/www/swad/crs/126 +mv /var/www/html/asg/DL/1/2/PPDHP /var/www/html/crs/126 + +mv /var/www/swad/asg/DNHD/0/1/BMAN /var/www/swad/crs/127 +mv /var/www/html/asg/DNHD/0/1/BMAN /var/www/html/crs/127 + +mv /var/www/swad/asg/DNHD/1/1/AC /var/www/swad/crs/128 +mv /var/www/html/asg/DNHD/1/1/AC /var/www/html/crs/128 + +mv /var/www/swad/asg/DNHD/1/0/B /var/www/swad/crs/129 +mv /var/www/html/asg/DNHD/1/0/B /var/www/html/crs/129 + +mv /var/www/swad/asg/DNHD/1/1/BR /var/www/swad/crs/130 +mv /var/www/html/asg/DNHD/1/1/BR /var/www/html/crs/130 + +mv /var/www/swad/asg/DNHD/1/2/FA /var/www/swad/crs/131 +mv /var/www/html/asg/DNHD/1/2/FA /var/www/html/crs/131 + +mv /var/www/swad/asg/DNHD/1/1/QOA /var/www/swad/crs/132 +mv /var/www/html/asg/DNHD/1/1/QOA /var/www/html/crs/132 + +mv /var/www/swad/asg/DNHD/1/2/TAA /var/www/swad/crs/133 +mv /var/www/html/asg/DNHD/1/2/TAA /var/www/html/crs/133 + +mv /var/www/swad/asg/DNHD/1/2/TC /var/www/swad/crs/134 +mv /var/www/html/asg/DNHD/1/2/TC /var/www/html/crs/134 + +mv /var/www/swad/asg/DNHD/2/1/BN /var/www/swad/crs/135 +mv /var/www/html/asg/DNHD/2/1/BN /var/www/html/crs/135 + +mv /var/www/swad/asg/DNHD/2/0/D /var/www/swad/crs/136 +mv /var/www/html/asg/DNHD/2/0/D /var/www/html/crs/136 + +mv /var/www/swad/asg/DNHD/2/1/ME /var/www/swad/crs/137 +mv /var/www/html/asg/DNHD/2/1/ME /var/www/html/crs/137 + +mv /var/www/swad/asg/DNHD/2/0/MPCA /var/www/swad/crs/138 +mv /var/www/html/asg/DNHD/2/0/MPCA /var/www/html/crs/138 + +mv /var/www/swad/asg/DNHD/2/0/MPCAC /var/www/swad/crs/139 +mv /var/www/html/asg/DNHD/2/0/MPCAC /var/www/html/crs/139 + +mv /var/www/swad/asg/DNHD/3/1/BN /var/www/swad/crs/140 +mv /var/www/html/asg/DNHD/3/1/BN /var/www/html/crs/140 + +mv /var/www/swad/asg/DOO/0/1/SVD /var/www/swad/crs/141 +mv /var/www/html/asg/DOO/0/1/SVD /var/www/html/crs/141 + +mv /var/www/swad/asg/DOO/1/0/EFSV1 /var/www/swad/crs/142 +mv /var/www/html/asg/DOO/1/0/EFSV1 /var/www/html/crs/142 + +mv /var/www/swad/asg/DOO/1/0/F /var/www/swad/crs/143 +mv /var/www/html/asg/DOO/1/0/F /var/www/html/crs/143 + +mv /var/www/swad/asg/DOO/1/0/FP /var/www/swad/crs/144 +mv /var/www/html/asg/DOO/1/0/FP /var/www/html/crs/144 + +mv /var/www/swad/asg/DOO/1/0/O1A /var/www/swad/crs/145 +mv /var/www/html/asg/DOO/1/0/O1A /var/www/html/crs/145 + +mv /var/www/swad/asg/DOO/1/0/O1B /var/www/swad/crs/146 +mv /var/www/html/asg/DOO/1/0/O1B /var/www/html/crs/146 + +mv /var/www/swad/asg/DOO/1/0/O1P /var/www/swad/crs/147 +mv /var/www/html/asg/DOO/1/0/O1P /var/www/html/crs/147 + +mv /var/www/swad/asg/DOO/1/2/TO1T /var/www/swad/crs/148 +mv /var/www/html/asg/DOO/1/2/TO1T /var/www/html/crs/148 + +mv /var/www/swad/asg/DOO/1/2/TO1P /var/www/swad/crs/149 +mv /var/www/html/asg/DOO/1/2/TO1P /var/www/html/crs/149 + +mv /var/www/swad/asg/DOO/2/2/AAP /var/www/swad/crs/150 +mv /var/www/html/asg/DOO/2/2/AAP /var/www/html/crs/150 + +mv /var/www/swad/asg/DOO/2/0/EFSV2 /var/www/swad/crs/151 +mv /var/www/html/asg/DOO/2/0/EFSV2 /var/www/html/crs/151 + +mv /var/www/swad/asg/DOO/2/0/O2 /var/www/swad/crs/152 +mv /var/www/html/asg/DOO/2/0/O2 /var/www/html/crs/152 + +mv /var/www/swad/asg/DOO/2/0/O2P /var/www/swad/crs/153 +mv /var/www/html/asg/DOO/2/0/O2P /var/www/html/crs/153 + +mv /var/www/swad/asg/DOO/2/1/OC1 /var/www/swad/crs/154 +mv /var/www/html/asg/DOO/2/1/OC1 /var/www/html/crs/154 + +mv /var/www/swad/asg/DOO/2/2/OC2 /var/www/swad/crs/155 +mv /var/www/html/asg/DOO/2/2/OC2 /var/www/html/crs/155 + +mv /var/www/swad/asg/DOO/3/2/OC3 /var/www/swad/crs/156 +mv /var/www/html/asg/DOO/3/2/OC3 /var/www/html/crs/156 + +mv /var/www/swad/asg/DOO/3/1/RFC /var/www/swad/crs/157 +mv /var/www/html/asg/DOO/3/1/RFC /var/www/html/crs/157 + +mv /var/www/swad/asg/DRL/0/1/PCEP /var/www/swad/crs/158 +mv /var/www/html/asg/DRL/0/1/PCEP /var/www/html/crs/158 + +mv /var/www/swad/asg/DRL/1/0/DGP /var/www/swad/crs/159 +mv /var/www/html/asg/DRL/1/0/DGP /var/www/html/crs/159 + +mv /var/www/swad/asg/DRL/1/1/E /var/www/swad/crs/160 +mv /var/www/html/asg/DRL/1/1/E /var/www/html/crs/160 + +mv /var/www/swad/asg/DRL/1/1/ESD /var/www/swad/crs/161 +mv /var/www/html/asg/DRL/1/1/ESD /var/www/html/crs/161 + +mv /var/www/swad/asg/DRL/1/1/ESE /var/www/swad/crs/162 +mv /var/www/html/asg/DRL/1/1/ESE /var/www/html/crs/162 + +mv /var/www/swad/asg/DRL/1/1/ESF /var/www/swad/crs/163 +mv /var/www/html/asg/DRL/1/1/ESF /var/www/html/crs/163 + +mv /var/www/swad/asg/DRL/1/2/EAO /var/www/swad/crs/164 +mv /var/www/html/asg/DRL/1/2/EAO /var/www/html/crs/164 + +mv /var/www/swad/asg/DRL/1/2/EAOC2 /var/www/swad/crs/165 +mv /var/www/html/asg/DRL/1/2/EAOC2 /var/www/html/crs/165 + +mv /var/www/swad/asg/DRL/2/1/ADPP /var/www/swad/crs/166 +mv /var/www/html/asg/DRL/2/1/ADPP /var/www/html/crs/166 + +mv /var/www/swad/asg/DRL/2/0/DSS /var/www/swad/crs/167 +mv /var/www/html/asg/DRL/2/0/DSS /var/www/html/crs/167 + +mv /var/www/swad/asg/DRL/2/0/DT /var/www/swad/crs/168 +mv /var/www/html/asg/DRL/2/0/DT /var/www/html/crs/168 + +mv /var/www/swad/asg/DRL/2/2/GERH /var/www/swad/crs/169 +mv /var/www/html/asg/DRL/2/2/GERH /var/www/html/crs/169 + +mv /var/www/swad/asg/DRL/2/1/IDP /var/www/swad/crs/170 +mv /var/www/html/asg/DRL/2/1/IDP /var/www/html/crs/170 + +mv /var/www/swad/asg/DRL/2/0/OMT /var/www/swad/crs/171 +mv /var/www/html/asg/DRL/2/0/OMT /var/www/html/crs/171 + +mv /var/www/swad/asg/DRL/2/2/PI1 /var/www/swad/crs/172 +mv /var/www/html/asg/DRL/2/2/PI1 /var/www/html/crs/172 + +mv /var/www/swad/asg/DRL/2/2/RFEA /var/www/swad/crs/173 +mv /var/www/html/asg/DRL/2/2/RFEA /var/www/html/crs/173 + +mv /var/www/swad/asg/DRL/2/2/RFED /var/www/swad/crs/174 +mv /var/www/html/asg/DRL/2/2/RFED /var/www/html/crs/174 + +mv /var/www/swad/asg/DRL/2/2/RFEE /var/www/swad/crs/175 +mv /var/www/html/asg/DRL/2/2/RFEE /var/www/html/crs/175 + +mv /var/www/swad/asg/DRL/2/1/ST /var/www/swad/crs/176 +mv /var/www/html/asg/DRL/2/1/ST /var/www/html/crs/176 + +mv /var/www/swad/asg/DRL/3/1/CGCD /var/www/swad/crs/177 +mv /var/www/html/asg/DRL/3/1/CGCD /var/www/html/crs/177 + +mv /var/www/swad/asg/DRL/3/0/PTA /var/www/swad/crs/178 +mv /var/www/html/asg/DRL/3/0/PTA /var/www/html/crs/178 + +mv /var/www/swad/asg/DTO/0/2/TFTO /var/www/swad/crs/179 +mv /var/www/html/asg/DTO/0/2/TFTO /var/www/html/crs/179 + +mv /var/www/swad/asg/DTO/1/0/ECH /var/www/swad/crs/180 +mv /var/www/html/asg/DTO/1/0/ECH /var/www/html/crs/180 + +mv /var/www/swad/asg/DTO/1/1/PAA /var/www/swad/crs/181 +mv /var/www/html/asg/DTO/1/1/PAA /var/www/html/crs/181 + +mv /var/www/swad/asg/DTO/2/0/AMQ1 /var/www/swad/crs/182 +mv /var/www/html/asg/DTO/2/0/AMQ1 /var/www/html/crs/182 + +mv /var/www/swad/asg/DTO/3/0/AMQ2 /var/www/swad/crs/183 +mv /var/www/html/asg/DTO/3/0/AMQ2 /var/www/html/crs/183 + +mv /var/www/swad/asg/DTO/3/0/G /var/www/swad/crs/184 +mv /var/www/html/asg/DTO/3/0/G /var/www/html/crs/184 + +mv /var/www/swad/asg/DTO/3/0/TOA2I /var/www/swad/crs/185 +mv /var/www/html/asg/DTO/3/0/TOA2I /var/www/html/crs/185 + +mv /var/www/swad/asg/DTS/0/2/ETS /var/www/swad/crs/186 +mv /var/www/html/asg/DTS/0/2/ETS /var/www/html/crs/186 + +mv /var/www/swad/asg/DTS/0/2/EATS /var/www/swad/crs/187 +mv /var/www/html/asg/DTS/0/2/EATS /var/www/html/crs/187 + +mv /var/www/swad/asg/DTS/0/1/GTS /var/www/swad/crs/188 +mv /var/www/html/asg/DTS/0/1/GTS /var/www/html/crs/188 + +mv /var/www/swad/asg/DTS/0/1/PDTS /var/www/swad/crs/189 +mv /var/www/html/asg/DTS/0/1/PDTS /var/www/html/crs/189 + +mv /var/www/swad/asg/DTS/0/1/PSEUE /var/www/swad/crs/190 +mv /var/www/html/asg/DTS/0/1/PSEUE /var/www/html/crs/190 + +mv /var/www/swad/asg/DTS/0/1/SPTS /var/www/swad/crs/191 +mv /var/www/html/asg/DTS/0/1/SPTS /var/www/html/crs/191 + +mv /var/www/swad/asg/DTS/0/1/TSAJ /var/www/swad/crs/192 +mv /var/www/html/asg/DTS/0/1/TSAJ /var/www/html/crs/192 + +mv /var/www/swad/asg/DTS/0/2/TSAPS /var/www/swad/crs/193 +mv /var/www/html/asg/DTS/0/2/TSAPS /var/www/html/crs/193 + +mv /var/www/swad/asg/DTS/0/1/TSD /var/www/swad/crs/194 +mv /var/www/html/asg/DTS/0/1/TSD /var/www/html/crs/194 + +mv /var/www/swad/asg/DTS/0/2/TSG /var/www/swad/crs/195 +mv /var/www/html/asg/DTS/0/2/TSG /var/www/html/crs/195 + +mv /var/www/swad/asg/DTS/0/2/TSS /var/www/swad/crs/196 +mv /var/www/html/asg/DTS/0/2/TSS /var/www/html/crs/196 + +mv /var/www/swad/asg/DTS/0/1/TSSSI /var/www/swad/crs/197 +mv /var/www/html/asg/DTS/0/1/TSSSI /var/www/html/crs/197 + +mv /var/www/swad/asg/DTS/1/0/IFMTSA /var/www/swad/crs/198 +mv /var/www/html/asg/DTS/1/0/IFMTSA /var/www/html/crs/198 + +mv /var/www/swad/asg/DTS/1/0/IFMTSB /var/www/swad/crs/199 +mv /var/www/html/asg/DTS/1/0/IFMTSB /var/www/html/crs/199 + +mv /var/www/swad/asg/DTS/1/0/SS1 /var/www/swad/crs/200 +mv /var/www/html/asg/DTS/1/0/SS1 /var/www/html/crs/200 + +mv /var/www/swad/asg/DTS/2/1/IFE1 /var/www/swad/crs/201 +mv /var/www/html/asg/DTS/2/1/IFE1 /var/www/html/crs/201 + +mv /var/www/swad/asg/DTS/2/2/IFE2 /var/www/swad/crs/202 +mv /var/www/html/asg/DTS/2/2/IFE2 /var/www/html/crs/202 + +mv /var/www/swad/asg/DTS/2/0/MCATS /var/www/swad/crs/203 +mv /var/www/html/asg/DTS/2/0/MCATS /var/www/html/crs/203 + +mv /var/www/swad/asg/DTS/2/2/PS /var/www/swad/crs/204 +mv /var/www/html/asg/DTS/2/2/PS /var/www/html/crs/204 + +mv /var/www/swad/asg/DTS/2/0/SS2 /var/www/swad/crs/205 +mv /var/www/html/asg/DTS/2/0/SS2 /var/www/html/crs/205 + +mv /var/www/swad/asg/DTS/2/0/TSC /var/www/swad/crs/206 +mv /var/www/html/asg/DTS/2/0/TSC /var/www/html/crs/206 + +mv /var/www/swad/asg/DTS/2/1/TSIFG /var/www/swad/crs/207 +mv /var/www/html/asg/DTS/2/1/TSIFG /var/www/html/crs/207 + +mv /var/www/swad/asg/DTUR/0/1/SFP /var/www/swad/crs/208 +mv /var/www/html/asg/DTUR/0/1/SFP /var/www/html/crs/208 + +mv /var/www/swad/asg/DTUR/1/1/ACSTA /var/www/swad/crs/209 +mv /var/www/html/asg/DTUR/1/1/ACSTA /var/www/html/crs/209 + +mv /var/www/swad/asg/DTUR/1/1/ACST /var/www/swad/crs/210 +mv /var/www/html/asg/DTUR/1/1/ACST /var/www/html/crs/210 + +mv /var/www/swad/asg/DTUR/1/1/DL1 /var/www/swad/crs/211 +mv /var/www/html/asg/DTUR/1/1/DL1 /var/www/html/crs/211 + +mv /var/www/swad/asg/DTUR/1/0/IE /var/www/swad/crs/212 +mv /var/www/html/asg/DTUR/1/0/IE /var/www/html/crs/212 + +mv /var/www/swad/asg/DTUR/3/2/ETC /var/www/swad/crs/213 +mv /var/www/html/asg/DTUR/3/2/ETC /var/www/html/crs/213 + +mv /var/www/swad/asg/DAFESC/0/0/AFAD /var/www/swad/crs/214 +mv /var/www/html/asg/DAFESC/0/0/AFAD /var/www/html/crs/214 + +mv /var/www/swad/asg/DAFESC/0/0/AFESC /var/www/swad/crs/215 +mv /var/www/html/asg/DAFESC/0/0/AFESC /var/www/html/crs/215 + +mv /var/www/swad/asg/DAFESC/0/0/CRVAF /var/www/swad/crs/216 +mv /var/www/html/asg/DAFESC/0/0/CRVAF /var/www/html/crs/216 + +mv /var/www/swad/asg/DAFESC/0/0/CCM /var/www/swad/crs/217 +mv /var/www/html/asg/DAFESC/0/0/CCM /var/www/html/crs/217 + +mv /var/www/swad/asg/DAFESC/0/0/DISAAF /var/www/swad/crs/218 +mv /var/www/html/asg/DAFESC/0/0/DISAAF /var/www/html/crs/218 + +mv /var/www/swad/asg/DAFESC/0/0/ECEC /var/www/swad/crs/219 +mv /var/www/html/asg/DAFESC/0/0/ECEC /var/www/html/crs/219 + +mv /var/www/swad/asg/DAFESC/0/0/ICAFD /var/www/swad/crs/220 +mv /var/www/html/asg/DAFESC/0/0/ICAFD /var/www/html/crs/220 + +mv /var/www/swad/asg/DAFESC/0/0/NPIEI /var/www/swad/crs/221 +mv /var/www/html/asg/DAFESC/0/0/NPIEI /var/www/html/crs/221 + +mv /var/www/swad/asg/DAFESC/0/0/PISEF /var/www/swad/crs/222 +mv /var/www/html/asg/DAFESC/0/0/PISEF /var/www/html/crs/222 + +mv /var/www/swad/asg/DAFESC/0/0/RAFSC /var/www/swad/crs/223 +mv /var/www/html/asg/DAFESC/0/0/RAFSC /var/www/html/crs/223 + +mv /var/www/swad/asg/DAFESC/0/0/TCCIS /var/www/swad/crs/224 +mv /var/www/html/asg/DAFESC/0/0/TCCIS /var/www/html/crs/224 + +mv /var/www/swad/asg/DAFESC/0/0/TICAEF /var/www/swad/crs/225 +mv /var/www/html/asg/DAFESC/0/0/TICAEF /var/www/html/crs/225 + +mv /var/www/swad/asg/DAFESC/0/0/USIEF /var/www/swad/crs/226 +mv /var/www/html/asg/DAFESC/0/0/USIEF /var/www/html/crs/226 + +mv /var/www/swad/asg/DAGOT/0/0/ET /var/www/swad/crs/227 +mv /var/www/html/asg/DAGOT/0/0/ET /var/www/html/crs/227 + +mv /var/www/swad/asg/DASDC/0/0/EIMC /var/www/swad/crs/228 +mv /var/www/html/asg/DASDC/0/0/EIMC /var/www/html/crs/228 + +mv /var/www/swad/asg/DAVE/0/0/EAVOL /var/www/swad/crs/229 +mv /var/www/html/asg/DAVE/0/0/EAVOL /var/www/html/crs/229 + +mv /var/www/swad/asg/DCPIEC/1/0/NTII /var/www/swad/crs/230 +mv /var/www/html/asg/DCPIEC/1/0/NTII /var/www/html/crs/230 + +mv /var/www/swad/asg/DDC/0/0/CNCA /var/www/swad/crs/231 +mv /var/www/html/asg/DDC/0/0/CNCA /var/www/html/crs/231 + +mv /var/www/swad/asg/DDCE/0/0/SIDLFT /var/www/swad/crs/232 +mv /var/www/html/asg/DDCE/0/0/SIDLFT /var/www/html/crs/232 + +mv /var/www/swad/asg/DDMPR/0/0/PIRRJ /var/www/swad/crs/233 +mv /var/www/html/asg/DDMPR/0/0/PIRRJ /var/www/html/crs/233 + +mv /var/www/swad/asg/DDMPR/0/0/NFGTM /var/www/swad/crs/234 +mv /var/www/html/asg/DDMPR/0/0/NFGTM /var/www/html/crs/234 + +mv /var/www/swad/asg/DDM/0/2/TEDE /var/www/swad/crs/235 +mv /var/www/html/asg/DDM/0/2/TEDE /var/www/html/crs/235 + +mv /var/www/swad/asg/DDNT/0/0/SMTBA /var/www/swad/crs/236 +mv /var/www/html/asg/DDNT/0/0/SMTBA /var/www/html/crs/236 + +mv /var/www/swad/asg/DDLL/0/1/ATELE /var/www/swad/crs/237 +mv /var/www/html/asg/DDLL/0/1/ATELE /var/www/html/crs/237 + +mv /var/www/swad/asg/DDLL/0/2/CLRLP /var/www/swad/crs/238 +mv /var/www/html/asg/DDLL/0/2/CLRLP /var/www/html/crs/238 + +mv /var/www/swad/asg/DESFM/0/0/VFMIS /var/www/swad/crs/239 +mv /var/www/html/asg/DESFM/0/0/VFMIS /var/www/html/crs/239 + +mv /var/www/swad/asg/DEMG/0/2/EFAD /var/www/swad/crs/240 +mv /var/www/html/asg/DEMG/0/2/EFAD /var/www/html/crs/240 + +mv /var/www/swad/asg/DEMG/0/0/GSMH /var/www/swad/crs/241 +mv /var/www/html/asg/DEMG/0/0/GSMH /var/www/html/crs/241 + +mv /var/www/swad/asg/DEMG/0/0/RTLTF /var/www/swad/crs/242 +mv /var/www/html/asg/DEMG/0/0/RTLTF /var/www/html/crs/242 + +mv /var/www/swad/asg/DEMG/0/2/RPMDP /var/www/swad/crs/243 +mv /var/www/html/asg/DEMG/0/2/RPMDP /var/www/html/crs/243 + +mv /var/www/swad/asg/DESFI/0/0/ALL /var/www/swad/crs/244 +mv /var/www/html/asg/DESFI/0/0/ALL /var/www/html/crs/244 + +mv /var/www/swad/asg/DESFI/0/0/AACIEP /var/www/swad/crs/245 +mv /var/www/html/asg/DESFI/0/0/AACIEP /var/www/html/crs/245 + +mv /var/www/swad/asg/DESFI/0/0/FSALI /var/www/swad/crs/246 +mv /var/www/html/asg/DESFI/0/0/FSALI /var/www/html/crs/246 + +mv /var/www/swad/asg/DESFI/0/0/PGTLI /var/www/swad/crs/247 +mv /var/www/html/asg/DESFI/0/0/PGTLI /var/www/html/crs/247 + +mv /var/www/swad/asg/DIPP/0/0/TIAIP /var/www/swad/crs/248 +mv /var/www/html/asg/DIPP/0/0/TIAIP /var/www/html/crs/248 + +mv /var/www/swad/asg/DICPA/0/0/MBC /var/www/swad/crs/249 +mv /var/www/html/asg/DICPA/0/0/MBC /var/www/html/crs/249 + +mv /var/www/swad/asg/DLPAC/0/0/CLPVAC /var/www/swad/crs/250 +mv /var/www/html/asg/DLPAC/0/0/CLPVAC /var/www/html/crs/250 + +mv /var/www/swad/asg/DLPAC/0/0/CPAEA /var/www/swad/crs/251 +mv /var/www/html/asg/DLPAC/0/0/CPAEA /var/www/html/crs/251 + +mv /var/www/swad/asg/DLPAC/0/0/EAAE /var/www/swad/crs/252 +mv /var/www/html/asg/DLPAC/0/0/EAAE /var/www/html/crs/252 + +mv /var/www/swad/asg/DLPAC/0/0/ECN /var/www/swad/crs/253 +mv /var/www/html/asg/DLPAC/0/0/ECN /var/www/html/crs/253 + +mv /var/www/swad/asg/DLPAC/0/0/FIES /var/www/swad/crs/254 +mv /var/www/html/asg/DLPAC/0/0/FIES /var/www/html/crs/254 + +mv /var/www/swad/asg/DLPAC/0/0/HLRAC /var/www/swad/crs/255 +mv /var/www/html/asg/DLPAC/0/0/HLRAC /var/www/html/crs/255 + +mv /var/www/swad/asg/DLPAC/0/0/CAH /var/www/swad/crs/256 +mv /var/www/html/asg/DLPAC/0/0/CAH /var/www/html/crs/256 + +mv /var/www/swad/asg/DLPAC/0/0/OLES /var/www/swad/crs/257 +mv /var/www/html/asg/DLPAC/0/0/OLES /var/www/html/crs/257 + +mv /var/www/swad/asg/DLPAC/0/0/RE /var/www/swad/crs/258 +mv /var/www/html/asg/DLPAC/0/0/RE /var/www/html/crs/258 + +mv /var/www/swad/asg/DLPAC/0/0/NCIOA /var/www/swad/crs/259 +mv /var/www/html/asg/DLPAC/0/0/NCIOA /var/www/html/crs/259 + +mv /var/www/swad/asg/DLPAC/0/0/PATC /var/www/swad/crs/260 +mv /var/www/html/asg/DLPAC/0/0/PATC /var/www/html/crs/260 + +mv /var/www/swad/asg/DLPAC/0/0/TEUC /var/www/swad/crs/261 +mv /var/www/html/asg/DLPAC/0/0/TEUC /var/www/html/crs/261 + +mv /var/www/swad/asg/DMEA/1/0/ICA /var/www/swad/crs/262 +mv /var/www/html/asg/DMEA/1/0/ICA /var/www/html/crs/262 + +mv /var/www/swad/asg/DMEA/1/0/MEEA /var/www/swad/crs/263 +mv /var/www/html/asg/DMEA/1/0/MEEA /var/www/html/crs/263 + +mv /var/www/swad/asg/DPRL/0/0/PRP /var/www/swad/crs/264 +mv /var/www/html/asg/DPRL/0/0/PRP /var/www/html/crs/264 + +mv /var/www/swad/asg/DQ/1/2/APCLAR /var/www/swad/crs/265 +mv /var/www/html/asg/DQ/1/2/APCLAR /var/www/html/crs/265 + +mv /var/www/swad/asg/DSAH/0/2/PSGHE /var/www/swad/crs/266 +mv /var/www/html/asg/DSAH/0/2/PSGHE /var/www/html/crs/266 + +mv /var/www/swad/asg/DTLA/1/0/SLSC /var/www/swad/crs/267 +mv /var/www/html/asg/DTLA/1/0/SLSC /var/www/html/crs/267 + +mv /var/www/swad/asg/DTSC/0/0/TAT /var/www/swad/crs/268 +mv /var/www/html/asg/DTSC/0/0/TAT /var/www/html/crs/268 + +mv /var/www/swad/asg/DS/1/0/AIG /var/www/swad/crs/269 +mv /var/www/html/asg/DS/1/0/AIG /var/www/html/crs/269 + +mv /var/www/swad/asg/DS/1/0/OAC /var/www/swad/crs/270 +mv /var/www/html/asg/DS/1/0/OAC /var/www/html/crs/270 + +mv /var/www/swad/asg/ECSP/3/0/PO /var/www/swad/crs/271 +mv /var/www/html/asg/ECSP/3/0/PO /var/www/html/crs/271 + +mv /var/www/swad/asg/EEA/1/0/M /var/www/swad/crs/272 +mv /var/www/html/asg/EEA/1/0/M /var/www/html/crs/272 + +mv /var/www/swad/asg/EGENL/1/0/ENLATS /var/www/swad/crs/273 +mv /var/www/html/asg/EGENL/1/0/ENLATS /var/www/html/crs/273 + +mv /var/www/swad/asg/EGENL/1/0/CFFF /var/www/swad/crs/274 +mv /var/www/html/asg/EGENL/1/0/CFFF /var/www/html/crs/274 + +mv /var/www/swad/asg/EGENL/1/0/GENL /var/www/swad/crs/275 +mv /var/www/html/asg/EGENL/1/0/GENL /var/www/html/crs/275 + +mv /var/www/swad/asg/EGENL/1/0/FPENL /var/www/swad/crs/276 +mv /var/www/html/asg/EGENL/1/0/FPENL /var/www/html/crs/276 + +mv /var/www/swad/asg/EGENL/1/0/ICENL /var/www/swad/crs/277 +mv /var/www/html/asg/EGENL/1/0/ICENL /var/www/html/crs/277 + +mv /var/www/swad/asg/EGENL/1/0/ODENL /var/www/swad/crs/278 +mv /var/www/html/asg/EGENL/1/0/ODENL /var/www/html/crs/278 + +mv /var/www/swad/asg/EUSA/1/0/EUSA /var/www/swad/crs/279 +mv /var/www/html/asg/EUSA/1/0/EUSA /var/www/html/crs/279 + +mv /var/www/swad/asg/EUSA/2/0/EUSA /var/www/swad/crs/280 +mv /var/www/html/asg/EUSA/2/0/EUSA /var/www/html/crs/280 + +mv /var/www/swad/asg/GMPDF/0/0/MPDF /var/www/swad/crs/281 +mv /var/www/html/asg/GMPDF/0/0/MPDF /var/www/html/crs/281 + +mv /var/www/swad/asg/GCIIA/0/0/IIBA /var/www/swad/crs/282 +mv /var/www/html/asg/GCIIA/0/0/IIBA /var/www/html/crs/282 + +mv /var/www/swad/asg/GCIIA/0/0/PI /var/www/swad/crs/283 +mv /var/www/html/asg/GCIIA/0/0/PI /var/www/html/crs/283 + +mv /var/www/swad/asg/ICCP/0/2/GAO /var/www/swad/crs/284 +mv /var/www/html/asg/ICCP/0/2/GAO /var/www/html/crs/284 + +mv /var/www/swad/asg/ICCP/0/2/IGMT /var/www/swad/crs/285 +mv /var/www/html/asg/ICCP/0/2/IGMT /var/www/html/crs/285 + +mv /var/www/swad/asg/ICCP/0/2/SHOT /var/www/swad/crs/286 +mv /var/www/html/asg/ICCP/0/2/SHOT /var/www/html/crs/286 + +mv /var/www/swad/asg/ICCP/0/1/TP /var/www/swad/crs/287 +mv /var/www/html/asg/ICCP/0/1/TP /var/www/html/crs/287 + +mv /var/www/swad/asg/ICCP/1/2/CTM /var/www/swad/crs/288 +mv /var/www/html/asg/ICCP/1/2/CTM /var/www/html/crs/288 + +mv /var/www/swad/asg/ICCP/1/2/EDO /var/www/swad/crs/289 +mv /var/www/html/asg/ICCP/1/2/EDO /var/www/html/crs/289 + +mv /var/www/swad/asg/ICCP/1/2/E /var/www/swad/crs/290 +mv /var/www/html/asg/ICCP/1/2/E /var/www/html/crs/290 + +mv /var/www/swad/asg/ICCP/1/2/EIC /var/www/swad/crs/291 +mv /var/www/html/asg/ICCP/1/2/EIC /var/www/html/crs/291 + +mv /var/www/swad/asg/ICCP/1/1/F /var/www/swad/crs/292 +mv /var/www/html/asg/ICCP/1/1/F /var/www/html/crs/292 + +mv /var/www/swad/asg/ICCP/1/1/FII /var/www/swad/crs/293 +mv /var/www/html/asg/ICCP/1/1/FII /var/www/html/crs/293 + +mv /var/www/swad/asg/ICCP/1/1/GG /var/www/swad/crs/294 +mv /var/www/html/asg/ICCP/1/1/GG /var/www/html/crs/294 + +mv /var/www/swad/asg/ICCP/1/2/GGAA /var/www/swad/crs/295 +mv /var/www/html/asg/ICCP/1/2/GGAA /var/www/html/crs/295 + +mv /var/www/swad/asg/ICCP/1/2/GGAB /var/www/swad/crs/296 +mv /var/www/html/asg/ICCP/1/2/GGAB /var/www/html/crs/296 + +mv /var/www/swad/asg/ICCP/1/2/GGAC /var/www/swad/crs/297 +mv /var/www/html/asg/ICCP/1/2/GGAC /var/www/html/crs/297 + +mv /var/www/swad/asg/ICCP/1/1/M1 /var/www/swad/crs/298 +mv /var/www/html/asg/ICCP/1/1/M1 /var/www/html/crs/298 + +mv /var/www/swad/asg/ICCP/1/1/M2 /var/www/swad/crs/299 +mv /var/www/html/asg/ICCP/1/1/M2 /var/www/html/crs/299 + +mv /var/www/swad/asg/ICCP/1/2/MA /var/www/swad/crs/300 +mv /var/www/html/asg/ICCP/1/2/MA /var/www/html/crs/300 + +mv /var/www/swad/asg/ICCP/1/1/TR /var/www/swad/crs/301 +mv /var/www/html/asg/ICCP/1/1/TR /var/www/html/crs/301 + +mv /var/www/swad/asg/ICCP/2/1/CA /var/www/swad/crs/302 +mv /var/www/html/asg/ICCP/2/1/CA /var/www/html/crs/302 + +mv /var/www/swad/asg/ICCP/2/1/E /var/www/swad/crs/303 +mv /var/www/html/asg/ICCP/2/1/E /var/www/html/crs/303 + +mv /var/www/swad/asg/ICCP/2/2/GA /var/www/swad/crs/304 +mv /var/www/html/asg/ICCP/2/2/GA /var/www/html/crs/304 + +mv /var/www/swad/asg/ICCP/2/2/IHH /var/www/swad/crs/305 +mv /var/www/html/asg/ICCP/2/2/IHH /var/www/html/crs/305 + +mv /var/www/swad/asg/ICCP/2/1/IT /var/www/swad/crs/306 +mv /var/www/html/asg/ICCP/2/1/IT /var/www/html/crs/306 + +mv /var/www/swad/asg/ICCP/2/2/LAPU /var/www/swad/crs/307 +mv /var/www/html/asg/ICCP/2/2/LAPU /var/www/html/crs/307 + +mv /var/www/swad/asg/ICCP/2/1/MSR /var/www/swad/crs/308 +mv /var/www/html/asg/ICCP/2/1/MSR /var/www/html/crs/308 + +mv /var/www/swad/asg/ICCP/2/2/MART /var/www/swad/crs/309 +mv /var/www/html/asg/ICCP/2/2/MART /var/www/html/crs/309 + +mv /var/www/swad/asg/ICCP/2/1/MMT /var/www/swad/crs/310 +mv /var/www/html/asg/ICCP/2/1/MMT /var/www/html/crs/310 + +mv /var/www/swad/asg/ICCP/2/1/TAEIC /var/www/swad/crs/311 +mv /var/www/html/asg/ICCP/2/1/TAEIC /var/www/html/crs/311 + +mv /var/www/swad/asg/ICCP/2/1/TIIC /var/www/swad/crs/312 +mv /var/www/html/asg/ICCP/2/1/TIIC /var/www/html/crs/312 + +mv /var/www/swad/asg/ICCP/2/0/TE /var/www/swad/crs/313 +mv /var/www/html/asg/ICCP/2/0/TE /var/www/html/crs/313 + +mv /var/www/swad/asg/ICCP/2/2/TF /var/www/swad/crs/314 +mv /var/www/html/asg/ICCP/2/2/TF /var/www/html/crs/314 + +mv /var/www/swad/asg/ICCP/2/1/T /var/www/swad/crs/315 +mv /var/www/html/asg/ICCP/2/1/T /var/www/html/crs/315 + +mv /var/www/swad/asg/ICCP/3/2/AE1 /var/www/swad/crs/316 +mv /var/www/html/asg/ICCP/3/2/AE1 /var/www/html/crs/316 + +mv /var/www/swad/asg/ICCP/3/2/ANA /var/www/swad/crs/317 +mv /var/www/html/asg/ICCP/3/2/ANA /var/www/html/crs/317 + +mv /var/www/swad/asg/ICCP/3/2/ANB /var/www/swad/crs/318 +mv /var/www/html/asg/ICCP/3/2/ANB /var/www/html/crs/318 + +mv /var/www/swad/asg/ICCP/3/1/CA /var/www/swad/crs/319 +mv /var/www/html/asg/ICCP/3/1/CA /var/www/html/crs/319 + +mv /var/www/swad/asg/ICCP/3/1/EDP /var/www/swad/crs/320 +mv /var/www/html/asg/ICCP/3/1/EDP /var/www/html/crs/320 + +mv /var/www/swad/asg/ICCP/3/1/E /var/www/swad/crs/321 +mv /var/www/html/asg/ICCP/3/1/E /var/www/html/crs/321 + +mv /var/www/swad/asg/ICCP/3/2/GC /var/www/swad/crs/322 +mv /var/www/html/asg/ICCP/3/2/GC /var/www/html/crs/322 + +mv /var/www/swad/asg/ICCP/3/2/HSS /var/www/swad/crs/323 +mv /var/www/html/asg/ICCP/3/2/HSS /var/www/html/crs/323 + +mv /var/www/swad/asg/ICCP/3/1/MMC /var/www/swad/crs/324 +mv /var/www/html/asg/ICCP/3/1/MMC /var/www/html/crs/324 + +mv /var/www/swad/asg/ICCP/3/2/OAHE /var/www/swad/crs/325 +mv /var/www/html/asg/ICCP/3/2/OAHE /var/www/html/crs/325 + +mv /var/www/swad/asg/ICCP/3/1/SC /var/www/swad/crs/326 +mv /var/www/html/asg/ICCP/3/1/SC /var/www/html/crs/326 + +mv /var/www/swad/asg/ICCP/3/2/U /var/www/swad/crs/327 +mv /var/www/html/asg/ICCP/3/2/U /var/www/html/crs/327 + +mv /var/www/swad/asg/ICCP/3/1/UOT /var/www/swad/crs/328 +mv /var/www/html/asg/ICCP/3/1/UOT /var/www/html/crs/328 + +mv /var/www/swad/asg/ICCP/4/1/AE2 /var/www/swad/crs/329 +mv /var/www/html/asg/ICCP/4/1/AE2 /var/www/html/crs/329 + +mv /var/www/swad/asg/ICCP/4/1/DGOLIC /var/www/swad/crs/330 +mv /var/www/html/asg/ICCP/4/1/DGOLIC /var/www/html/crs/330 + +mv /var/www/swad/asg/ICCP/4/1/F /var/www/swad/crs/331 +mv /var/www/html/asg/ICCP/4/1/F /var/www/html/crs/331 + +mv /var/www/swad/asg/ICCP/4/1/HF /var/www/swad/crs/332 +mv /var/www/html/asg/ICCP/4/1/HF /var/www/html/crs/332 + +mv /var/www/swad/asg/ICCP/4/2/HAPB /var/www/swad/crs/333 +mv /var/www/html/asg/ICCP/4/2/HAPB /var/www/html/crs/333 + +mv /var/www/swad/asg/ICCP/4/2/IAOP /var/www/swad/crs/334 +mv /var/www/html/asg/ICCP/4/2/IAOP /var/www/html/crs/334 + +mv /var/www/swad/asg/ICCP/4/1/IMC /var/www/swad/crs/335 +mv /var/www/html/asg/ICCP/4/1/IMC /var/www/html/crs/335 + +mv /var/www/swad/asg/ICCP/4/1/ISMA /var/www/swad/crs/336 +mv /var/www/html/asg/ICCP/4/1/ISMA /var/www/html/crs/336 + +mv /var/www/swad/asg/ICCP/4/2/ISE /var/www/swad/crs/337 +mv /var/www/html/asg/ICCP/4/2/ISE /var/www/html/crs/337 + +mv /var/www/swad/asg/ICCP/4/2/MF /var/www/swad/crs/338 +mv /var/www/html/asg/ICCP/4/2/MF /var/www/html/crs/338 + +mv /var/www/swad/asg/ICCP/4/2/PETT /var/www/swad/crs/339 +mv /var/www/html/asg/ICCP/4/2/PETT /var/www/html/crs/339 + +mv /var/www/swad/asg/ICCP/4/1/PC1 /var/www/swad/crs/340 +mv /var/www/html/asg/ICCP/4/1/PC1 /var/www/html/crs/340 + +mv /var/www/swad/asg/ICCP/4/2/PC2 /var/www/swad/crs/341 +mv /var/www/html/asg/ICCP/4/2/PC2 /var/www/html/crs/341 + +mv /var/www/swad/asg/ICCP/5/0/AC /var/www/swad/crs/342 +mv /var/www/html/asg/ICCP/5/0/AC /var/www/html/crs/342 + +mv /var/www/swad/asg/ICCP/5/1/AH /var/www/swad/crs/343 +mv /var/www/html/asg/ICCP/5/1/AH /var/www/html/crs/343 + +mv /var/www/swad/asg/ICCP/5/1/AAE /var/www/swad/crs/344 +mv /var/www/html/asg/ICCP/5/1/AAE /var/www/html/crs/344 + +mv /var/www/swad/asg/ICCP/5/1/ANEE /var/www/swad/crs/345 +mv /var/www/html/asg/ICCP/5/1/ANEE /var/www/html/crs/345 + +mv /var/www/swad/asg/ICCP/5/1/DSR /var/www/swad/crs/346 +mv /var/www/html/asg/ICCP/5/1/DSR /var/www/html/crs/346 + +mv /var/www/swad/asg/ICCP/5/2/DEPE /var/www/swad/crs/347 +mv /var/www/html/asg/ICCP/5/2/DEPE /var/www/html/crs/347 + +mv /var/www/swad/asg/ICCP/5/1/EP /var/www/swad/crs/348 +mv /var/www/html/asg/ICCP/5/1/EP /var/www/html/crs/348 + +mv /var/www/swad/asg/ICCP/5/2/ECC /var/www/swad/crs/349 +mv /var/www/html/asg/ICCP/5/2/ECC /var/www/html/crs/349 + +mv /var/www/swad/asg/ICCP/5/1/EMM /var/www/swad/crs/350 +mv /var/www/html/asg/ICCP/5/1/EMM /var/www/html/crs/350 + +mv /var/www/swad/asg/ICCP/5/2/EP /var/www/swad/crs/351 +mv /var/www/html/asg/ICCP/5/2/EP /var/www/html/crs/351 + +mv /var/www/swad/asg/ICCP/5/2/HSAS /var/www/swad/crs/352 +mv /var/www/html/asg/ICCP/5/2/HSAS /var/www/html/crs/352 + +mv /var/www/swad/asg/ICCP/5/1/IA /var/www/swad/crs/353 +mv /var/www/html/asg/ICCP/5/1/IA /var/www/html/crs/353 + +mv /var/www/swad/asg/ICCP/5/2/IT /var/www/swad/crs/354 +mv /var/www/html/asg/ICCP/5/2/IT /var/www/html/crs/354 + +mv /var/www/swad/asg/ICCP/5/2/IO /var/www/swad/crs/355 +mv /var/www/html/asg/ICCP/5/2/IO /var/www/html/crs/355 + +mv /var/www/swad/asg/ICCP/5/1/IS /var/www/swad/crs/356 +mv /var/www/html/asg/ICCP/5/1/IS /var/www/html/crs/356 + +mv /var/www/swad/asg/ICCP/5/2/L /var/www/swad/crs/357 +mv /var/www/html/asg/ICCP/5/2/L /var/www/html/crs/357 + +mv /var/www/swad/asg/ICCP/5/2/MR /var/www/swad/crs/358 +mv /var/www/html/asg/ICCP/5/2/MR /var/www/html/crs/358 + +mv /var/www/swad/asg/ICCP/5/2/IMM /var/www/swad/crs/359 +mv /var/www/html/asg/ICCP/5/2/IMM /var/www/html/crs/359 + +mv /var/www/swad/asg/ICCP/5/2/OST /var/www/swad/crs/360 +mv /var/www/html/asg/ICCP/5/2/OST /var/www/html/crs/360 + +mv /var/www/swad/asg/ICCP/5/2/OGE /var/www/swad/crs/361 +mv /var/www/html/asg/ICCP/5/2/OGE /var/www/html/crs/361 + +mv /var/www/swad/asg/ICCP/5/1/OGPO /var/www/swad/crs/362 +mv /var/www/html/asg/ICCP/5/1/OGPO /var/www/html/crs/362 + +mv /var/www/swad/asg/ICCP/5/1/PAH /var/www/swad/crs/363 +mv /var/www/html/asg/ICCP/5/1/PAH /var/www/html/crs/363 + +mv /var/www/swad/asg/ICCP/5/1/PET /var/www/swad/crs/364 +mv /var/www/html/asg/ICCP/5/1/PET /var/www/html/crs/364 + +mv /var/www/swad/asg/ICCP/5/1/PFC /var/www/swad/crs/365 +mv /var/www/html/asg/ICCP/5/1/PFC /var/www/html/crs/365 + +mv /var/www/swad/asg/ICCP/5/2/PFC /var/www/swad/crs/366 +mv /var/www/html/asg/ICCP/5/2/PFC /var/www/html/crs/366 + +mv /var/www/swad/asg/ICCP/5/0/P /var/www/swad/crs/367 +mv /var/www/html/asg/ICCP/5/0/P /var/www/html/crs/367 + +mv /var/www/swad/asg/ICCP/5/1/P /var/www/swad/crs/368 +mv /var/www/html/asg/ICCP/5/1/P /var/www/html/crs/368 + +mv /var/www/swad/asg/ICCP/5/0/SE /var/www/swad/crs/369 +mv /var/www/html/asg/ICCP/5/0/SE /var/www/html/crs/369 + +mv /var/www/swad/asg/ICCP/5/1/TA /var/www/swad/crs/370 +mv /var/www/html/asg/ICCP/5/1/TA /var/www/html/crs/370 + +mv /var/www/swad/asg/ICCP/5/1/TC /var/www/swad/crs/371 +mv /var/www/html/asg/ICCP/5/1/TC /var/www/html/crs/371 + +mv /var/www/swad/asg/ICCP/5/1/TT /var/www/swad/crs/372 +mv /var/www/html/asg/ICCP/5/1/TT /var/www/html/crs/372 + +mv /var/www/swad/asg/ICCP/5/0/TSU /var/www/swad/crs/373 +mv /var/www/html/asg/ICCP/5/0/TSU /var/www/html/crs/373 + +mv /var/www/swad/asg/ICCP/5/0/U /var/www/swad/crs/374 +mv /var/www/html/asg/ICCP/5/0/U /var/www/html/crs/374 + +mv /var/www/swad/asg/IE/1/2/C /var/www/swad/crs/375 +mv /var/www/html/asg/IE/1/2/C /var/www/html/crs/375 + +mv /var/www/swad/asg/IE/1/1/DCSE /var/www/swad/crs/376 +mv /var/www/html/asg/IE/1/1/DCSE /var/www/html/crs/376 + +mv /var/www/swad/asg/IE/1/2/DEF /var/www/swad/crs/377 +mv /var/www/html/asg/IE/1/2/DEF /var/www/html/crs/377 + +mv /var/www/swad/asg/IE/1/1/EC /var/www/swad/crs/378 +mv /var/www/html/asg/IE/1/1/EC /var/www/html/crs/378 + +mv /var/www/swad/asg/IE/1/1/PI /var/www/swad/crs/379 +mv /var/www/html/asg/IE/1/1/PI /var/www/html/crs/379 + +mv /var/www/swad/asg/IE/1/0/SAI /var/www/swad/crs/380 +mv /var/www/html/asg/IE/1/0/SAI /var/www/html/crs/380 + +mv /var/www/swad/asg/IE/1/2/SM /var/www/swad/crs/381 +mv /var/www/html/asg/IE/1/2/SM /var/www/html/crs/381 + +mv /var/www/swad/asg/IE/1/2/TD /var/www/swad/crs/382 +mv /var/www/html/asg/IE/1/2/TD /var/www/html/crs/382 + +mv /var/www/swad/asg/IE/1/0/TTS /var/www/swad/crs/383 +mv /var/www/html/asg/IE/1/0/TTS /var/www/html/crs/383 + +mv /var/www/swad/asg/IE/2/2/CE /var/www/swad/crs/384 +mv /var/www/html/asg/IE/2/2/CE /var/www/html/crs/384 + +mv /var/www/swad/asg/IE/2/1/CL /var/www/swad/crs/385 +mv /var/www/html/asg/IE/2/1/CL /var/www/html/crs/385 + +mv /var/www/swad/asg/IE/2/1/DCI /var/www/swad/crs/386 +mv /var/www/html/asg/IE/2/1/DCI /var/www/html/crs/386 + +mv /var/www/swad/asg/IE/2/2/DSE /var/www/swad/crs/387 +mv /var/www/html/asg/IE/2/2/DSE /var/www/html/crs/387 + +mv /var/www/swad/asg/IE/2/2/DCIM /var/www/swad/crs/388 +mv /var/www/html/asg/IE/2/2/DCIM /var/www/html/crs/388 + +mv /var/www/swad/asg/IE/2/1/EA /var/www/swad/crs/389 +mv /var/www/html/asg/IE/2/1/EA /var/www/html/crs/389 + +mv /var/www/swad/asg/IE/2/1/EETS /var/www/swad/crs/390 +mv /var/www/html/asg/IE/2/1/EETS /var/www/html/crs/390 + +mv /var/www/swad/asg/IE/2/1/FOEOI /var/www/swad/crs/391 +mv /var/www/html/asg/IE/2/1/FOEOI /var/www/html/crs/391 + +mv /var/www/swad/asg/IE/2/1/IACA /var/www/swad/crs/392 +mv /var/www/html/asg/IE/2/1/IACA /var/www/html/crs/392 + +mv /var/www/swad/asg/IE/2/2/LPSC /var/www/swad/crs/393 +mv /var/www/html/asg/IE/2/2/LPSC /var/www/html/crs/393 + +mv /var/www/swad/asg/IE/2/1/P /var/www/swad/crs/394 +mv /var/www/html/asg/IE/2/1/P /var/www/html/crs/394 + +mv /var/www/swad/asg/IE/2/2/SACC /var/www/swad/crs/395 +mv /var/www/html/asg/IE/2/2/SACC /var/www/html/crs/395 + +mv /var/www/swad/asg/IE/2/0/ST /var/www/swad/crs/396 +mv /var/www/html/asg/IE/2/0/ST /var/www/html/crs/396 + +mv /var/www/swad/asg/IE/2/2/TEEM /var/www/swad/crs/397 +mv /var/www/html/asg/IE/2/2/TEEM /var/www/html/crs/397 + +mv /var/www/swad/asg/IE/2/2/TEPDS /var/www/swad/crs/398 +mv /var/www/html/asg/IE/2/2/TEPDS /var/www/html/crs/398 + +mv /var/www/swad/asg/IE/2/2/TMSE /var/www/swad/crs/399 +mv /var/www/html/asg/IE/2/2/TMSE /var/www/html/crs/399 + +mv /var/www/swad/asg/IE/2/0/TFC /var/www/swad/crs/400 +mv /var/www/html/asg/IE/2/0/TFC /var/www/html/crs/400 + +mv /var/www/swad/asg/II/0/2/IFE2 /var/www/swad/crs/401 +mv /var/www/html/asg/II/0/2/IFE2 /var/www/html/crs/401 + +mv /var/www/swad/asg/II/1/1/AEF /var/www/swad/crs/402 +mv /var/www/html/asg/II/1/1/AEF /var/www/html/crs/402 + +mv /var/www/swad/asg/II/1/1/AM /var/www/swad/crs/403 +mv /var/www/html/asg/II/1/1/AM /var/www/html/crs/403 + +mv /var/www/swad/asg/II/1/2/EA /var/www/swad/crs/404 +mv /var/www/html/asg/II/1/2/EA /var/www/html/crs/404 + +mv /var/www/swad/asg/II/1/2/EB /var/www/swad/crs/405 +mv /var/www/html/asg/II/1/2/EB /var/www/html/crs/405 + +mv /var/www/swad/asg/II/1/2/ED /var/www/swad/crs/406 +mv /var/www/html/asg/II/1/2/ED /var/www/html/crs/406 + +mv /var/www/swad/asg/II/1/2/FLPA /var/www/swad/crs/407 +mv /var/www/html/asg/II/1/2/FLPA /var/www/html/crs/407 + +mv /var/www/swad/asg/II/1/2/FLPB /var/www/swad/crs/408 +mv /var/www/html/asg/II/1/2/FLPB /var/www/html/crs/408 + +mv /var/www/swad/asg/II/1/1/FFC /var/www/swad/crs/409 +mv /var/www/html/asg/II/1/1/FFC /var/www/html/crs/409 + +mv /var/www/swad/asg/II/1/2/FTC /var/www/swad/crs/410 +mv /var/www/html/asg/II/1/2/FTC /var/www/html/crs/410 + +mv /var/www/swad/asg/II/1/1/ICA /var/www/swad/crs/411 +mv /var/www/html/asg/II/1/1/ICA /var/www/html/crs/411 + +mv /var/www/swad/asg/II/1/1/IC /var/www/swad/crs/412 +mv /var/www/html/asg/II/1/1/IC /var/www/html/crs/412 + +mv /var/www/swad/asg/II/1/1/MD /var/www/swad/crs/413 +mv /var/www/html/asg/II/1/1/MD /var/www/html/crs/413 + +mv /var/www/swad/asg/II/1/1/MP1 /var/www/swad/crs/414 +mv /var/www/html/asg/II/1/1/MP1 /var/www/html/crs/414 + +mv /var/www/swad/asg/II/1/2/MP2 /var/www/swad/crs/415 +mv /var/www/html/asg/II/1/2/MP2 /var/www/html/crs/415 + +mv /var/www/swad/asg/II/1/2/TC1A /var/www/swad/crs/416 +mv /var/www/html/asg/II/1/2/TC1A /var/www/html/crs/416 + +mv /var/www/swad/asg/II/1/2/TC1B /var/www/swad/crs/417 +mv /var/www/html/asg/II/1/2/TC1B /var/www/html/crs/417 + +mv /var/www/swad/asg/II/2/1/BD1 /var/www/swad/crs/418 +mv /var/www/html/asg/II/2/1/BD1 /var/www/html/crs/418 + +mv /var/www/swad/asg/II/2/2/BD2 /var/www/swad/crs/419 +mv /var/www/html/asg/II/2/2/BD2 /var/www/html/crs/419 + +mv /var/www/swad/asg/II/2/2/CN /var/www/swad/crs/420 +mv /var/www/html/asg/II/2/2/CN /var/www/html/crs/420 + +mv /var/www/swad/asg/II/2/1/EC1 /var/www/swad/crs/421 +mv /var/www/html/asg/II/2/1/EC1 /var/www/html/crs/421 + +mv /var/www/swad/asg/II/2/2/EC2 /var/www/swad/crs/422 +mv /var/www/html/asg/II/2/2/EC2 /var/www/html/crs/422 + +mv /var/www/swad/asg/II/2/1/MC1 /var/www/swad/crs/423 +mv /var/www/html/asg/II/2/1/MC1 /var/www/html/crs/423 + +mv /var/www/swad/asg/II/2/2/MC2 /var/www/swad/crs/424 +mv /var/www/html/asg/II/2/2/MC2 /var/www/html/crs/424 + +mv /var/www/swad/asg/II/2/1/SO1 /var/www/swad/crs/425 +mv /var/www/html/asg/II/2/1/SO1 /var/www/html/crs/425 + +mv /var/www/swad/asg/II/2/2/SO2 /var/www/swad/crs/426 +mv /var/www/html/asg/II/2/2/SO2 /var/www/html/crs/426 + +mv /var/www/swad/asg/II/2/1/TC2A /var/www/swad/crs/427 +mv /var/www/html/asg/II/2/1/TC2A /var/www/html/crs/427 + +mv /var/www/swad/asg/II/2/1/TC2B /var/www/swad/crs/428 +mv /var/www/html/asg/II/2/1/TC2B /var/www/html/crs/428 + +mv /var/www/swad/asg/II/2/1/TA /var/www/swad/crs/429 +mv /var/www/html/asg/II/2/1/TA /var/www/html/crs/429 + +mv /var/www/swad/asg/II/3/2/AN /var/www/swad/crs/430 +mv /var/www/html/asg/II/3/2/AN /var/www/html/crs/430 + +mv /var/www/swad/asg/II/3/1/CA /var/www/swad/crs/431 +mv /var/www/html/asg/II/3/1/CA /var/www/html/crs/431 + +mv /var/www/swad/asg/II/3/1/DLP /var/www/swad/crs/432 +mv /var/www/html/asg/II/3/1/DLP /var/www/html/crs/432 + +mv /var/www/swad/asg/II/3/2/DCM /var/www/swad/crs/433 +mv /var/www/html/asg/II/3/2/DCM /var/www/html/crs/433 + +mv /var/www/swad/asg/II/3/1/DCM /var/www/swad/crs/434 +mv /var/www/html/asg/II/3/1/DCM /var/www/html/crs/434 + +mv /var/www/swad/asg/II/3/2/GBD /var/www/swad/crs/435 +mv /var/www/html/asg/II/3/2/GBD /var/www/html/crs/435 + +mv /var/www/swad/asg/II/3/2/FATC /var/www/swad/crs/436 +mv /var/www/html/asg/II/3/2/FATC /var/www/html/crs/436 + +mv /var/www/swad/asg/II/3/1/IHA /var/www/swad/crs/437 +mv /var/www/html/asg/II/3/1/IHA /var/www/html/crs/437 + +mv /var/www/swad/asg/II/3/2/IG /var/www/swad/crs/438 +mv /var/www/html/asg/II/3/2/IG /var/www/html/crs/438 + +mv /var/www/swad/asg/II/3/2/IC /var/www/swad/crs/439 +mv /var/www/html/asg/II/3/2/IC /var/www/html/crs/439 + +mv /var/www/swad/asg/II/3/1/IS1 /var/www/swad/crs/440 +mv /var/www/html/asg/II/3/1/IS1 /var/www/html/crs/440 + +mv /var/www/swad/asg/II/3/1/LI /var/www/swad/crs/441 +mv /var/www/html/asg/II/3/1/LI /var/www/html/crs/441 + +mv /var/www/swad/asg/II/3/2/MIT /var/www/swad/crs/442 +mv /var/www/html/asg/II/3/2/MIT /var/www/html/crs/442 + +mv /var/www/swad/asg/II/3/2/PC /var/www/swad/crs/443 +mv /var/www/html/asg/II/3/2/PC /var/www/html/crs/443 + +mv /var/www/swad/asg/II/3/1/PD /var/www/swad/crs/444 +mv /var/www/html/asg/II/3/1/PD /var/www/html/crs/444 + +mv /var/www/swad/asg/II/3/1/PDO /var/www/swad/crs/445 +mv /var/www/html/asg/II/3/1/PDO /var/www/html/crs/445 + +mv /var/www/swad/asg/II/3/2/TIC /var/www/swad/crs/446 +mv /var/www/html/asg/II/3/2/TIC /var/www/html/crs/446 + +mv /var/www/swad/asg/II/4/1/A /var/www/swad/crs/447 +mv /var/www/html/asg/II/4/1/A /var/www/html/crs/447 + +mv /var/www/swad/asg/II/4/1/CLP /var/www/swad/crs/448 +mv /var/www/html/asg/II/4/1/CLP /var/www/html/crs/448 + +mv /var/www/swad/asg/II/4/2/C /var/www/swad/crs/449 +mv /var/www/html/asg/II/4/2/C /var/www/html/crs/449 + +mv /var/www/swad/asg/II/4/1/DAC /var/www/swad/crs/450 +mv /var/www/html/asg/II/4/1/DAC /var/www/html/crs/450 + +mv /var/www/swad/asg/II/4/1/IS2 /var/www/swad/crs/451 +mv /var/www/html/asg/II/4/1/IS2 /var/www/html/crs/451 + +mv /var/www/swad/asg/II/4/2/IS3 /var/www/swad/crs/452 +mv /var/www/html/asg/II/4/2/IS3 /var/www/html/crs/452 + +mv /var/www/swad/asg/II/4/1/IAIC /var/www/swad/crs/453 +mv /var/www/html/asg/II/4/1/IAIC /var/www/html/crs/453 + +mv /var/www/swad/asg/II/4/2/MABD /var/www/swad/crs/454 +mv /var/www/html/asg/II/4/2/MABD /var/www/html/crs/454 + +mv /var/www/swad/asg/II/4/2/PL /var/www/swad/crs/455 +mv /var/www/html/asg/II/4/2/PL /var/www/html/crs/455 + +mv /var/www/swad/asg/II/4/1/PDP /var/www/swad/crs/456 +mv /var/www/html/asg/II/4/1/PDP /var/www/html/crs/456 + +mv /var/www/swad/asg/II/4/2/RI /var/www/swad/crs/457 +mv /var/www/html/asg/II/4/2/RI /var/www/html/crs/457 + +mv /var/www/swad/asg/II/4/1/SCD /var/www/swad/crs/458 +mv /var/www/html/asg/II/4/1/SCD /var/www/html/crs/458 + +mv /var/www/swad/asg/II/4/2/SAAV /var/www/swad/crs/459 +mv /var/www/html/asg/II/4/2/SAAV /var/www/html/crs/459 + +mv /var/www/swad/asg/II/4/1/TDRC1 /var/www/swad/crs/460 +mv /var/www/html/asg/II/4/1/TDRC1 /var/www/html/crs/460 + +mv /var/www/swad/asg/II/4/2/TDRC2 /var/www/swad/crs/461 +mv /var/www/html/asg/II/4/2/TDRC2 /var/www/html/crs/461 + +mv /var/www/swad/asg/II/4/1/VA /var/www/swad/crs/462 +mv /var/www/html/asg/II/4/1/VA /var/www/html/crs/462 + +mv /var/www/swad/asg/II/4/2/VR /var/www/swad/crs/463 +mv /var/www/html/asg/II/4/2/VR /var/www/html/crs/463 + +mv /var/www/swad/asg/II/5/1/AC1 /var/www/swad/crs/464 +mv /var/www/html/asg/II/5/1/AC1 /var/www/html/crs/464 + +mv /var/www/swad/asg/II/5/2/AC2 /var/www/swad/crs/465 +mv /var/www/html/asg/II/5/2/AC2 /var/www/html/crs/465 + +mv /var/www/swad/asg/II/5/2/AE /var/www/swad/crs/466 +mv /var/www/html/asg/II/5/2/AE /var/www/html/crs/466 + +mv /var/www/swad/asg/II/5/2/B /var/www/swad/crs/467 +mv /var/www/html/asg/II/5/2/B /var/www/html/crs/467 + +mv /var/www/swad/asg/II/5/1/CS /var/www/swad/crs/468 +mv /var/www/html/asg/II/5/1/CS /var/www/html/crs/468 + +mv /var/www/swad/asg/II/5/2/DI /var/www/swad/crs/469 +mv /var/www/html/asg/II/5/2/DI /var/www/html/crs/469 + +mv /var/www/swad/asg/II/5/1/DASD /var/www/swad/crs/470 +mv /var/www/html/asg/II/5/1/DASD /var/www/html/crs/470 + +mv /var/www/swad/asg/II/5/2/DS0 /var/www/swad/crs/471 +mv /var/www/html/asg/II/5/2/DS0 /var/www/html/crs/471 + +mv /var/www/swad/asg/II/5/1/ICA /var/www/swad/crs/472 +mv /var/www/html/asg/II/5/1/ICA /var/www/html/crs/472 + +mv /var/www/swad/asg/II/5/2/ISLN /var/www/swad/crs/473 +mv /var/www/html/asg/II/5/2/ISLN /var/www/html/crs/473 + +mv /var/www/swad/asg/II/5/1/MIA /var/www/swad/crs/474 +mv /var/www/html/asg/II/5/1/MIA /var/www/html/crs/474 + +mv /var/www/swad/asg/II/5/2/N /var/www/swad/crs/475 +mv /var/www/html/asg/II/5/2/N /var/www/html/crs/475 + +mv /var/www/swad/asg/II/5/2/PV /var/www/swad/crs/476 +mv /var/www/html/asg/II/5/2/PV /var/www/html/crs/476 + +mv /var/www/swad/asg/II/5/1/PI1 /var/www/swad/crs/477 +mv /var/www/html/asg/II/5/1/PI1 /var/www/html/crs/477 + +mv /var/www/swad/asg/II/5/2/PI2 /var/www/swad/crs/478 +mv /var/www/html/asg/II/5/2/PI2 /var/www/html/crs/478 + +mv /var/www/swad/asg/II/5/1/RF /var/www/swad/crs/479 +mv /var/www/html/asg/II/5/1/RF /var/www/html/crs/479 + +mv /var/www/swad/asg/II/5/1/SLP /var/www/swad/crs/480 +mv /var/www/html/asg/II/5/1/SLP /var/www/html/crs/480 + +mv /var/www/swad/asg/II/5/1/SI /var/www/swad/crs/481 +mv /var/www/html/asg/II/5/1/SI /var/www/html/crs/481 + +mv /var/www/swad/asg/II/5/1/TSC /var/www/swad/crs/482 +mv /var/www/html/asg/II/5/1/TSC /var/www/html/crs/482 + +mv /var/www/swad/asg/IQ/1/1/FIQ /var/www/swad/crs/483 +mv /var/www/html/asg/IQ/1/1/FIQ /var/www/html/crs/483 + +mv /var/www/swad/asg/IQ/1/0/FFI /var/www/swad/crs/484 +mv /var/www/html/asg/IQ/1/0/FFI /var/www/html/crs/484 + +mv /var/www/swad/asg/IQ/1/2/OBFFA /var/www/swad/crs/485 +mv /var/www/html/asg/IQ/1/2/OBFFA /var/www/html/crs/485 + +mv /var/www/swad/asg/IQ/1/0/QAA /var/www/swad/crs/486 +mv /var/www/html/asg/IQ/1/0/QAA /var/www/html/crs/486 + +mv /var/www/swad/asg/IQ/1/0/QAB /var/www/swad/crs/487 +mv /var/www/html/asg/IQ/1/0/QAB /var/www/html/crs/487 + +mv /var/www/swad/asg/IQ/2/1/M2 /var/www/swad/crs/488 +mv /var/www/html/asg/IQ/2/1/M2 /var/www/html/crs/488 + +mv /var/www/swad/asg/IQ/2/1/QF /var/www/swad/crs/489 +mv /var/www/html/asg/IQ/2/1/QF /var/www/html/crs/489 + +mv /var/www/swad/asg/IQ/2/2/TSAC /var/www/swad/crs/490 +mv /var/www/html/asg/IQ/2/2/TSAC /var/www/html/crs/490 + +mv /var/www/swad/asg/IQ/2/2/TQA /var/www/swad/crs/491 +mv /var/www/html/asg/IQ/2/2/TQA /var/www/html/crs/491 + +mv /var/www/swad/asg/IQ/3/1/CQA /var/www/swad/crs/492 +mv /var/www/html/asg/IQ/3/1/CQA /var/www/html/crs/492 + +mv /var/www/swad/asg/IQ/3/2/MEAI /var/www/swad/crs/493 +mv /var/www/html/asg/IQ/3/2/MEAI /var/www/html/crs/493 + +mv /var/www/swad/asg/IQ/3/2/TEA /var/www/swad/crs/494 +mv /var/www/html/asg/IQ/3/2/TEA /var/www/html/crs/494 + +mv /var/www/swad/asg/IQ/4/2/RQ /var/www/swad/crs/495 +mv /var/www/html/asg/IQ/4/2/RQ /var/www/html/crs/495 + +mv /var/www/swad/asg/IQ/4/2/TMA /var/www/swad/crs/496 +mv /var/www/html/asg/IQ/4/2/TMA /var/www/html/crs/496 + +mv /var/www/swad/asg/IQ/4/1/T /var/www/swad/crs/497 +mv /var/www/html/asg/IQ/4/1/T /var/www/html/crs/497 + +mv /var/www/swad/asg/IQ/5/1/B /var/www/swad/crs/498 +mv /var/www/html/asg/IQ/5/1/B /var/www/html/crs/498 + +mv /var/www/swad/asg/IQ/5/1/CIPQ /var/www/swad/crs/499 +mv /var/www/html/asg/IQ/5/1/CIPQ /var/www/html/crs/499 + +mv /var/www/swad/asg/IQ/5/2/DEG /var/www/swad/crs/500 +mv /var/www/html/asg/IQ/5/2/DEG /var/www/html/crs/500 + +mv /var/www/swad/asg/IQ/5/1/EIQ3 /var/www/swad/crs/501 +mv /var/www/html/asg/IQ/5/1/EIQ3 /var/www/html/crs/501 + +mv /var/www/swad/asg/IQ/5/2/OBIA /var/www/swad/crs/502 +mv /var/www/html/asg/IQ/5/2/OBIA /var/www/html/crs/502 + +mv /var/www/swad/asg/IT/1/1/AL /var/www/swad/crs/503 +mv /var/www/html/asg/IT/1/1/AL /var/www/html/crs/503 + +mv /var/www/swad/asg/IT/1/1/ACA /var/www/swad/crs/504 +mv /var/www/html/asg/IT/1/1/ACA /var/www/html/crs/504 + +mv /var/www/swad/asg/IT/1/0/C /var/www/swad/crs/505 +mv /var/www/html/asg/IT/1/0/C /var/www/html/crs/505 + +mv /var/www/swad/asg/IT/1/2/DE1 /var/www/swad/crs/506 +mv /var/www/html/asg/IT/1/2/DE1 /var/www/html/crs/506 + +mv /var/www/swad/asg/IT/1/2/ED /var/www/swad/crs/507 +mv /var/www/html/asg/IT/1/2/ED /var/www/html/crs/507 + +mv /var/www/swad/asg/IT/1/0/FP /var/www/swad/crs/508 +mv /var/www/html/asg/IT/1/0/FP /var/www/html/crs/508 + +mv /var/www/swad/asg/IT/1/0/FFI /var/www/swad/crs/509 +mv /var/www/html/asg/IT/1/0/FFI /var/www/html/crs/509 + +mv /var/www/swad/asg/IT/2/0/CE /var/www/swad/crs/510 +mv /var/www/html/asg/IT/2/0/CE /var/www/html/crs/510 + +mv /var/www/swad/asg/IT/2/1/DE2 /var/www/swad/crs/511 +mv /var/www/html/asg/IT/2/1/DE2 /var/www/html/crs/511 + +mv /var/www/swad/asg/IT/2/0/EA /var/www/swad/crs/512 +mv /var/www/html/asg/IT/2/0/EA /var/www/html/crs/512 + +mv /var/www/swad/asg/IT/2/2/FC /var/www/swad/crs/513 +mv /var/www/html/asg/IT/2/2/FC /var/www/html/crs/513 + +mv /var/www/swad/asg/IT/2/1/FM1 /var/www/swad/crs/514 +mv /var/www/html/asg/IT/2/1/FM1 /var/www/html/crs/514 + +mv /var/www/swad/asg/IT/2/2/FM2 /var/www/swad/crs/515 +mv /var/www/html/asg/IT/2/2/FM2 /var/www/html/crs/515 + +mv /var/www/swad/asg/IT/2/2/SA /var/www/swad/crs/516 +mv /var/www/html/asg/IT/2/2/SA /var/www/html/crs/516 + +mv /var/www/swad/asg/IT/2/1/SA /var/www/swad/crs/517 +mv /var/www/html/asg/IT/2/1/SA /var/www/html/crs/517 + +mv /var/www/swad/asg/IT/2/2/SD /var/www/swad/crs/518 +mv /var/www/html/asg/IT/2/2/SD /var/www/html/crs/518 + +mv /var/www/swad/asg/IT/3/1/CD /var/www/swad/crs/519 +mv /var/www/html/asg/IT/3/1/CD /var/www/html/crs/519 + +mv /var/www/swad/asg/IT/3/1/DAI /var/www/swad/crs/520 +mv /var/www/html/asg/IT/3/1/DAI /var/www/html/crs/520 + +mv /var/www/swad/asg/IT/3/2/IA /var/www/swad/crs/521 +mv /var/www/html/asg/IT/3/2/IA /var/www/html/crs/521 + +mv /var/www/swad/asg/IT/3/1/SS /var/www/swad/crs/522 +mv /var/www/html/asg/IT/3/1/SS /var/www/html/crs/522 + +mv /var/www/swad/asg/IT/3/0/SED /var/www/swad/crs/523 +mv /var/www/html/asg/IT/3/0/SED /var/www/html/crs/523 + +mv /var/www/swad/asg/IT/4/1/AC /var/www/swad/crs/524 +mv /var/www/html/asg/IT/4/1/AC /var/www/html/crs/524 + +mv /var/www/swad/asg/IT/4/1/TH /var/www/swad/crs/525 +mv /var/www/html/asg/IT/4/1/TH /var/www/html/crs/525 + +mv /var/www/swad/asg/IT/4/1/TDSA /var/www/swad/crs/526 +mv /var/www/html/asg/IT/4/1/TDSA /var/www/html/crs/526 + +mv /var/www/swad/asg/IT/4/1/TDSB /var/www/swad/crs/527 +mv /var/www/html/asg/IT/4/1/TDSB /var/www/html/crs/527 + +mv /var/www/swad/asg/IT/4/1/TDSP /var/www/swad/crs/528 +mv /var/www/html/asg/IT/4/1/TDSP /var/www/html/crs/528 + +mv /var/www/swad/asg/IT/5/2/CO /var/www/swad/crs/529 +mv /var/www/html/asg/IT/5/2/CO /var/www/html/crs/529 + +mv /var/www/swad/asg/IT/5/2/ICT /var/www/swad/crs/530 +mv /var/www/html/asg/IT/5/2/ICT /var/www/html/crs/530 + +mv /var/www/swad/asg/IT/5/2/TT /var/www/swad/crs/531 +mv /var/www/html/asg/IT/5/2/TT /var/www/html/crs/531 + +mv /var/www/swad/asg/ITIG/1/1/AED /var/www/swad/crs/532 +mv /var/www/html/asg/ITIG/1/1/AED /var/www/html/crs/532 + +mv /var/www/swad/asg/ITIG/1/1/AM /var/www/swad/crs/533 +mv /var/www/html/asg/ITIG/1/1/AM /var/www/html/crs/533 + +mv /var/www/swad/asg/ITIG/1/2/EB /var/www/swad/crs/534 +mv /var/www/html/asg/ITIG/1/2/EB /var/www/html/crs/534 + +mv /var/www/swad/asg/ITIG/1/2/EDA /var/www/swad/crs/535 +mv /var/www/html/asg/ITIG/1/2/EDA /var/www/html/crs/535 + +mv /var/www/swad/asg/ITIG/1/2/FLPA /var/www/swad/crs/536 +mv /var/www/html/asg/ITIG/1/2/FLPA /var/www/html/crs/536 + +mv /var/www/swad/asg/ITIG/1/2/FLPB /var/www/swad/crs/537 +mv /var/www/html/asg/ITIG/1/2/FLPB /var/www/html/crs/537 + +mv /var/www/swad/asg/ITIG/1/1/FTC /var/www/swad/crs/538 +mv /var/www/html/asg/ITIG/1/1/FTC /var/www/html/crs/538 + +mv /var/www/swad/asg/ITIG/1/1/ICA /var/www/swad/crs/539 +mv /var/www/html/asg/ITIG/1/1/ICA /var/www/html/crs/539 + +mv /var/www/swad/asg/ITIG/1/1/ICB /var/www/swad/crs/540 +mv /var/www/html/asg/ITIG/1/1/ICB /var/www/html/crs/540 + +mv /var/www/swad/asg/ITIG/1/1/MDA /var/www/swad/crs/541 +mv /var/www/html/asg/ITIG/1/1/MDA /var/www/html/crs/541 + +mv /var/www/swad/asg/ITIG/1/1/MDB /var/www/swad/crs/542 +mv /var/www/html/asg/ITIG/1/1/MDB /var/www/html/crs/542 + +mv /var/www/swad/asg/ITIG/1/1/MP1 /var/www/swad/crs/543 +mv /var/www/html/asg/ITIG/1/1/MP1 /var/www/html/crs/543 + +mv /var/www/swad/asg/ITIG/1/2/MP2 /var/www/swad/crs/544 +mv /var/www/html/asg/ITIG/1/2/MP2 /var/www/html/crs/544 + +mv /var/www/swad/asg/ITIG/1/2/TCA /var/www/swad/crs/545 +mv /var/www/html/asg/ITIG/1/2/TCA /var/www/html/crs/545 + +mv /var/www/swad/asg/ITIG/1/2/TCB /var/www/swad/crs/546 +mv /var/www/html/asg/ITIG/1/2/TCB /var/www/html/crs/546 + +mv /var/www/swad/asg/ITIG/2/1/BD /var/www/swad/crs/547 +mv /var/www/html/asg/ITIG/2/1/BD /var/www/html/crs/547 + +mv /var/www/swad/asg/ITIG/2/2/CN /var/www/swad/crs/548 +mv /var/www/html/asg/ITIG/2/2/CN /var/www/html/crs/548 + +mv /var/www/swad/asg/ITIG/2/1/EC /var/www/swad/crs/549 +mv /var/www/html/asg/ITIG/2/1/EC /var/www/html/crs/549 + +mv /var/www/swad/asg/ITIG/2/1/IS1 /var/www/swad/crs/550 +mv /var/www/html/asg/ITIG/2/1/IS1 /var/www/html/crs/550 + +mv /var/www/swad/asg/ITIG/2/2/IS2 /var/www/swad/crs/551 +mv /var/www/html/asg/ITIG/2/2/IS2 /var/www/html/crs/551 + +mv /var/www/swad/asg/ITIG/2/2/MC /var/www/swad/crs/552 +mv /var/www/html/asg/ITIG/2/2/MC /var/www/html/crs/552 + +mv /var/www/swad/asg/ITIG/2/2/PBD /var/www/swad/crs/553 +mv /var/www/html/asg/ITIG/2/2/PBD /var/www/html/crs/553 + +mv /var/www/swad/asg/ITIG/2/1/SO1 /var/www/swad/crs/554 +mv /var/www/html/asg/ITIG/2/1/SO1 /var/www/html/crs/554 + +mv /var/www/swad/asg/ITIG/2/2/SO2 /var/www/swad/crs/555 +mv /var/www/html/asg/ITIG/2/2/SO2 /var/www/html/crs/555 + +mv /var/www/swad/asg/ITIG/2/1/TA /var/www/swad/crs/556 +mv /var/www/html/asg/ITIG/2/1/TA /var/www/html/crs/556 + +mv /var/www/swad/asg/ITIG/3/1/C /var/www/swad/crs/557 +mv /var/www/html/asg/ITIG/3/1/C /var/www/html/crs/557 + +mv /var/www/swad/asg/ITIG/3/2/EE /var/www/swad/crs/558 +mv /var/www/html/asg/ITIG/3/2/EE /var/www/html/crs/558 + +mv /var/www/swad/asg/ITIG/3/1/RC /var/www/swad/crs/559 +mv /var/www/html/asg/ITIG/3/1/RC /var/www/html/crs/559 + +mv /var/www/swad/asg/ITIS/1/1/AED /var/www/swad/crs/560 +mv /var/www/html/asg/ITIS/1/1/AED /var/www/html/crs/560 + +mv /var/www/swad/asg/ITIS/1/1/AEDB /var/www/swad/crs/561 +mv /var/www/html/asg/ITIS/1/1/AEDB /var/www/html/crs/561 + +mv /var/www/swad/asg/ITIS/1/1/AMA /var/www/swad/crs/562 +mv /var/www/html/asg/ITIS/1/1/AMA /var/www/html/crs/562 + +mv /var/www/swad/asg/ITIS/1/1/AM /var/www/swad/crs/563 +mv /var/www/html/asg/ITIS/1/1/AM /var/www/html/crs/563 + +mv /var/www/swad/asg/ITIS/1/2/EB /var/www/swad/crs/564 +mv /var/www/html/asg/ITIS/1/2/EB /var/www/html/crs/564 + +mv /var/www/swad/asg/ITIS/1/2/ED /var/www/swad/crs/565 +mv /var/www/html/asg/ITIS/1/2/ED /var/www/html/crs/565 + +mv /var/www/swad/asg/ITIS/1/2/FLPB /var/www/swad/crs/566 +mv /var/www/html/asg/ITIS/1/2/FLPB /var/www/html/crs/566 + +mv /var/www/swad/asg/ITIS/1/1/FFI /var/www/swad/crs/567 +mv /var/www/html/asg/ITIS/1/1/FFI /var/www/html/crs/567 + +mv /var/www/swad/asg/ITIS/1/2/FTC /var/www/swad/crs/568 +mv /var/www/html/asg/ITIS/1/2/FTC /var/www/html/crs/568 + +mv /var/www/swad/asg/ITIS/1/1/ICA /var/www/swad/crs/569 +mv /var/www/html/asg/ITIS/1/1/ICA /var/www/html/crs/569 + +mv /var/www/swad/asg/ITIS/1/1/ICB /var/www/swad/crs/570 +mv /var/www/html/asg/ITIS/1/1/ICB /var/www/html/crs/570 + +mv /var/www/swad/asg/ITIS/1/1/MD /var/www/swad/crs/571 +mv /var/www/html/asg/ITIS/1/1/MD /var/www/html/crs/571 + +mv /var/www/swad/asg/ITIS/1/1/MP1 /var/www/swad/crs/572 +mv /var/www/html/asg/ITIS/1/1/MP1 /var/www/html/crs/572 + +mv /var/www/swad/asg/ITIS/1/2/MP2A /var/www/swad/crs/573 +mv /var/www/html/asg/ITIS/1/2/MP2A /var/www/html/crs/573 + +mv /var/www/swad/asg/ITIS/1/2/MP2B /var/www/swad/crs/574 +mv /var/www/html/asg/ITIS/1/2/MP2B /var/www/html/crs/574 + +mv /var/www/swad/asg/ITIS/1/2/TCA /var/www/swad/crs/575 +mv /var/www/html/asg/ITIS/1/2/TCA /var/www/html/crs/575 + +mv /var/www/swad/asg/ITIS/1/2/TCB /var/www/swad/crs/576 +mv /var/www/html/asg/ITIS/1/2/TCB /var/www/html/crs/576 + +mv /var/www/swad/asg/ITIS/2/1/BD /var/www/swad/crs/577 +mv /var/www/html/asg/ITIS/2/1/BD /var/www/html/crs/577 + +mv /var/www/swad/asg/ITIS/2/1/CN /var/www/swad/crs/578 +mv /var/www/html/asg/ITIS/2/1/CN /var/www/html/crs/578 + +mv /var/www/swad/asg/ITIS/2/1/EC /var/www/swad/crs/579 +mv /var/www/html/asg/ITIS/2/1/EC /var/www/html/crs/579 + +mv /var/www/swad/asg/ITIS/2/1/ECP /var/www/swad/crs/580 +mv /var/www/html/asg/ITIS/2/1/ECP /var/www/html/crs/580 + +mv /var/www/swad/asg/ITIS/2/2/IS /var/www/swad/crs/581 +mv /var/www/html/asg/ITIS/2/2/IS /var/www/html/crs/581 + +mv /var/www/swad/asg/ITIS/2/2/MC /var/www/swad/crs/582 +mv /var/www/html/asg/ITIS/2/2/MC /var/www/html/crs/582 + +mv /var/www/swad/asg/ITIS/2/2/SBD /var/www/swad/crs/583 +mv /var/www/html/asg/ITIS/2/2/SBD /var/www/html/crs/583 + +mv /var/www/swad/asg/ITIS/2/1/SO1 /var/www/swad/crs/584 +mv /var/www/html/asg/ITIS/2/1/SO1 /var/www/html/crs/584 + +mv /var/www/swad/asg/ITIS/2/2/SO2 /var/www/swad/crs/585 +mv /var/www/html/asg/ITIS/2/2/SO2 /var/www/html/crs/585 + +mv /var/www/swad/asg/ITIS/2/1/TA /var/www/swad/crs/586 +mv /var/www/html/asg/ITIS/2/1/TA /var/www/html/crs/586 + +mv /var/www/swad/asg/ITIS/3/1/IDC /var/www/swad/crs/587 +mv /var/www/html/asg/ITIS/3/1/IDC /var/www/html/crs/587 + +mv /var/www/swad/asg/ITIS/3/1/R /var/www/swad/crs/588 +mv /var/www/html/asg/ITIS/3/1/R /var/www/html/crs/588 + +mv /var/www/swad/asg/ITIS/3/2/T /var/www/swad/crs/589 +mv /var/www/html/asg/ITIS/3/2/T /var/www/html/crs/589 + +mv /var/www/swad/asg/ITIO/3/2/AIS /var/www/swad/crs/590 +mv /var/www/html/asg/ITIO/3/2/AIS /var/www/html/crs/590 + +mv /var/www/swad/asg/ITIO/3/2/ASBM /var/www/swad/crs/591 +mv /var/www/html/asg/ITIO/3/2/ASBM /var/www/html/crs/591 + +mv /var/www/swad/asg/ITIO/3/1/AI /var/www/swad/crs/592 +mv /var/www/html/asg/ITIO/3/1/AI /var/www/html/crs/592 + +mv /var/www/swad/asg/ITIO/3/2/BDD /var/www/swad/crs/593 +mv /var/www/html/asg/ITIO/3/2/BDD /var/www/html/crs/593 + +mv /var/www/swad/asg/ITIO/3/2/CFG /var/www/swad/crs/594 +mv /var/www/html/asg/ITIO/3/2/CFG /var/www/html/crs/594 + +mv /var/www/swad/asg/ITIO/3/2/DSTR /var/www/swad/crs/595 +mv /var/www/html/asg/ITIO/3/2/DSTR /var/www/html/crs/595 + +mv /var/www/swad/asg/ITIO/3/2/DSDO /var/www/swad/crs/596 +mv /var/www/html/asg/ITIO/3/2/DSDO /var/www/html/crs/596 + +mv /var/www/swad/asg/ITIO/3/1/DIU /var/www/swad/crs/597 +mv /var/www/html/asg/ITIO/3/1/DIU /var/www/html/crs/597 + +mv /var/www/swad/asg/ITIO/3/2/DEC /var/www/swad/crs/598 +mv /var/www/html/asg/ITIO/3/2/DEC /var/www/html/crs/598 + +mv /var/www/swad/asg/ITIO/3/1/EDS /var/www/swad/crs/599 +mv /var/www/html/asg/ITIO/3/1/EDS /var/www/html/crs/599 + +mv /var/www/swad/asg/ITIO/3/2/FIG /var/www/swad/crs/600 +mv /var/www/html/asg/ITIO/3/2/FIG /var/www/html/crs/600 + +mv /var/www/swad/asg/ITIO/3/1/FFC /var/www/swad/crs/601 +mv /var/www/html/asg/ITIO/3/1/FFC /var/www/html/crs/601 + +mv /var/www/swad/asg/ITIO/3/2/GE /var/www/swad/crs/602 +mv /var/www/html/asg/ITIO/3/2/GE /var/www/html/crs/602 + +mv /var/www/swad/asg/ITIO/3/1/GSI /var/www/swad/crs/603 +mv /var/www/html/asg/ITIO/3/1/GSI /var/www/html/crs/603 + +mv /var/www/swad/asg/ITIO/3/1/ID /var/www/swad/crs/604 +mv /var/www/html/asg/ITIO/3/1/ID /var/www/html/crs/604 + +mv /var/www/swad/asg/ITIO/3/2/II /var/www/swad/crs/605 +mv /var/www/html/asg/ITIO/3/2/II /var/www/html/crs/605 + +mv /var/www/swad/asg/ITIO/3/1/LTDR /var/www/swad/crs/606 +mv /var/www/html/asg/ITIO/3/1/LTDR /var/www/html/crs/606 + +mv /var/www/swad/asg/ITIO/3/2/LTDR /var/www/swad/crs/607 +mv /var/www/html/asg/ITIO/3/2/LTDR /var/www/html/crs/607 + +mv /var/www/swad/asg/ITIO/3/1/LP /var/www/swad/crs/608 +mv /var/www/html/asg/ITIO/3/1/LP /var/www/html/crs/608 + +mv /var/www/swad/asg/ITIO/3/2/MEI /var/www/swad/crs/609 +mv /var/www/html/asg/ITIO/3/2/MEI /var/www/html/crs/609 + +mv /var/www/swad/asg/ITIO/3/1/MIA /var/www/swad/crs/610 +mv /var/www/html/asg/ITIO/3/1/MIA /var/www/html/crs/610 + +mv /var/www/swad/asg/ITIO/3/1/NTP /var/www/swad/crs/611 +mv /var/www/html/asg/ITIO/3/1/NTP /var/www/html/crs/611 + +mv /var/www/swad/asg/ITIO/3/1/O /var/www/swad/crs/612 +mv /var/www/html/asg/ITIO/3/1/O /var/www/html/crs/612 + +mv /var/www/swad/asg/ITIO/3/2/P /var/www/swad/crs/613 +mv /var/www/html/asg/ITIO/3/2/P /var/www/html/crs/613 + +mv /var/www/swad/asg/ITIO/3/1/PDS /var/www/swad/crs/614 +mv /var/www/html/asg/ITIO/3/1/PDS /var/www/html/crs/614 + +mv /var/www/swad/asg/ITIO/3/1/PC /var/www/swad/crs/615 +mv /var/www/html/asg/ITIO/3/1/PC /var/www/html/crs/615 + +mv /var/www/swad/asg/ITIO/3/2/PBD /var/www/swad/crs/616 +mv /var/www/html/asg/ITIO/3/2/PBD /var/www/html/crs/616 + +mv /var/www/swad/asg/ITIO/3/1/SPSI /var/www/swad/crs/617 +mv /var/www/html/asg/ITIO/3/1/SPSI /var/www/html/crs/617 + +mv /var/www/swad/asg/ITIO/3/2/SAD /var/www/swad/crs/618 +mv /var/www/html/asg/ITIO/3/2/SAD /var/www/html/crs/618 + +mv /var/www/swad/asg/ITIO/3/2/SBD /var/www/swad/crs/619 +mv /var/www/html/asg/ITIO/3/2/SBD /var/www/html/crs/619 + +mv /var/www/swad/asg/ITIO/3/2/SIE /var/www/swad/crs/620 +mv /var/www/html/asg/ITIO/3/2/SIE /var/www/html/crs/620 + +mv /var/www/swad/asg/ITIO/3/2/GIS /var/www/swad/crs/621 +mv /var/www/html/asg/ITIO/3/2/GIS /var/www/html/crs/621 + +mv /var/www/swad/asg/ITIO/3/1/SID /var/www/swad/crs/622 +mv /var/www/html/asg/ITIO/3/1/SID /var/www/html/crs/622 + +mv /var/www/swad/asg/ITIO/3/2/SIGes /var/www/swad/crs/623 +mv /var/www/html/asg/ITIO/3/2/SIGes /var/www/html/crs/623 + +mv /var/www/swad/asg/ITIO/3/1/SM /var/www/swad/crs/624 +mv /var/www/html/asg/ITIO/3/1/SM /var/www/html/crs/624 + +mv /var/www/swad/asg/ITIO/3/1/TMS /var/www/swad/crs/625 +mv /var/www/html/asg/ITIO/3/1/TMS /var/www/html/crs/625 + +mv /var/www/swad/asg/ITIO/3/1/TCC /var/www/swad/crs/626 +mv /var/www/html/asg/ITIO/3/1/TCC /var/www/html/crs/626 + +mv /var/www/swad/asg/ITIO/3/1/T /var/www/swad/crs/627 +mv /var/www/html/asg/ITIO/3/1/T /var/www/html/crs/627 + +mv /var/www/swad/asg/ITIGC/1/1/AED /var/www/swad/crs/628 +mv /var/www/html/asg/ITIGC/1/1/AED /var/www/html/crs/628 + +mv /var/www/swad/asg/ITIGC/1/1/AM /var/www/swad/crs/629 +mv /var/www/html/asg/ITIGC/1/1/AM /var/www/html/crs/629 + +mv /var/www/swad/asg/ITIGC/1/2/E /var/www/swad/crs/630 +mv /var/www/html/asg/ITIGC/1/2/E /var/www/html/crs/630 + +mv /var/www/swad/asg/ITIGC/1/2/FLP /var/www/swad/crs/631 +mv /var/www/html/asg/ITIGC/1/2/FLP /var/www/html/crs/631 + +mv /var/www/swad/asg/ITIGC/1/1/FTC /var/www/swad/crs/632 +mv /var/www/html/asg/ITIGC/1/1/FTC /var/www/html/crs/632 + +mv /var/www/swad/asg/ITIGC/1/1/IC /var/www/swad/crs/633 +mv /var/www/html/asg/ITIGC/1/1/IC /var/www/html/crs/633 + +mv /var/www/swad/asg/ITIGC/1/2/MD /var/www/swad/crs/634 +mv /var/www/html/asg/ITIGC/1/2/MD /var/www/html/crs/634 + +mv /var/www/swad/asg/ITIGC/1/1/MP1 /var/www/swad/crs/635 +mv /var/www/html/asg/ITIGC/1/1/MP1 /var/www/html/crs/635 + +mv /var/www/swad/asg/ITIGC/1/2/MP2 /var/www/swad/crs/636 +mv /var/www/html/asg/ITIGC/1/2/MP2 /var/www/html/crs/636 + +mv /var/www/swad/asg/ITIGC/1/2/TC /var/www/swad/crs/637 +mv /var/www/html/asg/ITIGC/1/2/TC /var/www/html/crs/637 + +mv /var/www/swad/asg/ITIGC/2/1/BD /var/www/swad/crs/638 +mv /var/www/html/asg/ITIGC/2/1/BD /var/www/html/crs/638 + +mv /var/www/swad/asg/ITIGC/2/2/CN /var/www/swad/crs/639 +mv /var/www/html/asg/ITIGC/2/2/CN /var/www/html/crs/639 + +mv /var/www/swad/asg/ITIGC/2/1/ED /var/www/swad/crs/640 +mv /var/www/html/asg/ITIGC/2/1/ED /var/www/html/crs/640 + +mv /var/www/swad/asg/ITIGC/2/1/EC /var/www/swad/crs/641 +mv /var/www/html/asg/ITIGC/2/1/EC /var/www/html/crs/641 + +mv /var/www/swad/asg/ITIGC/2/1/IS1 /var/www/swad/crs/642 +mv /var/www/html/asg/ITIGC/2/1/IS1 /var/www/html/crs/642 + +mv /var/www/swad/asg/ITIGC/2/2/IS2 /var/www/swad/crs/643 +mv /var/www/html/asg/ITIGC/2/2/IS2 /var/www/html/crs/643 + +mv /var/www/swad/asg/ITIGC/2/2/MC /var/www/swad/crs/644 +mv /var/www/html/asg/ITIGC/2/2/MC /var/www/html/crs/644 + +mv /var/www/swad/asg/ITIGC/2/2/PBD /var/www/swad/crs/645 +mv /var/www/html/asg/ITIGC/2/2/PBD /var/www/html/crs/645 + +mv /var/www/swad/asg/ITIGC/2/1/SO1 /var/www/swad/crs/646 +mv /var/www/html/asg/ITIGC/2/1/SO1 /var/www/html/crs/646 + +mv /var/www/swad/asg/ITIGC/2/2/SO2 /var/www/swad/crs/647 +mv /var/www/html/asg/ITIGC/2/2/SO2 /var/www/html/crs/647 + +mv /var/www/swad/asg/ITIGC/2/1/TA /var/www/swad/crs/648 +mv /var/www/html/asg/ITIGC/2/1/TA /var/www/html/crs/648 + +mv /var/www/swad/asg/ITIGC/3/1/C /var/www/swad/crs/649 +mv /var/www/html/asg/ITIGC/3/1/C /var/www/html/crs/649 + +mv /var/www/swad/asg/ITIGC/3/2/EE /var/www/swad/crs/650 +mv /var/www/html/asg/ITIGC/3/2/EE /var/www/html/crs/650 + +mv /var/www/swad/asg/ITIGC/3/2/DIU /var/www/swad/crs/651 +mv /var/www/html/asg/ITIGC/3/2/DIU /var/www/html/crs/651 + +mv /var/www/swad/asg/ITIGC/3/1/P /var/www/swad/crs/652 +mv /var/www/html/asg/ITIGC/3/1/P /var/www/html/crs/652 + +mv /var/www/swad/asg/ITIGC/3/1/RC /var/www/swad/crs/653 +mv /var/www/html/asg/ITIGC/3/1/RC /var/www/html/crs/653 + +mv /var/www/swad/asg/ITIGC/3/2/TDR /var/www/swad/crs/654 +mv /var/www/html/asg/ITIGC/3/2/TDR /var/www/html/crs/654 + +mv /var/www/swad/asg/LADE/0/2/AMAA /var/www/swad/crs/655 +mv /var/www/html/asg/LADE/0/2/AMAA /var/www/html/crs/655 + +mv /var/www/swad/asg/LADE/0/2/AC /var/www/swad/crs/656 +mv /var/www/html/asg/LADE/0/2/AC /var/www/html/crs/656 + +mv /var/www/swad/asg/LADE/0/1/CE /var/www/swad/crs/657 +mv /var/www/html/asg/LADE/0/1/CE /var/www/html/crs/657 + +mv /var/www/swad/asg/LADE/0/2/CDC /var/www/swad/crs/658 +mv /var/www/html/asg/LADE/0/2/CDC /var/www/html/crs/658 + +mv /var/www/swad/asg/LADE/0/2/CC /var/www/swad/crs/659 +mv /var/www/html/asg/LADE/0/2/CC /var/www/html/crs/659 + +mv /var/www/swad/asg/LADE/0/1/CG /var/www/swad/crs/660 +mv /var/www/html/asg/LADE/0/1/CG /var/www/html/crs/660 + +mv /var/www/swad/asg/LADE/0/1/CSEE /var/www/swad/crs/661 +mv /var/www/html/asg/LADE/0/1/CSEE /var/www/html/crs/661 + +mv /var/www/swad/asg/LADE/0/1/CP /var/www/swad/crs/662 +mv /var/www/html/asg/LADE/0/1/CP /var/www/html/crs/662 + +mv /var/www/swad/asg/LADE/0/1/CMTV /var/www/swad/crs/663 +mv /var/www/html/asg/LADE/0/1/CMTV /var/www/html/crs/663 + +mv /var/www/swad/asg/LADE/0/2/CG /var/www/swad/crs/664 +mv /var/www/html/asg/LADE/0/2/CG /var/www/html/crs/664 + +mv /var/www/swad/asg/LADE/0/1/CEC /var/www/swad/crs/665 +mv /var/www/html/asg/LADE/0/1/CEC /var/www/html/crs/665 + +mv /var/www/swad/asg/LADE/0/2/DSS /var/www/swad/crs/666 +mv /var/www/html/asg/LADE/0/2/DSS /var/www/html/crs/666 + +mv /var/www/swad/asg/LADE/0/1/DO1 /var/www/swad/crs/667 +mv /var/www/html/asg/LADE/0/1/DO1 /var/www/html/crs/667 + +mv /var/www/swad/asg/LADE/0/1/DO2 /var/www/swad/crs/668 +mv /var/www/html/asg/LADE/0/1/DO2 /var/www/html/crs/668 + +mv /var/www/swad/asg/LADE/0/2/DRH /var/www/swad/crs/669 +mv /var/www/html/asg/LADE/0/2/DRH /var/www/html/crs/669 + +mv /var/www/swad/asg/LADE/0/1/DCB /var/www/swad/crs/670 +mv /var/www/html/asg/LADE/0/1/DCB /var/www/html/crs/670 + +mv /var/www/swad/asg/LADE/0/2/FEJ /var/www/swad/crs/671 +mv /var/www/html/asg/LADE/0/2/FEJ /var/www/html/crs/671 + +mv /var/www/swad/asg/LADE/0/1/FE /var/www/swad/crs/672 +mv /var/www/html/asg/LADE/0/1/FE /var/www/html/crs/672 + +mv /var/www/swad/asg/LADE/0/1/GCE /var/www/swad/crs/673 +mv /var/www/html/asg/LADE/0/1/GCE /var/www/html/crs/673 + +mv /var/www/swad/asg/LADE/0/2/GRI /var/www/swad/crs/674 +mv /var/www/html/asg/LADE/0/2/GRI /var/www/html/crs/674 + +mv /var/www/swad/asg/LADE/0/1/HE /var/www/swad/crs/675 +mv /var/www/html/asg/LADE/0/1/HE /var/www/html/crs/675 + +mv /var/www/swad/asg/LADE/0/1/IC1 /var/www/swad/crs/676 +mv /var/www/html/asg/LADE/0/1/IC1 /var/www/html/crs/676 + +mv /var/www/swad/asg/LADE/0/2/ICCD /var/www/swad/crs/677 +mv /var/www/html/asg/LADE/0/2/ICCD /var/www/html/crs/677 + +mv /var/www/swad/asg/LADE/0/2/IDPFA /var/www/swad/crs/678 +mv /var/www/html/asg/LADE/0/2/IDPFA /var/www/html/crs/678 + +mv /var/www/swad/asg/LADE/0/2/II /var/www/swad/crs/679 +mv /var/www/html/asg/LADE/0/2/II /var/www/html/crs/679 + +mv /var/www/swad/asg/LADE/0/1/ISA /var/www/swad/crs/680 +mv /var/www/html/asg/LADE/0/1/ISA /var/www/html/crs/680 + +mv /var/www/swad/asg/LADE/0/1/ISB /var/www/swad/crs/681 +mv /var/www/html/asg/LADE/0/1/ISB /var/www/html/crs/681 + +mv /var/www/swad/asg/LADE/0/2/IMF /var/www/swad/crs/682 +mv /var/www/html/asg/LADE/0/2/IMF /var/www/html/crs/682 + +mv /var/www/swad/asg/LADE/0/2/IM /var/www/swad/crs/683 +mv /var/www/html/asg/LADE/0/2/IM /var/www/html/crs/683 + +mv /var/www/swad/asg/LADE/0/1/IO /var/www/swad/crs/684 +mv /var/www/html/asg/LADE/0/1/IO /var/www/html/crs/684 + +mv /var/www/swad/asg/LADE/0/2/MCABC /var/www/swad/crs/685 +mv /var/www/html/asg/LADE/0/2/MCABC /var/www/html/crs/685 + +mv /var/www/swad/asg/LADE/0/2/NCI /var/www/swad/crs/686 +mv /var/www/html/asg/LADE/0/2/NCI /var/www/html/crs/686 + +mv /var/www/swad/asg/LADE/0/2/O /var/www/swad/crs/687 +mv /var/www/html/asg/LADE/0/2/O /var/www/html/crs/687 + +mv /var/www/swad/asg/LADE/0/2/OE /var/www/swad/crs/688 +mv /var/www/html/asg/LADE/0/2/OE /var/www/html/crs/688 + +mv /var/www/swad/asg/LADE/0/2/PC /var/www/swad/crs/689 +mv /var/www/html/asg/LADE/0/2/PC /var/www/html/crs/689 + +mv /var/www/swad/asg/LADE/0/1/PP /var/www/swad/crs/690 +mv /var/www/html/asg/LADE/0/1/PP /var/www/html/crs/690 + +mv /var/www/swad/asg/LADE/0/2/RL /var/www/swad/crs/691 +mv /var/www/html/asg/LADE/0/2/RL /var/www/html/crs/691 + +mv /var/www/swad/asg/LADE/0/2/SF /var/www/swad/crs/692 +mv /var/www/html/asg/LADE/0/2/SF /var/www/html/crs/692 + +mv /var/www/swad/asg/LADE/0/2/TAM /var/www/swad/crs/693 +mv /var/www/html/asg/LADE/0/2/TAM /var/www/html/crs/693 + +mv /var/www/swad/asg/LADE/0/2/TGBI /var/www/swad/crs/694 +mv /var/www/html/asg/LADE/0/2/TGBI /var/www/html/crs/694 + +mv /var/www/swad/asg/LADE/1/2/CF /var/www/swad/crs/695 +mv /var/www/html/asg/LADE/1/2/CF /var/www/html/crs/695 + +mv /var/www/swad/asg/LADE/1/1/DCB /var/www/swad/crs/696 +mv /var/www/html/asg/LADE/1/1/DCB /var/www/html/crs/696 + +mv /var/www/swad/asg/LADE/1/1/DCCDE /var/www/swad/crs/697 +mv /var/www/html/asg/LADE/1/1/DCCDE /var/www/html/crs/697 + +mv /var/www/swad/asg/LADE/1/1/MI1 /var/www/swad/crs/698 +mv /var/www/html/asg/LADE/1/1/MI1 /var/www/html/crs/698 + +mv /var/www/swad/asg/LADE/2/1/DTSSB /var/www/swad/crs/699 +mv /var/www/html/asg/LADE/2/1/DTSSB /var/www/html/crs/699 + +mv /var/www/swad/asg/LADER/1/0/DCO1B /var/www/swad/crs/700 +mv /var/www/html/asg/LADER/1/0/DCO1B /var/www/html/crs/700 + +mv /var/www/swad/asg/LADER/1/2/IDPB /var/www/swad/crs/701 +mv /var/www/html/asg/LADER/1/2/IDPB /var/www/html/crs/701 + +mv /var/www/swad/asg/LADER/1/2/MA1AB /var/www/swad/crs/702 +mv /var/www/html/asg/LADER/1/2/MA1AB /var/www/html/crs/702 + +mv /var/www/swad/asg/LADER/1/2/TCE1 /var/www/swad/crs/703 +mv /var/www/html/asg/LADER/1/2/TCE1 /var/www/html/crs/703 + +mv /var/www/swad/asg/LADER/2/0/DC2 /var/www/swad/crs/704 +mv /var/www/html/asg/LADER/2/0/DC2 /var/www/html/crs/704 + +mv /var/www/swad/asg/LADER/2/1/DCO2B /var/www/swad/crs/705 +mv /var/www/html/asg/LADER/2/1/DCO2B /var/www/html/crs/705 + +mv /var/www/swad/asg/LADER/5/0/DFT1A /var/www/swad/crs/706 +mv /var/www/html/asg/LADER/5/0/DFT1A /var/www/html/crs/706 + +mv /var/www/swad/asg/LADER/5/0/DM1 /var/www/swad/crs/707 +mv /var/www/html/asg/LADER/5/0/DM1 /var/www/html/crs/707 + +mv /var/www/swad/asg/LADER/6/0/DF2A /var/www/swad/crs/708 +mv /var/www/html/asg/LADER/6/0/DF2A /var/www/html/crs/708 + +mv /var/www/swad/asg/LADER/6/0/DIPA /var/www/swad/crs/709 +mv /var/www/html/asg/LADER/6/0/DIPA /var/www/html/crs/709 + +mv /var/www/swad/asg/LADER/6/1/DM2 /var/www/swad/crs/710 +mv /var/www/html/asg/LADER/6/1/DM2 /var/www/html/crs/710 + +mv /var/www/swad/asg/LAS/0/0/CM /var/www/swad/crs/711 +mv /var/www/html/asg/LAS/0/0/CM /var/www/html/crs/711 + +mv /var/www/swad/asg/LAS/0/2/HSC /var/www/swad/crs/712 +mv /var/www/html/asg/LAS/0/2/HSC /var/www/html/crs/712 + +mv /var/www/swad/asg/LAS/4/2/AA /var/www/swad/crs/713 +mv /var/www/html/asg/LAS/4/2/AA /var/www/html/crs/713 + +mv /var/www/swad/asg/LAS/4/2/AE /var/www/swad/crs/714 +mv /var/www/html/asg/LAS/4/2/AE /var/www/html/crs/714 + +mv /var/www/swad/asg/LAS/4/1/AR /var/www/swad/crs/715 +mv /var/www/html/asg/LAS/4/1/AR /var/www/html/crs/715 + +mv /var/www/swad/asg/LAS/4/2/AS /var/www/swad/crs/716 +mv /var/www/html/asg/LAS/4/2/AS /var/www/html/crs/716 + +mv /var/www/swad/asg/LAS/4/1/AD /var/www/swad/crs/717 +mv /var/www/html/asg/LAS/4/1/AD /var/www/html/crs/717 + +mv /var/www/swad/asg/LAS/4/2/AG /var/www/swad/crs/718 +mv /var/www/html/asg/LAS/4/2/AG /var/www/html/crs/718 + +mv /var/www/swad/asg/LAS/4/2/AP /var/www/swad/crs/719 +mv /var/www/html/asg/LAS/4/2/AP /var/www/html/crs/719 + +mv /var/www/swad/asg/LAS/4/1/ABS /var/www/swad/crs/720 +mv /var/www/html/asg/LAS/4/1/ABS /var/www/html/crs/720 + +mv /var/www/swad/asg/LAS/4/1/EACSB /var/www/swad/crs/721 +mv /var/www/html/asg/LAS/4/1/EACSB /var/www/html/crs/721 + +mv /var/www/swad/asg/LAS/4/2/ER /var/www/swad/crs/722 +mv /var/www/html/asg/LAS/4/2/ER /var/www/html/crs/722 + +mv /var/www/swad/asg/LAS/4/1/FSH /var/www/swad/crs/723 +mv /var/www/html/asg/LAS/4/1/FSH /var/www/html/crs/723 + +mv /var/www/swad/asg/LAS/4/1/FAS1 /var/www/swad/crs/724 +mv /var/www/html/asg/LAS/4/1/FAS1 /var/www/html/crs/724 + +mv /var/www/swad/asg/LAS/4/2/FAS2 /var/www/swad/crs/725 +mv /var/www/html/asg/LAS/4/2/FAS2 /var/www/html/crs/725 + +mv /var/www/swad/asg/LAS/4/1/GHD /var/www/swad/crs/726 +mv /var/www/html/asg/LAS/4/1/GHD /var/www/html/crs/726 + +mv /var/www/swad/asg/LAS/4/2/HEC /var/www/swad/crs/727 +mv /var/www/html/asg/LAS/4/2/HEC /var/www/html/crs/727 + +mv /var/www/swad/asg/LAS/4/2/HSC /var/www/swad/crs/728 +mv /var/www/html/asg/LAS/4/2/HSC /var/www/html/crs/728 + +mv /var/www/swad/asg/LAS/4/0/MTIE /var/www/swad/crs/729 +mv /var/www/html/asg/LAS/4/0/MTIE /var/www/html/crs/729 + +mv /var/www/swad/asg/LAS/4/0/MTIE2 /var/www/swad/crs/730 +mv /var/www/html/asg/LAS/4/0/MTIE2 /var/www/html/crs/730 + +mv /var/www/swad/asg/LAS/4/1/NE /var/www/swad/crs/731 +mv /var/www/html/asg/LAS/4/1/NE /var/www/html/crs/731 + +mv /var/www/swad/asg/LAS/5/1/AE /var/www/swad/crs/732 +mv /var/www/html/asg/LAS/5/1/AE /var/www/html/crs/732 + +mv /var/www/swad/asg/LAS/5/1/ACS /var/www/swad/crs/733 +mv /var/www/html/asg/LAS/5/1/ACS /var/www/html/crs/733 + +mv /var/www/swad/asg/LAS/5/2/AP /var/www/swad/crs/734 +mv /var/www/html/asg/LAS/5/2/AP /var/www/html/crs/734 + +mv /var/www/swad/asg/LAS/5/1/ECSE /var/www/swad/crs/735 +mv /var/www/html/asg/LAS/5/1/ECSE /var/www/html/crs/735 + +mv /var/www/swad/asg/LAS/5/2/TCA /var/www/swad/crs/736 +mv /var/www/html/asg/LAS/5/2/TCA /var/www/html/crs/736 + +mv /var/www/swad/asg/LAS/5/2/TCAC /var/www/swad/crs/737 +mv /var/www/html/asg/LAS/5/2/TCAC /var/www/html/crs/737 + +mv /var/www/swad/asg/LBA/0/0/AA /var/www/swad/crs/738 +mv /var/www/html/asg/LBA/0/0/AA /var/www/html/crs/738 + +mv /var/www/swad/asg/LBA/0/2/ATEOA /var/www/swad/crs/739 +mv /var/www/html/asg/LBA/0/2/ATEOA /var/www/html/crs/739 + +mv /var/www/swad/asg/LBA/0/1/CRR /var/www/swad/crs/740 +mv /var/www/html/asg/LBA/0/1/CRR /var/www/html/crs/740 + +mv /var/www/swad/asg/LBA/0/1/EC /var/www/swad/crs/741 +mv /var/www/html/asg/LBA/0/1/EC /var/www/html/crs/741 + +mv /var/www/swad/asg/LBA/0/1/NQMR /var/www/swad/crs/742 +mv /var/www/html/asg/LBA/0/1/NQMR /var/www/html/crs/742 + +mv /var/www/swad/asg/LBA/0/1/PABC /var/www/swad/crs/743 +mv /var/www/html/asg/LBA/0/1/PABC /var/www/html/crs/743 + +mv /var/www/swad/asg/LBA/0/2/SCAD /var/www/swad/crs/744 +mv /var/www/html/asg/LBA/0/2/SCAD /var/www/html/crs/744 + +mv /var/www/swad/asg/LBA/1/0/D1A /var/www/swad/crs/745 +mv /var/www/html/asg/LBA/1/0/D1A /var/www/html/crs/745 + +mv /var/www/swad/asg/LBA/1/0/D1B /var/www/swad/crs/746 +mv /var/www/html/asg/LBA/1/0/D1B /var/www/html/crs/746 + +mv /var/www/swad/asg/LBA/1/0/D1C /var/www/swad/crs/747 +mv /var/www/html/asg/LBA/1/0/D1C /var/www/html/crs/747 + +mv /var/www/swad/asg/LBA/1/0/THGAAB /var/www/swad/crs/748 +mv /var/www/html/asg/LBA/1/0/THGAAB /var/www/html/crs/748 + +mv /var/www/swad/asg/LBA/2/0/ALA /var/www/swad/crs/749 +mv /var/www/html/asg/LBA/2/0/ALA /var/www/html/crs/749 + +mv /var/www/swad/asg/LBA/2/0/D2D /var/www/swad/crs/750 +mv /var/www/html/asg/LBA/2/0/D2D /var/www/html/crs/750 + +mv /var/www/swad/asg/LBA/2/0/HACC /var/www/swad/crs/751 +mv /var/www/html/asg/LBA/2/0/HACC /var/www/html/crs/751 + +mv /var/www/swad/asg/LBA/3/0/MLPCAC /var/www/swad/crs/752 +mv /var/www/html/asg/LBA/3/0/MLPCAC /var/www/html/crs/752 + +mv /var/www/swad/asg/LBA/3/0/MLTCDC /var/www/swad/crs/753 +mv /var/www/html/asg/LBA/3/0/MLTCDC /var/www/html/crs/753 + +mv /var/www/swad/asg/LBA/3/0/MLTOEB /var/www/swad/crs/754 +mv /var/www/html/asg/LBA/3/0/MLTOEB /var/www/html/crs/754 + +mv /var/www/swad/asg/LBA/4/1/ADAM /var/www/swad/crs/755 +mv /var/www/html/asg/LBA/4/1/ADAM /var/www/html/crs/755 + +mv /var/www/swad/asg/LBA/4/2/DEEA /var/www/swad/crs/756 +mv /var/www/html/asg/LBA/4/2/DEEA /var/www/html/crs/756 + +mv /var/www/swad/asg/LBA/4/2/DEEB /var/www/swad/crs/757 +mv /var/www/html/asg/LBA/4/2/DEEB /var/www/html/crs/757 + +mv /var/www/swad/asg/LBA/4/2/DEEC /var/www/swad/crs/758 +mv /var/www/html/asg/LBA/4/2/DEEC /var/www/html/crs/758 + +mv /var/www/swad/asg/LBA/4/0/IC1D /var/www/swad/crs/759 +mv /var/www/html/asg/LBA/4/0/IC1D /var/www/html/crs/759 + +mv /var/www/swad/asg/LB/0/2/HCV /var/www/swad/crs/760 +mv /var/www/html/asg/LB/0/2/HCV /var/www/html/crs/760 + +mv /var/www/swad/asg/LB/1/2/B /var/www/swad/crs/761 +mv /var/www/html/asg/LB/1/2/B /var/www/html/crs/761 + +mv /var/www/swad/asg/LB/1/2/FPB /var/www/swad/crs/762 +mv /var/www/html/asg/LB/1/2/FPB /var/www/html/crs/762 + +mv /var/www/swad/asg/LB/1/0/PG /var/www/swad/crs/763 +mv /var/www/html/asg/LB/1/0/PG /var/www/html/crs/763 + +mv /var/www/swad/asg/LB/1/1/QB /var/www/swad/crs/764 +mv /var/www/html/asg/LB/1/1/QB /var/www/html/crs/764 + +mv /var/www/swad/asg/LB/1/0/ZGA /var/www/swad/crs/765 +mv /var/www/html/asg/LB/1/0/ZGA /var/www/html/crs/765 + +mv /var/www/swad/asg/LB/2/0/CHVA /var/www/swad/crs/766 +mv /var/www/html/asg/LB/2/0/CHVA /var/www/html/crs/766 + +mv /var/www/swad/asg/LB/3/0/FA /var/www/swad/crs/767 +mv /var/www/html/asg/LB/3/0/FA /var/www/html/crs/767 + +mv /var/www/swad/asg/LB/3/0/FAC /var/www/swad/crs/768 +mv /var/www/html/asg/LB/3/0/FAC /var/www/html/crs/768 + +mv /var/www/swad/asg/LB/3/0/FAD1 /var/www/swad/crs/769 +mv /var/www/html/asg/LB/3/0/FAD1 /var/www/html/crs/769 + +mv /var/www/swad/asg/LB/3/0/FAD /var/www/swad/crs/770 +mv /var/www/html/asg/LB/3/0/FAD /var/www/html/crs/770 + +mv /var/www/swad/asg/LB/3/1/M /var/www/swad/crs/771 +mv /var/www/html/asg/LB/3/1/M /var/www/html/crs/771 + +mv /var/www/swad/asg/LB/3/0/OMA /var/www/swad/crs/772 +mv /var/www/html/asg/LB/3/0/OMA /var/www/html/crs/772 + +mv /var/www/swad/asg/LB/3/2/ZM /var/www/swad/crs/773 +mv /var/www/html/asg/LB/3/2/ZM /var/www/html/crs/773 + +mv /var/www/swad/asg/LB/4/0/FAA1 /var/www/swad/crs/774 +mv /var/www/html/asg/LB/4/0/FAA1 /var/www/html/crs/774 + +mv /var/www/swad/asg/LB/4/0/FAA /var/www/swad/crs/775 +mv /var/www/html/asg/LB/4/0/FAA /var/www/html/crs/775 + +mv /var/www/swad/asg/LB/4/2/FAA /var/www/swad/crs/776 +mv /var/www/html/asg/LB/4/2/FAA /var/www/html/crs/776 + +mv /var/www/swad/asg/LB/4/2/BCA /var/www/swad/crs/777 +mv /var/www/html/asg/LB/4/2/BCA /var/www/html/crs/777 + +mv /var/www/swad/asg/LB/5/0/FBA4I /var/www/swad/crs/778 +mv /var/www/html/asg/LB/5/0/FBA4I /var/www/html/crs/778 + +mv /var/www/swad/asg/LB/5/1/FBA4IC /var/www/swad/crs/779 +mv /var/www/html/asg/LB/5/1/FBA4IC /var/www/html/crs/779 + +mv /var/www/swad/asg/LB/5/0/G /var/www/swad/crs/780 +mv /var/www/html/asg/LB/5/0/G /var/www/html/crs/780 + +mv /var/www/swad/asg/LBQ/1/1/BC /var/www/swad/crs/781 +mv /var/www/html/asg/LBQ/1/1/BC /var/www/html/crs/781 + +mv /var/www/swad/asg/LBQ/1/1/EMR /var/www/swad/crs/782 +mv /var/www/html/asg/LBQ/1/1/EMR /var/www/html/crs/782 + +mv /var/www/swad/asg/LBQ/1/2/QB /var/www/swad/crs/783 +mv /var/www/html/asg/LBQ/1/2/QB /var/www/html/crs/783 + +mv /var/www/swad/asg/LBQ/2/1/I /var/www/swad/crs/784 +mv /var/www/html/asg/LBQ/2/1/I /var/www/html/crs/784 + +mv /var/www/swad/asg/LBQ/2/2/IC /var/www/swad/crs/785 +mv /var/www/html/asg/LBQ/2/2/IC /var/www/html/crs/785 + +mv /var/www/swad/asg/LBQ/2/0/MEB2 /var/www/swad/crs/786 +mv /var/www/html/asg/LBQ/2/0/MEB2 /var/www/html/crs/786 + +mv /var/www/swad/asg/LCTA/0/1/MCF /var/www/swad/crs/787 +mv /var/www/html/asg/LCTA/0/1/MCF /var/www/html/crs/787 + +mv /var/www/swad/asg/LCTA/1/1/AC /var/www/swad/crs/788 +mv /var/www/html/asg/LCTA/1/1/AC /var/www/html/crs/788 + +mv /var/www/swad/asg/LCTA/1/1/BMAAC /var/www/swad/crs/789 +mv /var/www/html/asg/LCTA/1/1/BMAAC /var/www/html/crs/789 + +mv /var/www/swad/asg/LCTA/1/0/BR /var/www/swad/crs/790 +mv /var/www/html/asg/LCTA/1/0/BR /var/www/html/crs/790 + +mv /var/www/swad/asg/LCTA/1/2/PA /var/www/swad/crs/791 +mv /var/www/html/asg/LCTA/1/2/PA /var/www/html/crs/791 + +mv /var/www/swad/asg/LCTA/1/0/QBA /var/www/swad/crs/792 +mv /var/www/html/asg/LCTA/1/0/QBA /var/www/html/crs/792 + +mv /var/www/swad/asg/LCTA/2/2/CGLA /var/www/swad/crs/793 +mv /var/www/html/asg/LCTA/2/2/CGLA /var/www/html/crs/793 + +mv /var/www/swad/asg/LCTA/2/0/DN /var/www/swad/crs/794 +mv /var/www/html/asg/LCTA/2/0/DN /var/www/html/crs/794 + +mv /var/www/swad/asg/LCTA/2/2/DPIPA /var/www/swad/crs/795 +mv /var/www/html/asg/LCTA/2/2/DPIPA /var/www/html/crs/795 + +mv /var/www/swad/asg/LCTA/2/1/MI /var/www/swad/crs/796 +mv /var/www/html/asg/LCTA/2/1/MI /var/www/html/crs/796 + +mv /var/www/swad/asg/LCAFD/0/2/FEC /var/www/swad/crs/797 +mv /var/www/html/asg/LCAFD/0/2/FEC /var/www/html/crs/797 + +mv /var/www/swad/asg/LCAFD/0/0/NT /var/www/swad/crs/798 +mv /var/www/html/asg/LCAFD/0/0/NT /var/www/html/crs/798 + +mv /var/www/swad/asg/LCAFD/0/2/NAFD /var/www/swad/crs/799 +mv /var/www/html/asg/LCAFD/0/2/NAFD /var/www/html/crs/799 + +mv /var/www/swad/asg/LCAFD/1/1/AF /var/www/swad/crs/800 +mv /var/www/html/asg/LCAFD/1/1/AF /var/www/html/crs/800 + +mv /var/www/swad/asg/LCAFD/1/0/EC /var/www/swad/crs/801 +mv /var/www/html/asg/LCAFD/1/0/EC /var/www/html/crs/801 + +mv /var/www/swad/asg/LCAFD/1/2/FA /var/www/swad/crs/802 +mv /var/www/html/asg/LCAFD/1/2/FA /var/www/html/crs/802 + +mv /var/www/swad/asg/LCAFD/1/1/FDI /var/www/swad/crs/803 +mv /var/www/html/asg/LCAFD/1/1/FDI /var/www/html/crs/803 + +mv /var/www/swad/asg/LCAFD/1/0/FEN /var/www/swad/crs/804 +mv /var/www/html/asg/LCAFD/1/0/FEN /var/www/html/crs/804 + +mv /var/www/swad/asg/LCAFD/1/2/FEN2 /var/www/swad/crs/805 +mv /var/www/html/asg/LCAFD/1/2/FEN2 /var/www/html/crs/805 + +mv /var/www/swad/asg/LCAFD/1/0/FHR /var/www/swad/crs/806 +mv /var/www/html/asg/LCAFD/1/0/FHR /var/www/html/crs/806 + +mv /var/www/swad/asg/LCAFD/1/1/FHDEV /var/www/swad/crs/807 +mv /var/www/html/asg/LCAFD/1/1/FHDEV /var/www/html/crs/807 + +mv /var/www/swad/asg/LCAFD/2/1/BAFAB /var/www/swad/crs/808 +mv /var/www/html/asg/LCAFD/2/1/BAFAB /var/www/html/crs/808 + +mv /var/www/swad/asg/LCAFD/2/2/FHA /var/www/swad/crs/809 +mv /var/www/html/asg/LCAFD/2/2/FHA /var/www/html/crs/809 + +mv /var/www/swad/asg/LCAFD/2/2/FHB /var/www/swad/crs/810 +mv /var/www/html/asg/LCAFD/2/2/FHB /var/www/html/crs/810 + +mv /var/www/swad/asg/LCAFD/2/2/FHC /var/www/swad/crs/811 +mv /var/www/html/asg/LCAFD/2/2/FHC /var/www/html/crs/811 + +mv /var/www/swad/asg/LCAFD/2/2/FETD /var/www/swad/crs/812 +mv /var/www/html/asg/LCAFD/2/2/FETD /var/www/html/crs/812 + +mv /var/www/swad/asg/LCAFD/2/0/FHDEBC /var/www/swad/crs/813 +mv /var/www/html/asg/LCAFD/2/0/FHDEBC /var/www/html/crs/813 + +mv /var/www/swad/asg/LCAFD/2/0/FHDEB /var/www/swad/crs/814 +mv /var/www/html/asg/LCAFD/2/0/FHDEB /var/www/html/crs/814 + +mv /var/www/swad/asg/LCAFD/2/2/FHDEF /var/www/swad/crs/815 +mv /var/www/html/asg/LCAFD/2/2/FHDEF /var/www/html/crs/815 + +mv /var/www/swad/asg/LCAFD/2/0/FHDL /var/www/swad/crs/816 +mv /var/www/html/asg/LCAFD/2/0/FHDL /var/www/html/crs/816 + +mv /var/www/swad/asg/LCAFD/2/2/JM /var/www/swad/crs/817 +mv /var/www/html/asg/LCAFD/2/2/JM /var/www/html/crs/817 + +mv /var/www/swad/asg/LCAFD/2/1/SD /var/www/swad/crs/818 +mv /var/www/html/asg/LCAFD/2/1/SD /var/www/html/crs/818 + +mv /var/www/swad/asg/LCAFD/2/0/THD /var/www/swad/crs/819 +mv /var/www/html/asg/LCAFD/2/0/THD /var/www/html/crs/819 + +mv /var/www/swad/asg/LCAFD/3/2/BCECD /var/www/swad/crs/820 +mv /var/www/html/asg/LCAFD/3/2/BCECD /var/www/html/crs/820 + +mv /var/www/swad/asg/LCAFD/3/1/BED /var/www/swad/crs/821 +mv /var/www/html/asg/LCAFD/3/1/BED /var/www/html/crs/821 + +mv /var/www/swad/asg/LCAFD/3/1/BENMAM /var/www/swad/crs/822 +mv /var/www/html/asg/LCAFD/3/1/BENMAM /var/www/html/crs/822 + +mv /var/www/swad/asg/LCAFD/3/1/EDAA /var/www/swad/crs/823 +mv /var/www/html/asg/LCAFD/3/1/EDAA /var/www/html/crs/823 + +mv /var/www/swad/asg/LCAFD/3/2/EDA /var/www/swad/crs/824 +mv /var/www/html/asg/LCAFD/3/2/EDA /var/www/html/crs/824 + +mv /var/www/swad/asg/LCAFD/3/2/EDB /var/www/swad/crs/825 +mv /var/www/html/asg/LCAFD/3/2/EDB /var/www/html/crs/825 + +mv /var/www/swad/asg/LCAFD/3/1/EDI /var/www/swad/crs/826 +mv /var/www/html/asg/LCAFD/3/1/EDI /var/www/html/crs/826 + +mv /var/www/swad/asg/LCAFD/3/0/JDDTA /var/www/swad/crs/827 +mv /var/www/html/asg/LCAFD/3/0/JDDTA /var/www/html/crs/827 + +mv /var/www/swad/asg/LCAFD/3/1/PA /var/www/swad/crs/828 +mv /var/www/html/asg/LCAFD/3/1/PA /var/www/html/crs/828 + +mv /var/www/swad/asg/LCAFD/4/0/ARDDI /var/www/swad/crs/829 +mv /var/www/html/asg/LCAFD/4/0/ARDDI /var/www/html/crs/829 + +mv /var/www/swad/asg/LCAFD/4/1/AEEFD /var/www/swad/crs/830 +mv /var/www/html/asg/LCAFD/4/1/AEEFD /var/www/html/crs/830 + +mv /var/www/swad/asg/LCAFD/4/1/BGPGD /var/www/swad/crs/831 +mv /var/www/html/asg/LCAFD/4/1/BGPGD /var/www/html/crs/831 + +mv /var/www/swad/asg/LCAFD/4/0/EAFDA /var/www/swad/crs/832 +mv /var/www/html/asg/LCAFD/4/0/EAFDA /var/www/html/crs/832 + +mv /var/www/swad/asg/LCAFD/4/0/EAFDB /var/www/swad/crs/833 +mv /var/www/html/asg/LCAFD/4/0/EAFDB /var/www/html/crs/833 + +mv /var/www/swad/asg/LCAFD/4/0/EAFDC /var/www/swad/crs/834 +mv /var/www/html/asg/LCAFD/4/0/EAFDC /var/www/html/crs/834 + +mv /var/www/swad/asg/LCAFD/4/2/E /var/www/swad/crs/835 +mv /var/www/html/asg/LCAFD/4/2/E /var/www/html/crs/835 + +mv /var/www/swad/asg/LCAFD/4/2/FEAC /var/www/swad/crs/836 +mv /var/www/html/asg/LCAFD/4/2/FEAC /var/www/html/crs/836 + +mv /var/www/swad/asg/LCAFD/4/1/FEEC /var/www/swad/crs/837 +mv /var/www/html/asg/LCAFD/4/1/FEEC /var/www/html/crs/837 + +mv /var/www/swad/asg/LCAFD/4/1/OARATL /var/www/swad/crs/838 +mv /var/www/html/asg/LCAFD/4/1/OARATL /var/www/html/crs/838 + +mv /var/www/swad/asg/LCAFD/4/2/OED /var/www/swad/crs/839 +mv /var/www/html/asg/LCAFD/4/2/OED /var/www/html/crs/839 + +mv /var/www/swad/asg/LCAFD/5/1/AFSA /var/www/swad/crs/840 +mv /var/www/html/asg/LCAFD/5/1/AFSA /var/www/html/crs/840 + +mv /var/www/swad/asg/LCAFD/5/1/AFSB /var/www/swad/crs/841 +mv /var/www/html/asg/LCAFD/5/1/AFSB /var/www/html/crs/841 + +mv /var/www/swad/asg/LCAFD/5/1/AFSC /var/www/swad/crs/842 +mv /var/www/html/asg/LCAFD/5/1/AFSC /var/www/html/crs/842 + +mv /var/www/swad/asg/LCAFD/5/2/AMN /var/www/swad/crs/843 +mv /var/www/html/asg/LCAFD/5/2/AMN /var/www/html/crs/843 + +mv /var/www/swad/asg/LCAFD/5/2/BTD /var/www/swad/crs/844 +mv /var/www/html/asg/LCAFD/5/2/BTD /var/www/html/crs/844 + +mv /var/www/swad/asg/LCAFD/5/2/BED /var/www/swad/crs/845 +mv /var/www/html/asg/LCAFD/5/2/BED /var/www/html/crs/845 + +mv /var/www/swad/asg/LCAFD/5/2/CSIPD /var/www/swad/crs/846 +mv /var/www/html/asg/LCAFD/5/2/CSIPD /var/www/html/crs/846 + +mv /var/www/swad/asg/LCAFD/5/1/EAAF /var/www/swad/crs/847 +mv /var/www/html/asg/LCAFD/5/1/EAAF /var/www/html/crs/847 + +mv /var/www/swad/asg/LCAFD/5/1/EFDAN /var/www/swad/crs/848 +mv /var/www/html/asg/LCAFD/5/1/EFDAN /var/www/html/crs/848 + +mv /var/www/swad/asg/LCAFD/5/0/PARA /var/www/swad/crs/849 +mv /var/www/html/asg/LCAFD/5/0/PARA /var/www/html/crs/849 + +mv /var/www/swad/asg/LCAFD/5/0/PE /var/www/swad/crs/850 +mv /var/www/html/asg/LCAFD/5/0/PE /var/www/html/crs/850 + +mv /var/www/swad/asg/LCAFD/5/0/PEAD /var/www/swad/crs/851 +mv /var/www/html/asg/LCAFD/5/0/PEAD /var/www/html/crs/851 + +mv /var/www/swad/asg/LCAFD/5/2/SPD /var/www/swad/crs/852 +mv /var/www/html/asg/LCAFD/5/2/SPD /var/www/html/crs/852 + +mv /var/www/swad/asg/LCA/0/1/B /var/www/swad/crs/853 +mv /var/www/html/asg/LCA/0/1/B /var/www/html/crs/853 + +mv /var/www/swad/asg/LCA/0/2/P /var/www/swad/crs/854 +mv /var/www/html/asg/LCA/0/2/P /var/www/html/crs/854 + +mv /var/www/swad/asg/LCA/0/1/RCGR /var/www/swad/crs/855 +mv /var/www/html/asg/LCA/0/1/RCGR /var/www/html/crs/855 + +mv /var/www/swad/asg/LCA/0/2/TMRRU /var/www/swad/crs/856 +mv /var/www/html/asg/LCA/0/2/TMRRU /var/www/html/crs/856 + +mv /var/www/swad/asg/LCA/1/2/BIA /var/www/swad/crs/857 +mv /var/www/html/asg/LCA/1/2/BIA /var/www/html/crs/857 + +mv /var/www/swad/asg/LCA/1/1/BQMAA /var/www/swad/crs/858 +mv /var/www/html/asg/LCA/1/1/BQMAA /var/www/html/crs/858 + +mv /var/www/swad/asg/LCA/1/1/BQMAAB /var/www/swad/crs/859 +mv /var/www/html/asg/LCA/1/1/BQMAAB /var/www/html/crs/859 + +mv /var/www/swad/asg/LCA/1/1/BQMAC /var/www/swad/crs/860 +mv /var/www/html/asg/LCA/1/1/BQMAC /var/www/html/crs/860 + +mv /var/www/swad/asg/LCA/1/1/BQMAD /var/www/swad/crs/861 +mv /var/www/html/asg/LCA/1/1/BQMAD /var/www/html/crs/861 + +mv /var/www/swad/asg/LCA/1/0/B /var/www/swad/crs/862 +mv /var/www/html/asg/LCA/1/0/B /var/www/html/crs/862 + +mv /var/www/swad/asg/LCA/1/0/MFC /var/www/swad/crs/863 +mv /var/www/html/asg/LCA/1/0/MFC /var/www/html/crs/863 + +mv /var/www/swad/asg/LCA/2/2/ALA /var/www/swad/crs/864 +mv /var/www/html/asg/LCA/2/2/ALA /var/www/html/crs/864 + +mv /var/www/swad/asg/LCA/2/2/B /var/www/swad/crs/865 +mv /var/www/html/asg/LCA/2/2/B /var/www/html/crs/865 + +mv /var/www/swad/asg/LCA/2/2/FMA /var/www/swad/crs/866 +mv /var/www/html/asg/LCA/2/2/FMA /var/www/html/crs/866 + +mv /var/www/swad/asg/LCA/2/2/QMA /var/www/swad/crs/867 +mv /var/www/html/asg/LCA/2/2/QMA /var/www/html/crs/867 + +mv /var/www/swad/asg/LCA/2/1/PTC /var/www/swad/crs/868 +mv /var/www/html/asg/LCA/2/1/PTC /var/www/html/crs/868 + +mv /var/www/swad/asg/LCA/4/1/CA /var/www/swad/crs/869 +mv /var/www/html/asg/LCA/4/1/CA /var/www/html/crs/869 + +mv /var/www/swad/asg/LCA/4/2/EMA /var/www/swad/crs/870 +mv /var/www/html/asg/LCA/4/2/EMA /var/www/html/crs/870 + +mv /var/www/swad/asg/LCA/4/0/EIA /var/www/swad/crs/871 +mv /var/www/html/asg/LCA/4/0/EIA /var/www/html/crs/871 + +mv /var/www/swad/asg/LCA/4/2/GCFF /var/www/swad/crs/872 +mv /var/www/html/asg/LCA/4/2/GCFF /var/www/html/crs/872 + +mv /var/www/swad/asg/LCA/4/0/OTMA /var/www/swad/crs/873 +mv /var/www/html/asg/LCA/4/0/OTMA /var/www/html/crs/873 + +mv /var/www/swad/asg/LCA/4/1/RMMA /var/www/swad/crs/874 +mv /var/www/html/asg/LCA/4/1/RMMA /var/www/html/crs/874 + +mv /var/www/swad/asg/LCPA/0/1/CP /var/www/swad/crs/875 +mv /var/www/html/asg/LCPA/0/1/CP /var/www/html/crs/875 + +mv /var/www/swad/asg/LCPA/0/2/PGA /var/www/swad/crs/876 +mv /var/www/html/asg/LCPA/0/2/PGA /var/www/html/crs/876 + +mv /var/www/swad/asg/LCPA/0/1/SICAP /var/www/swad/crs/877 +mv /var/www/html/asg/LCPA/0/1/SICAP /var/www/html/crs/877 + +mv /var/www/swad/asg/LCPA/1/0/EP /var/www/swad/crs/878 +mv /var/www/html/asg/LCPA/1/0/EP /var/www/html/crs/878 + +mv /var/www/swad/asg/LCPA/1/0/EPB /var/www/swad/crs/879 +mv /var/www/html/asg/LCPA/1/0/EPB /var/www/html/crs/879 + +mv /var/www/swad/asg/LCPA/1/0/FCP /var/www/swad/crs/880 +mv /var/www/html/asg/LCPA/1/0/FCP /var/www/html/crs/880 + +mv /var/www/swad/asg/LCPA/1/0/HSPC /var/www/swad/crs/881 +mv /var/www/html/asg/LCPA/1/0/HSPC /var/www/html/crs/881 + +mv /var/www/swad/asg/LCPA/1/0/SG /var/www/swad/crs/882 +mv /var/www/html/asg/LCPA/1/0/SG /var/www/html/crs/882 + +mv /var/www/swad/asg/LCPA/2/0/CAB /var/www/swad/crs/883 +mv /var/www/html/asg/LCPA/2/0/CAB /var/www/html/crs/883 + +mv /var/www/swad/asg/LCPA/2/1/RPSE /var/www/swad/crs/884 +mv /var/www/html/asg/LCPA/2/1/RPSE /var/www/html/crs/884 + +mv /var/www/swad/asg/LCPA/2/0/TEA /var/www/swad/crs/885 +mv /var/www/html/asg/LCPA/2/0/TEA /var/www/html/crs/885 + +mv /var/www/swad/asg/LCPA/2/0/TEB /var/www/swad/crs/886 +mv /var/www/html/asg/LCPA/2/0/TEB /var/www/html/crs/886 + +mv /var/www/swad/asg/LCPA/4/1/DCEA /var/www/swad/crs/887 +mv /var/www/html/asg/LCPA/4/1/DCEA /var/www/html/crs/887 + +mv /var/www/swad/asg/LCPA/4/1/PGAA /var/www/swad/crs/888 +mv /var/www/html/asg/LCPA/4/1/PGAA /var/www/html/crs/888 + +mv /var/www/swad/asg/LCPA/5/1/IDUE /var/www/swad/crs/889 +mv /var/www/html/asg/LCPA/5/1/IDUE /var/www/html/crs/889 + +mv /var/www/swad/asg/LCPA/5/1/PA /var/www/swad/crs/890 +mv /var/www/html/asg/LCPA/5/1/PA /var/www/html/crs/890 + +mv /var/www/swad/asg/LCPA/5/1/PPEA /var/www/swad/crs/891 +mv /var/www/html/asg/LCPA/5/1/PPEA /var/www/html/crs/891 + +mv /var/www/swad/asg/LCPSS/0/0/IFE /var/www/swad/crs/892 +mv /var/www/html/asg/LCPSS/0/0/IFE /var/www/html/crs/892 + +mv /var/www/swad/asg/LCPSS/5/0/PS /var/www/swad/crs/893 +mv /var/www/html/asg/LCPSS/5/0/PS /var/www/html/crs/893 + +mv /var/www/swad/asg/LCTE/1/1/ATD1 /var/www/swad/crs/894 +mv /var/www/html/asg/LCTE/1/1/ATD1 /var/www/html/crs/894 + +mv /var/www/swad/asg/LCTE/2/1/ATD2 /var/www/swad/crs/895 +mv /var/www/html/asg/LCTE/2/1/ATD2 /var/www/html/crs/895 + +mv /var/www/swad/asg/LCTE/2/2/MR /var/www/swad/crs/896 +mv /var/www/html/asg/LCTE/2/2/MR /var/www/html/crs/896 + +mv /var/www/swad/asg/LCTE/2/0/MEIO /var/www/swad/crs/897 +mv /var/www/html/asg/LCTE/2/0/MEIO /var/www/html/crs/897 + +mv /var/www/swad/asg/LCTE/2/2/TAM /var/www/swad/crs/898 +mv /var/www/html/asg/LCTE/2/2/TAM /var/www/html/crs/898 + +mv /var/www/swad/asg/LCT/0/1/DET /var/www/swad/crs/899 +mv /var/www/html/asg/LCT/0/1/DET /var/www/html/crs/899 + +mv /var/www/swad/asg/LCT/0/1/GC /var/www/swad/crs/900 +mv /var/www/html/asg/LCT/0/1/GC /var/www/html/crs/900 + +mv /var/www/swad/asg/LCT/0/0/IFE /var/www/swad/crs/901 +mv /var/www/html/asg/LCT/0/0/IFE /var/www/html/crs/901 + +mv /var/www/swad/asg/LCT/0/1/SFP /var/www/swad/crs/902 +mv /var/www/html/asg/LCT/0/1/SFP /var/www/html/crs/902 + +mv /var/www/swad/asg/LCT/1/1/CHOA /var/www/swad/crs/903 +mv /var/www/html/asg/LCT/1/1/CHOA /var/www/html/crs/903 + +mv /var/www/swad/asg/LCT/1/1/DPT /var/www/swad/crs/904 +mv /var/www/html/asg/LCT/1/1/DPT /var/www/html/crs/904 + +mv /var/www/swad/asg/LCT/1/1/EDPP1F /var/www/swad/crs/905 +mv /var/www/html/asg/LCT/1/1/EDPP1F /var/www/html/crs/905 + +mv /var/www/swad/asg/LCT/2/1/PGRH /var/www/swad/crs/906 +mv /var/www/html/asg/LCT/2/1/PGRH /var/www/html/crs/906 + +mv /var/www/swad/asg/LCAV/1/2/CPPE /var/www/swad/crs/907 +mv /var/www/html/asg/LCAV/1/2/CPPE /var/www/html/crs/907 + +mv /var/www/swad/asg/LCAV/4/1/DI /var/www/swad/crs/908 +mv /var/www/html/asg/LCAV/4/1/DI /var/www/html/crs/908 + +mv /var/www/swad/asg/LCAV/4/1/GA /var/www/swad/crs/909 +mv /var/www/html/asg/LCAV/4/1/GA /var/www/html/crs/909 + +mv /var/www/swad/asg/LCAV/4/1/TCA /var/www/swad/crs/910 +mv /var/www/html/asg/LCAV/4/1/TCA /var/www/html/crs/910 + +mv /var/www/swad/asg/LCAV/4/2/TPA /var/www/swad/crs/911 +mv /var/www/html/asg/LCAV/4/2/TPA /var/www/html/crs/911 + +mv /var/www/swad/asg/LD/0/1/AJVAF /var/www/swad/crs/912 +mv /var/www/html/asg/LD/0/1/AJVAF /var/www/html/crs/912 + +mv /var/www/swad/asg/LD/0/1/AJDCA /var/www/swad/crs/913 +mv /var/www/html/asg/LD/0/1/AJDCA /var/www/html/crs/913 + +mv /var/www/swad/asg/LD/0/2/ASASL /var/www/swad/crs/914 +mv /var/www/html/asg/LD/0/2/ASASL /var/www/html/crs/914 + +mv /var/www/swad/asg/LD/0/1/AJA /var/www/swad/crs/915 +mv /var/www/html/asg/LD/0/1/AJA /var/www/html/crs/915 + +mv /var/www/swad/asg/LD/0/1/AJMCE /var/www/swad/crs/916 +mv /var/www/html/asg/LD/0/1/AJMCE /var/www/html/crs/916 + +mv /var/www/swad/asg/LD/0/1/CMPC /var/www/swad/crs/917 +mv /var/www/html/asg/LD/0/1/CMPC /var/www/html/crs/917 + +mv /var/www/swad/asg/LD/0/1/CMPCB /var/www/swad/crs/918 +mv /var/www/html/asg/LD/0/1/CMPCB /var/www/html/crs/918 + +mv /var/www/swad/asg/LD/0/0/CFACJF /var/www/swad/crs/919 +mv /var/www/html/asg/LD/0/0/CFACJF /var/www/html/crs/919 + +mv /var/www/swad/asg/LD/0/2/DAPAJ /var/www/swad/crs/920 +mv /var/www/html/asg/LD/0/2/DAPAJ /var/www/html/crs/920 + +mv /var/www/swad/asg/LD/0/2/DSCMA /var/www/swad/crs/921 +mv /var/www/html/asg/LD/0/2/DSCMA /var/www/html/crs/921 + +mv /var/www/swad/asg/LD/0/2/DCI /var/www/swad/crs/922 +mv /var/www/html/asg/LD/0/2/DCI /var/www/html/crs/922 + +mv /var/www/swad/asg/LD/0/1/DDB /var/www/swad/crs/923 +mv /var/www/html/asg/LD/0/1/DDB /var/www/html/crs/923 + +mv /var/www/swad/asg/LD/0/2/DEPA /var/www/swad/crs/924 +mv /var/www/html/asg/LD/0/2/DEPA /var/www/html/crs/924 + +mv /var/www/swad/asg/LD/0/2/DEPB /var/www/swad/crs/925 +mv /var/www/html/asg/LD/0/2/DEPB /var/www/html/crs/925 + +mv /var/www/swad/asg/LD/0/2/DMC /var/www/swad/crs/926 +mv /var/www/html/asg/LD/0/2/DMC /var/www/html/crs/926 + +mv /var/www/swad/asg/LD/0/2/DMSB /var/www/swad/crs/927 +mv /var/www/html/asg/LD/0/2/DMSB /var/www/html/crs/927 + +mv /var/www/swad/asg/LD/0/2/DPUE /var/www/swad/crs/928 +mv /var/www/html/asg/LD/0/2/DPUE /var/www/html/crs/928 + +mv /var/www/swad/asg/LD/0/2/DPNJ /var/www/swad/crs/929 +mv /var/www/html/asg/LD/0/2/DPNJ /var/www/html/crs/929 + +mv /var/www/swad/asg/LD/0/1/DPSI /var/www/swad/crs/930 +mv /var/www/html/asg/LD/0/1/DPSI /var/www/html/crs/930 + +mv /var/www/swad/asg/LD/0/0/EP /var/www/swad/crs/931 +mv /var/www/html/asg/LD/0/0/EP /var/www/html/crs/931 + +mv /var/www/swad/asg/LD/0/1/ERC /var/www/swad/crs/932 +mv /var/www/html/asg/LD/0/1/ERC /var/www/html/crs/932 + +mv /var/www/swad/asg/LD/0/1/JPI /var/www/swad/crs/933 +mv /var/www/html/asg/LD/0/1/JPI /var/www/html/crs/933 + +mv /var/www/swad/asg/LD/0/1/FI /var/www/swad/crs/934 +mv /var/www/html/asg/LD/0/1/FI /var/www/html/crs/934 + +mv /var/www/swad/asg/LD/0/1/OCDEC /var/www/swad/crs/935 +mv /var/www/html/asg/LD/0/1/OCDEC /var/www/html/crs/935 + +mv /var/www/swad/asg/LD/0/1/MRDE /var/www/swad/crs/936 +mv /var/www/html/asg/LD/0/1/MRDE /var/www/html/crs/936 + +mv /var/www/swad/asg/LD/0/1/NE /var/www/swad/crs/937 +mv /var/www/html/asg/LD/0/1/NE /var/www/html/crs/937 + +mv /var/www/swad/asg/LD/0/2/RJFCE /var/www/swad/crs/938 +mv /var/www/html/asg/LD/0/2/RJFCE /var/www/html/crs/938 + +mv /var/www/swad/asg/LD/0/1/SFR /var/www/swad/crs/939 +mv /var/www/html/asg/LD/0/1/SFR /var/www/html/crs/939 + +mv /var/www/swad/asg/LD/0/0/STL /var/www/swad/crs/940 +mv /var/www/html/asg/LD/0/0/STL /var/www/html/crs/940 + +mv /var/www/swad/asg/LD/0/2/TEEJP /var/www/swad/crs/941 +mv /var/www/html/asg/LD/0/2/TEEJP /var/www/html/crs/941 + +mv /var/www/swad/asg/LD/1/2/DC1AB /var/www/swad/crs/942 +mv /var/www/html/asg/LD/1/2/DC1AB /var/www/html/crs/942 + +mv /var/www/swad/asg/LD/1/2/DC1D /var/www/swad/crs/943 +mv /var/www/html/asg/LD/1/2/DC1D /var/www/html/crs/943 + +mv /var/www/swad/asg/LD/1/0/DCO1C /var/www/swad/crs/944 +mv /var/www/html/asg/LD/1/0/DCO1C /var/www/html/crs/944 + +mv /var/www/swad/asg/LD/1/0/DCO1D /var/www/swad/crs/945 +mv /var/www/html/asg/LD/1/0/DCO1D /var/www/html/crs/945 + +mv /var/www/swad/asg/LD/1/0/DCO1G /var/www/swad/crs/946 +mv /var/www/html/asg/LD/1/0/DCO1G /var/www/html/crs/946 + +mv /var/www/swad/asg/LD/1/2/IDPC /var/www/swad/crs/947 +mv /var/www/html/asg/LD/1/2/IDPC /var/www/html/crs/947 + +mv /var/www/swad/asg/LD/1/2/IDPD /var/www/swad/crs/948 +mv /var/www/html/asg/LD/1/2/IDPD /var/www/html/crs/948 + +mv /var/www/swad/asg/LD/1/2/IDPE /var/www/swad/crs/949 +mv /var/www/html/asg/LD/1/2/IDPE /var/www/html/crs/949 + +mv /var/www/swad/asg/LD/1/2/IDPG /var/www/swad/crs/950 +mv /var/www/html/asg/LD/1/2/IDPG /var/www/html/crs/950 + +mv /var/www/swad/asg/LD/1/2/SFA /var/www/swad/crs/951 +mv /var/www/html/asg/LD/1/2/SFA /var/www/html/crs/951 + +mv /var/www/swad/asg/LD/1/2/SFB /var/www/swad/crs/952 +mv /var/www/html/asg/LD/1/2/SFB /var/www/html/crs/952 + +mv /var/www/swad/asg/LD/1/1/TDA /var/www/swad/crs/953 +mv /var/www/html/asg/LD/1/1/TDA /var/www/html/crs/953 + +mv /var/www/swad/asg/LD/1/1/TDS /var/www/swad/crs/954 +mv /var/www/html/asg/LD/1/1/TDS /var/www/html/crs/954 + +mv /var/www/swad/asg/LD/2/0/DC2A /var/www/swad/crs/955 +mv /var/www/html/asg/LD/2/0/DC2A /var/www/html/crs/955 + +mv /var/www/swad/asg/LD/2/0/DC2BC /var/www/swad/crs/956 +mv /var/www/html/asg/LD/2/0/DC2BC /var/www/html/crs/956 + +mv /var/www/swad/asg/LD/2/0/DC2C /var/www/swad/crs/957 +mv /var/www/html/asg/LD/2/0/DC2C /var/www/html/crs/957 + +mv /var/www/swad/asg/LD/2/0/DC2CF /var/www/swad/crs/958 +mv /var/www/html/asg/LD/2/0/DC2CF /var/www/html/crs/958 + +mv /var/www/swad/asg/LD/2/0/DC2D /var/www/swad/crs/959 +mv /var/www/html/asg/LD/2/0/DC2D /var/www/html/crs/959 + +mv /var/www/swad/asg/LD/2/1/DCO2A /var/www/swad/crs/960 +mv /var/www/html/asg/LD/2/1/DCO2A /var/www/html/crs/960 + +mv /var/www/swad/asg/LD/2/2/DEPB /var/www/swad/crs/961 +mv /var/www/html/asg/LD/2/2/DEPB /var/www/html/crs/961 + +mv /var/www/swad/asg/LD/2/0/EPHPD /var/www/swad/crs/962 +mv /var/www/html/asg/LD/2/0/EPHPD /var/www/html/crs/962 + +mv /var/www/swad/asg/LD/2/0/EPHPEF /var/www/swad/crs/963 +mv /var/www/html/asg/LD/2/0/EPHPEF /var/www/html/crs/963 + +mv /var/www/swad/asg/LD/2/2/SGDL /var/www/swad/crs/964 +mv /var/www/html/asg/LD/2/2/SGDL /var/www/html/crs/964 + +mv /var/www/swad/asg/LD/3/2/DC3A /var/www/swad/crs/965 +mv /var/www/html/asg/LD/3/2/DC3A /var/www/html/crs/965 + +mv /var/www/swad/asg/LD/3/2/DC3BC /var/www/swad/crs/966 +mv /var/www/html/asg/LD/3/2/DC3BC /var/www/html/crs/966 + +mv /var/www/swad/asg/LD/3/2/DC3C /var/www/swad/crs/967 +mv /var/www/html/asg/LD/3/2/DC3C /var/www/html/crs/967 + +mv /var/www/swad/asg/LD/3/2/DC3E /var/www/swad/crs/968 +mv /var/www/html/asg/LD/3/2/DC3E /var/www/html/crs/968 + +mv /var/www/swad/asg/LD/3/2/DC3F /var/www/swad/crs/969 +mv /var/www/html/asg/LD/3/2/DC3F /var/www/html/crs/969 + +mv /var/www/swad/asg/LD/3/2/DGIUB /var/www/swad/crs/970 +mv /var/www/html/asg/LD/3/2/DGIUB /var/www/html/crs/970 + +mv /var/www/swad/asg/LD/3/2/IDCA /var/www/swad/crs/971 +mv /var/www/html/asg/LD/3/2/IDCA /var/www/html/crs/971 + +mv /var/www/swad/asg/LD/4/0/DADG /var/www/swad/crs/972 +mv /var/www/html/asg/LD/4/0/DADG /var/www/html/crs/972 + +mv /var/www/swad/asg/LD/4/0/DC4BD /var/www/swad/crs/973 +mv /var/www/html/asg/LD/4/0/DC4BD /var/www/html/crs/973 + +mv /var/www/swad/asg/LD/4/0/DC4C /var/www/swad/crs/974 +mv /var/www/html/asg/LD/4/0/DC4C /var/www/html/crs/974 + +mv /var/www/swad/asg/LD/4/0/DC4D /var/www/swad/crs/975 +mv /var/www/html/asg/LD/4/0/DC4D /var/www/html/crs/975 + +mv /var/www/swad/asg/LD/4/0/DFT1A /var/www/swad/crs/976 +mv /var/www/html/asg/LD/4/0/DFT1A /var/www/html/crs/976 + +mv /var/www/swad/asg/LD/4/0/DFT1B /var/www/swad/crs/977 +mv /var/www/html/asg/LD/4/0/DFT1B /var/www/html/crs/977 + +mv /var/www/swad/asg/LD/4/0/DFT1DF /var/www/swad/crs/978 +mv /var/www/html/asg/LD/4/0/DFT1DF /var/www/html/crs/978 + +mv /var/www/swad/asg/LD/4/0/DFT1G /var/www/swad/crs/979 +mv /var/www/html/asg/LD/4/0/DFT1G /var/www/html/crs/979 + +mv /var/www/swad/asg/LD/4/0/DM1 /var/www/swad/crs/980 +mv /var/www/html/asg/LD/4/0/DM1 /var/www/html/crs/980 + +mv /var/www/swad/asg/LD/4/0/DM1D /var/www/swad/crs/981 +mv /var/www/html/asg/LD/4/0/DM1D /var/www/html/crs/981 + +mv /var/www/swad/asg/LD/4/0/DM1E /var/www/swad/crs/982 +mv /var/www/html/asg/LD/4/0/DM1E /var/www/html/crs/982 + +mv /var/www/swad/asg/LD/4/0/HTA /var/www/swad/crs/983 +mv /var/www/html/asg/LD/4/0/HTA /var/www/html/crs/983 + +mv /var/www/swad/asg/LD/4/0/HTB /var/www/swad/crs/984 +mv /var/www/html/asg/LD/4/0/HTB /var/www/html/crs/984 + +mv /var/www/swad/asg/LD/5/1/DEEA /var/www/swad/crs/985 +mv /var/www/html/asg/LD/5/1/DEEA /var/www/html/crs/985 + +mv /var/www/swad/asg/LD/5/1/DEEB /var/www/swad/crs/986 +mv /var/www/html/asg/LD/5/1/DEEB /var/www/html/crs/986 + +mv /var/www/swad/asg/LD/5/1/DEEC /var/www/swad/crs/987 +mv /var/www/html/asg/LD/5/1/DEEC /var/www/html/crs/987 + +mv /var/www/swad/asg/LD/5/1/DEED /var/www/swad/crs/988 +mv /var/www/html/asg/LD/5/1/DEED /var/www/html/crs/988 + +mv /var/www/swad/asg/LD/5/0/DFT2C /var/www/swad/crs/989 +mv /var/www/html/asg/LD/5/0/DFT2C /var/www/html/crs/989 + +mv /var/www/swad/asg/LD/5/0/DFT2D /var/www/swad/crs/990 +mv /var/www/html/asg/LD/5/0/DFT2D /var/www/html/crs/990 + +mv /var/www/swad/asg/LD/5/0/DFT2B /var/www/swad/crs/991 +mv /var/www/html/asg/LD/5/0/DFT2B /var/www/html/crs/991 + +mv /var/www/swad/asg/LD/5/0/DIPA /var/www/swad/crs/992 +mv /var/www/html/asg/LD/5/0/DIPA /var/www/html/crs/992 + +mv /var/www/swad/asg/LD/5/0/DIP /var/www/swad/crs/993 +mv /var/www/html/asg/LD/5/0/DIP /var/www/html/crs/993 + +mv /var/www/swad/asg/LD/5/0/DIPC /var/www/swad/crs/994 +mv /var/www/html/asg/LD/5/0/DIPC /var/www/html/crs/994 + +mv /var/www/swad/asg/LD/5/0/DIPEF /var/www/swad/crs/995 +mv /var/www/html/asg/LD/5/0/DIPEF /var/www/html/crs/995 + +mv /var/www/swad/asg/LD/5/1/DM2A /var/www/swad/crs/996 +mv /var/www/html/asg/LD/5/1/DM2A /var/www/html/crs/996 + +mv /var/www/swad/asg/LD/5/1/DM2C /var/www/swad/crs/997 +mv /var/www/html/asg/LD/5/1/DM2C /var/www/html/crs/997 + +mv /var/www/swad/asg/LD/5/1/DM2E /var/www/swad/crs/998 +mv /var/www/html/asg/LD/5/1/DM2E /var/www/html/crs/998 + +mv /var/www/swad/asg/LD/5/1/FDA /var/www/swad/crs/999 +mv /var/www/html/asg/LD/5/1/FDA /var/www/html/crs/999 + +mv /var/www/swad/asg/LD/5/1/FDC /var/www/swad/crs/1000 +mv /var/www/html/asg/LD/5/1/FDC /var/www/html/crs/1000 + +mv /var/www/swad/asg/LD/5/1/FDD /var/www/swad/crs/1001 +mv /var/www/html/asg/LD/5/1/FDD /var/www/html/crs/1001 + +mv /var/www/swad/asg/LD/5/1/FDDE /var/www/swad/crs/1002 +mv /var/www/html/asg/LD/5/1/FDDE /var/www/html/crs/1002 + +mv /var/www/swad/asg/LD/5/2/P /var/www/swad/crs/1003 +mv /var/www/html/asg/LD/5/2/P /var/www/html/crs/1003 + +mv /var/www/swad/asg/LD/5/2/PA /var/www/swad/crs/1004 +mv /var/www/html/asg/LD/5/2/PA /var/www/html/crs/1004 + +mv /var/www/swad/asg/LDCPA/3/0/EP /var/www/swad/crs/1005 +mv /var/www/html/asg/LDCPA/3/0/EP /var/www/html/crs/1005 + +mv /var/www/swad/asg/LDCPA/4/0/DF1 /var/www/swad/crs/1006 +mv /var/www/html/asg/LDCPA/4/0/DF1 /var/www/html/crs/1006 + +mv /var/www/swad/asg/LDCPA/5/1/PC /var/www/swad/crs/1007 +mv /var/www/html/asg/LDCPA/5/1/PC /var/www/html/crs/1007 + +mv /var/www/swad/asg/LDCPA/5/1/PP /var/www/swad/crs/1008 +mv /var/www/html/asg/LDCPA/5/1/PP /var/www/html/crs/1008 + +mv /var/www/swad/asg/LDOC/0/2/LNCT /var/www/swad/crs/1009 +mv /var/www/html/asg/LDOC/0/2/LNCT /var/www/html/crs/1009 + +mv /var/www/swad/asg/LDOC/1/0/ARUI /var/www/swad/crs/1010 +mv /var/www/html/asg/LDOC/1/0/ARUI /var/www/html/crs/1010 + +mv /var/www/swad/asg/LDOC/1/1/E /var/www/swad/crs/1011 +mv /var/www/html/asg/LDOC/1/1/E /var/www/html/crs/1011 + +mv /var/www/swad/asg/LDOC/1/1/EB /var/www/swad/crs/1012 +mv /var/www/html/asg/LDOC/1/1/EB /var/www/html/crs/1012 + +mv /var/www/swad/asg/LDOC/1/1/EBC /var/www/swad/crs/1013 +mv /var/www/html/asg/LDOC/1/1/EBC /var/www/html/crs/1013 + +mv /var/www/swad/asg/LDOC/1/1/SI /var/www/swad/crs/1014 +mv /var/www/html/asg/LDOC/1/1/SI /var/www/html/crs/1014 + +mv /var/www/swad/asg/LE/0/2/CF /var/www/swad/crs/1015 +mv /var/www/html/asg/LE/0/2/CF /var/www/html/crs/1015 + +mv /var/www/swad/asg/LE/0/2/CE /var/www/swad/crs/1016 +mv /var/www/html/asg/LE/0/2/CE /var/www/html/crs/1016 + +mv /var/www/swad/asg/LE/0/2/DAE /var/www/swad/crs/1017 +mv /var/www/html/asg/LE/0/2/DAE /var/www/html/crs/1017 + +mv /var/www/swad/asg/LE/0/2/EUE /var/www/swad/crs/1018 +mv /var/www/html/asg/LE/0/2/EUE /var/www/html/crs/1018 + +mv /var/www/swad/asg/LE/0/1/EMARN /var/www/swad/crs/1019 +mv /var/www/html/asg/LE/0/1/EMARN /var/www/html/crs/1019 + +mv /var/www/swad/asg/LE/0/1/ET /var/www/swad/crs/1020 +mv /var/www/html/asg/LE/0/1/ET /var/www/html/crs/1020 + +mv /var/www/swad/asg/LE/0/1/EGP /var/www/swad/crs/1021 +mv /var/www/html/asg/LE/0/1/EGP /var/www/html/crs/1021 + +mv /var/www/swad/asg/LE/0/2/EIND /var/www/swad/crs/1022 +mv /var/www/html/asg/LE/0/2/EIND /var/www/html/crs/1022 + +mv /var/www/swad/asg/LE/0/2/EINT /var/www/swad/crs/1023 +mv /var/www/html/asg/LE/0/2/EINT /var/www/html/crs/1023 + +mv /var/www/swad/asg/LE/0/2/EU /var/www/swad/crs/1024 +mv /var/www/html/asg/LE/0/2/EU /var/www/html/crs/1024 + +mv /var/www/swad/asg/LE/0/1/EPR /var/www/swad/crs/1025 +mv /var/www/html/asg/LE/0/1/EPR /var/www/html/crs/1025 + +mv /var/www/swad/asg/LE/0/1/GEMI /var/www/swad/crs/1026 +mv /var/www/html/asg/LE/0/1/GEMI /var/www/html/crs/1026 + +mv /var/www/swad/asg/LE/0/1/IC /var/www/swad/crs/1027 +mv /var/www/html/asg/LE/0/1/IC /var/www/html/crs/1027 + +mv /var/www/swad/asg/LE/0/1/ITDE /var/www/swad/crs/1028 +mv /var/www/html/asg/LE/0/1/ITDE /var/www/html/crs/1028 + +mv /var/www/swad/asg/LE/0/2/IEI /var/www/swad/crs/1029 +mv /var/www/html/asg/LE/0/2/IEI /var/www/html/crs/1029 + +mv /var/www/swad/asg/LE/0/1/MARKI /var/www/swad/crs/1030 +mv /var/www/html/asg/LE/0/1/MARKI /var/www/html/crs/1030 + +mv /var/www/swad/asg/LE/0/2/MARKA /var/www/swad/crs/1031 +mv /var/www/html/asg/LE/0/2/MARKA /var/www/html/crs/1031 + +mv /var/www/swad/asg/LE/0/1/PEE /var/www/swad/crs/1032 +mv /var/www/html/asg/LE/0/1/PEE /var/www/html/crs/1032 + +mv /var/www/swad/asg/LE/0/2/OM /var/www/swad/crs/1033 +mv /var/www/html/asg/LE/0/2/OM /var/www/html/crs/1033 + +mv /var/www/swad/asg/LE/0/2/PEE /var/www/swad/crs/1034 +mv /var/www/html/asg/LE/0/2/PEE /var/www/html/crs/1034 + +mv /var/www/swad/asg/LE/0/1/SD /var/www/swad/crs/1035 +mv /var/www/html/asg/LE/0/1/SD /var/www/html/crs/1035 + +mv /var/www/swad/asg/LE/0/2/SOC /var/www/swad/crs/1036 +mv /var/www/html/asg/LE/0/2/SOC /var/www/html/crs/1036 + +mv /var/www/swad/asg/LE/0/2/THE1 /var/www/swad/crs/1037 +mv /var/www/html/asg/LE/0/2/THE1 /var/www/html/crs/1037 + +mv /var/www/swad/asg/LE/0/1/THE2 /var/www/swad/crs/1038 +mv /var/www/html/asg/LE/0/1/THE2 /var/www/html/crs/1038 + +mv /var/www/swad/asg/LE/1/1/C1 /var/www/swad/crs/1039 +mv /var/www/html/asg/LE/1/1/C1 /var/www/html/crs/1039 + +mv /var/www/swad/asg/LE/1/2/C2 /var/www/swad/crs/1040 +mv /var/www/html/asg/LE/1/2/C2 /var/www/html/crs/1040 + +mv /var/www/swad/asg/LE/1/2/DCB /var/www/swad/crs/1041 +mv /var/www/html/asg/LE/1/2/DCB /var/www/html/crs/1041 + +mv /var/www/swad/asg/LE/1/0/ECONL /var/www/swad/crs/1042 +mv /var/www/html/asg/LE/1/0/ECONL /var/www/html/crs/1042 + +mv /var/www/swad/asg/LE/1/0/ECONLE /var/www/swad/crs/1043 +mv /var/www/html/asg/LE/1/0/ECONLE /var/www/html/crs/1043 + +mv /var/www/swad/asg/LE/1/1/HE1 /var/www/swad/crs/1044 +mv /var/www/html/asg/LE/1/1/HE1 /var/www/html/crs/1044 + +mv /var/www/swad/asg/LE/1/2/HE2A /var/www/swad/crs/1045 +mv /var/www/html/asg/LE/1/2/HE2A /var/www/html/crs/1045 + +mv /var/www/swad/asg/LE/1/2/HE2B /var/www/swad/crs/1046 +mv /var/www/html/asg/LE/1/2/HE2B /var/www/html/crs/1046 + +mv /var/www/swad/asg/LE/1/2/HE2C /var/www/swad/crs/1047 +mv /var/www/html/asg/LE/1/2/HE2C /var/www/html/crs/1047 + +mv /var/www/swad/asg/LE/1/2/HE2D /var/www/swad/crs/1048 +mv /var/www/html/asg/LE/1/2/HE2D /var/www/html/crs/1048 + +mv /var/www/swad/asg/LE/1/2/IDDCEA /var/www/swad/crs/1049 +mv /var/www/html/asg/LE/1/2/IDDCEA /var/www/html/crs/1049 + +mv /var/www/swad/asg/LE/1/2/IDABD /var/www/swad/crs/1050 +mv /var/www/html/asg/LE/1/2/IDABD /var/www/html/crs/1050 + +mv /var/www/swad/asg/LE/1/2/IDC /var/www/swad/crs/1051 +mv /var/www/html/asg/LE/1/2/IDC /var/www/html/crs/1051 + +mv /var/www/swad/asg/LE/1/1/IE /var/www/swad/crs/1052 +mv /var/www/html/asg/LE/1/1/IE /var/www/html/crs/1052 + +mv /var/www/swad/asg/LE/1/2/IEA /var/www/swad/crs/1053 +mv /var/www/html/asg/LE/1/2/IEA /var/www/html/crs/1053 + +mv /var/www/swad/asg/LE/1/1/M1 /var/www/swad/crs/1054 +mv /var/www/html/asg/LE/1/1/M1 /var/www/html/crs/1054 + +mv /var/www/swad/asg/LE/1/2/M2 /var/www/swad/crs/1055 +mv /var/www/html/asg/LE/1/2/M2 /var/www/html/crs/1055 + +mv /var/www/swad/asg/LE/1/2/MI1 /var/www/swad/crs/1056 +mv /var/www/html/asg/LE/1/2/MI1 /var/www/html/crs/1056 + +mv /var/www/swad/asg/LE/1/2/MI1A /var/www/swad/crs/1057 +mv /var/www/html/asg/LE/1/2/MI1A /var/www/html/crs/1057 + +mv /var/www/swad/asg/LE/1/1/TC1 /var/www/swad/crs/1058 +mv /var/www/html/asg/LE/1/1/TC1 /var/www/html/crs/1058 + +mv /var/www/swad/asg/LE/1/2/TC2 /var/www/swad/crs/1059 +mv /var/www/html/asg/LE/1/2/TC2 /var/www/html/crs/1059 + +mv /var/www/swad/asg/LE/2/2/ATC /var/www/swad/crs/1060 +mv /var/www/html/asg/LE/2/2/ATC /var/www/html/crs/1060 + +mv /var/www/swad/asg/LE/2/1/C3C /var/www/swad/crs/1061 +mv /var/www/html/asg/LE/2/1/C3C /var/www/html/crs/1061 + +mv /var/www/swad/asg/LE/2/1/DM /var/www/swad/crs/1062 +mv /var/www/html/asg/LE/2/1/DM /var/www/html/crs/1062 + +mv /var/www/swad/asg/LE/2/2/EE /var/www/swad/crs/1063 +mv /var/www/html/asg/LE/2/2/EE /var/www/html/crs/1063 + +mv /var/www/swad/asg/LE/2/1/EM /var/www/swad/crs/1064 +mv /var/www/html/asg/LE/2/1/EM /var/www/html/crs/1064 + +mv /var/www/swad/asg/LE/2/2/HE3A /var/www/swad/crs/1065 +mv /var/www/html/asg/LE/2/2/HE3A /var/www/html/crs/1065 + +mv /var/www/swad/asg/LE/2/1/MA1 /var/www/swad/crs/1066 +mv /var/www/html/asg/LE/2/1/MA1 /var/www/html/crs/1066 + +mv /var/www/swad/asg/LE/2/2/MA2 /var/www/swad/crs/1067 +mv /var/www/html/asg/LE/2/2/MA2 /var/www/html/crs/1067 + +mv /var/www/swad/asg/LE/2/1/MI2 /var/www/swad/crs/1068 +mv /var/www/html/asg/LE/2/1/MI2 /var/www/html/crs/1068 + +mv /var/www/swad/asg/LE/2/1/M3 /var/www/swad/crs/1069 +mv /var/www/html/asg/LE/2/1/M3 /var/www/html/crs/1069 + +mv /var/www/swad/asg/LE/3/1/ECO1 /var/www/swad/crs/1070 +mv /var/www/html/asg/LE/3/1/ECO1 /var/www/html/crs/1070 + +mv /var/www/swad/asg/LE/3/2/ECO2 /var/www/swad/crs/1071 +mv /var/www/html/asg/LE/3/2/ECO2 /var/www/html/crs/1071 + +mv /var/www/swad/asg/LE/3/2/EE /var/www/swad/crs/1072 +mv /var/www/html/asg/LE/3/2/EE /var/www/html/crs/1072 + +mv /var/www/swad/asg/LE/3/1/ESP1 /var/www/swad/crs/1073 +mv /var/www/html/asg/LE/3/1/ESP1 /var/www/html/crs/1073 + +mv /var/www/swad/asg/LE/3/2/ESP2 /var/www/swad/crs/1074 +mv /var/www/html/asg/LE/3/2/ESP2 /var/www/html/crs/1074 + +mv /var/www/swad/asg/LE/3/1/MA3 /var/www/swad/crs/1075 +mv /var/www/html/asg/LE/3/1/MA3 /var/www/html/crs/1075 + +mv /var/www/swad/asg/LE/3/2/MA4 /var/www/swad/crs/1076 +mv /var/www/html/asg/LE/3/2/MA4 /var/www/html/crs/1076 + +mv /var/www/swad/asg/LE/3/1/MARK /var/www/swad/crs/1077 +mv /var/www/html/asg/LE/3/1/MARK /var/www/html/crs/1077 + +mv /var/www/swad/asg/LE/3/2/OEI /var/www/swad/crs/1078 +mv /var/www/html/asg/LE/3/2/OEI /var/www/html/crs/1078 + +mv /var/www/swad/asg/LE/3/1/PE /var/www/swad/crs/1079 +mv /var/www/html/asg/LE/3/1/PE /var/www/html/crs/1079 + +mv /var/www/swad/asg/LE/4/1/EP /var/www/swad/crs/1080 +mv /var/www/html/asg/LE/4/1/EP /var/www/html/crs/1080 + +mv /var/www/swad/asg/LE/4/2/HIAE /var/www/swad/crs/1081 +mv /var/www/html/asg/LE/4/2/HIAE /var/www/html/crs/1081 + +mv /var/www/swad/asg/LE/4/1/MI3AB /var/www/swad/crs/1082 +mv /var/www/html/asg/LE/4/1/MI3AB /var/www/html/crs/1082 + +mv /var/www/swad/asg/LF/0/1/ACF /var/www/swad/crs/1083 +mv /var/www/html/asg/LF/0/1/ACF /var/www/html/crs/1083 + +mv /var/www/swad/asg/LF/0/0/BH /var/www/swad/crs/1084 +mv /var/www/html/asg/LF/0/0/BH /var/www/html/crs/1084 + +mv /var/www/swad/asg/LF/0/1/BA /var/www/swad/crs/1085 +mv /var/www/html/asg/LF/0/1/BA /var/www/html/crs/1085 + +mv /var/www/swad/asg/LF/0/0/DBF /var/www/swad/crs/1086 +mv /var/www/html/asg/LF/0/0/DBF /var/www/html/crs/1086 + +mv /var/www/swad/asg/LF/0/1/FCS1 /var/www/swad/crs/1087 +mv /var/www/html/asg/LF/0/1/FCS1 /var/www/html/crs/1087 + +mv /var/www/swad/asg/LF/0/1/FCS2 /var/www/swad/crs/1088 +mv /var/www/html/asg/LF/0/1/FCS2 /var/www/html/crs/1088 + +mv /var/www/swad/asg/LF/0/1/IGADM /var/www/swad/crs/1089 +mv /var/www/html/asg/LF/0/1/IGADM /var/www/html/crs/1089 + +mv /var/www/swad/asg/LF/0/2/I1ACE /var/www/swad/crs/1090 +mv /var/www/html/asg/LF/0/2/I1ACE /var/www/html/crs/1090 + +mv /var/www/swad/asg/LF/0/1/I2AC /var/www/swad/crs/1091 +mv /var/www/html/asg/LF/0/1/I2AC /var/www/html/crs/1091 + +mv /var/www/swad/asg/LF/0/1/IB /var/www/swad/crs/1092 +mv /var/www/html/asg/LF/0/1/IB /var/www/html/crs/1092 + +mv /var/www/swad/asg/LF/0/2/PFMCF /var/www/swad/crs/1093 +mv /var/www/html/asg/LF/0/2/PFMCF /var/www/html/crs/1093 + +mv /var/www/swad/asg/LF/0/1/PFUE /var/www/swad/crs/1094 +mv /var/www/html/asg/LF/0/1/PFUE /var/www/html/crs/1094 + +mv /var/www/swad/asg/LF/0/1/RAAC /var/www/swad/crs/1095 +mv /var/www/html/asg/LF/0/1/RAAC /var/www/html/crs/1095 + +mv /var/www/swad/asg/LF/1/0/BQE /var/www/swad/crs/1096 +mv /var/www/html/asg/LF/1/0/BQE /var/www/html/crs/1096 + +mv /var/www/swad/asg/LF/1/0/BQD /var/www/swad/crs/1097 +mv /var/www/html/asg/LF/1/0/BQD /var/www/html/crs/1097 + +mv /var/www/swad/asg/LF/1/0/BQB /var/www/swad/crs/1098 +mv /var/www/html/asg/LF/1/0/BQB /var/www/html/crs/1098 + +mv /var/www/swad/asg/LF/1/0/BQA /var/www/swad/crs/1099 +mv /var/www/html/asg/LF/1/0/BQA /var/www/html/crs/1099 + +mv /var/www/swad/asg/LF/1/0/BQF /var/www/swad/crs/1100 +mv /var/www/html/asg/LF/1/0/BQF /var/www/html/crs/1100 + +mv /var/www/swad/asg/LF/1/0/BQC /var/www/swad/crs/1101 +mv /var/www/html/asg/LF/1/0/BQC /var/www/html/crs/1101 + +mv /var/www/swad/asg/LF/1/0/BQT /var/www/swad/crs/1102 +mv /var/www/html/asg/LF/1/0/BQT /var/www/html/crs/1102 + +mv /var/www/swad/asg/LF/1/2/BFAB /var/www/swad/crs/1103 +mv /var/www/html/asg/LF/1/2/BFAB /var/www/html/crs/1103 + +mv /var/www/swad/asg/LF/1/2/BFD /var/www/swad/crs/1104 +mv /var/www/html/asg/LF/1/2/BFD /var/www/html/crs/1104 + +mv /var/www/swad/asg/LF/1/2/BFC /var/www/swad/crs/1105 +mv /var/www/html/asg/LF/1/2/BFC /var/www/html/crs/1105 + +mv /var/www/swad/asg/LF/1/2/BFF /var/www/swad/crs/1106 +mv /var/www/html/asg/LF/1/2/BFF /var/www/html/crs/1106 + +mv /var/www/swad/asg/LF/1/0/FAFA /var/www/swad/crs/1107 +mv /var/www/html/asg/LF/1/0/FAFA /var/www/html/crs/1107 + +mv /var/www/swad/asg/LF/1/0/FAFCF /var/www/swad/crs/1108 +mv /var/www/html/asg/LF/1/0/FAFCF /var/www/html/crs/1108 + +mv /var/www/swad/asg/LF/1/0/FAFE /var/www/swad/crs/1109 +mv /var/www/html/asg/LF/1/0/FAFE /var/www/html/crs/1109 + +mv /var/www/swad/asg/LF/1/1/GAFB /var/www/swad/crs/1110 +mv /var/www/html/asg/LF/1/1/GAFB /var/www/html/crs/1110 + +mv /var/www/swad/asg/LF/1/1/GAFD /var/www/swad/crs/1111 +mv /var/www/html/asg/LF/1/1/GAFD /var/www/html/crs/1111 + +mv /var/www/swad/asg/LF/1/2/HFD /var/www/swad/crs/1112 +mv /var/www/html/asg/LF/1/2/HFD /var/www/html/crs/1112 + +mv /var/www/swad/asg/LF/1/0/MAB /var/www/swad/crs/1113 +mv /var/www/html/asg/LF/1/0/MAB /var/www/html/crs/1113 + +mv /var/www/swad/asg/LF/1/0/MAAC /var/www/swad/crs/1114 +mv /var/www/html/asg/LF/1/0/MAAC /var/www/html/crs/1114 + +mv /var/www/swad/asg/LF/1/0/MAC /var/www/swad/crs/1115 +mv /var/www/html/asg/LF/1/0/MAC /var/www/html/crs/1115 + +mv /var/www/swad/asg/LF/1/0/MAF /var/www/swad/crs/1116 +mv /var/www/html/asg/LF/1/0/MAF /var/www/html/crs/1116 + +mv /var/www/swad/asg/LF/1/0/MAE /var/www/swad/crs/1117 +mv /var/www/html/asg/LF/1/0/MAE /var/www/html/crs/1117 + +mv /var/www/swad/asg/LF/1/0/PMAAA /var/www/swad/crs/1118 +mv /var/www/html/asg/LF/1/0/PMAAA /var/www/html/crs/1118 + +mv /var/www/swad/asg/LF/1/0/QIB /var/www/swad/crs/1119 +mv /var/www/html/asg/LF/1/0/QIB /var/www/html/crs/1119 + +mv /var/www/swad/asg/LF/1/0/QIA /var/www/swad/crs/1120 +mv /var/www/html/asg/LF/1/0/QIA /var/www/html/crs/1120 + +mv /var/www/swad/asg/LF/1/0/QIC /var/www/swad/crs/1121 +mv /var/www/html/asg/LF/1/0/QIC /var/www/html/crs/1121 + +mv /var/www/swad/asg/LF/1/0/QID /var/www/swad/crs/1122 +mv /var/www/html/asg/LF/1/0/QID /var/www/html/crs/1122 + +mv /var/www/swad/asg/LF/1/0/QIE /var/www/swad/crs/1123 +mv /var/www/html/asg/LF/1/0/QIE /var/www/html/crs/1123 + +mv /var/www/swad/asg/LF/1/0/QIF /var/www/swad/crs/1124 +mv /var/www/html/asg/LF/1/0/QIF /var/www/html/crs/1124 + +mv /var/www/swad/asg/LF/2/2/AQBD /var/www/swad/crs/1125 +mv /var/www/html/asg/LF/2/2/AQBD /var/www/html/crs/1125 + +mv /var/www/swad/asg/LF/2/2/AQF /var/www/swad/crs/1126 +mv /var/www/html/asg/LF/2/2/AQF /var/www/html/crs/1126 + +mv /var/www/swad/asg/LF/2/2/AQE /var/www/swad/crs/1127 +mv /var/www/html/asg/LF/2/2/AQE /var/www/html/crs/1127 + +mv /var/www/swad/asg/LF/2/0/FCHBD /var/www/swad/crs/1128 +mv /var/www/html/asg/LF/2/0/FCHBD /var/www/html/crs/1128 + +mv /var/www/swad/asg/LF/2/0/FCHD /var/www/swad/crs/1129 +mv /var/www/html/asg/LF/2/0/FCHD /var/www/html/crs/1129 + +mv /var/www/swad/asg/LF/2/0/FCHE /var/www/swad/crs/1130 +mv /var/www/html/asg/LF/2/0/FCHE /var/www/html/crs/1130 + +mv /var/www/swad/asg/LF/2/2/FVAC /var/www/swad/crs/1131 +mv /var/www/html/asg/LF/2/2/FVAC /var/www/html/crs/1131 + +mv /var/www/swad/asg/LF/2/2/FVB /var/www/swad/crs/1132 +mv /var/www/html/asg/LF/2/2/FVB /var/www/html/crs/1132 + +mv /var/www/swad/asg/LF/2/2/FVD /var/www/swad/crs/1133 +mv /var/www/html/asg/LF/2/2/FVD /var/www/html/crs/1133 + +mv /var/www/swad/asg/LF/2/2/FVE /var/www/swad/crs/1134 +mv /var/www/html/asg/LF/2/2/FVE /var/www/html/crs/1134 + +mv /var/www/swad/asg/LF/2/2/FVF /var/www/swad/crs/1135 +mv /var/www/html/asg/LF/2/2/FVF /var/www/html/crs/1135 + +mv /var/www/swad/asg/LF/2/0/MB /var/www/swad/crs/1136 +mv /var/www/html/asg/LF/2/0/MB /var/www/html/crs/1136 + +mv /var/www/swad/asg/LF/2/0/MA /var/www/swad/crs/1137 +mv /var/www/html/asg/LF/2/0/MA /var/www/html/crs/1137 + +mv /var/www/swad/asg/LF/2/0/MC /var/www/swad/crs/1138 +mv /var/www/html/asg/LF/2/0/MC /var/www/html/crs/1138 + +mv /var/www/swad/asg/LF/2/0/MBC /var/www/swad/crs/1139 +mv /var/www/html/asg/LF/2/0/MBC /var/www/html/crs/1139 + +mv /var/www/swad/asg/LF/2/0/MD /var/www/swad/crs/1140 +mv /var/www/html/asg/LF/2/0/MD /var/www/html/crs/1140 + +mv /var/www/swad/asg/LF/2/0/MBE /var/www/swad/crs/1141 +mv /var/www/html/asg/LF/2/0/MBE /var/www/html/crs/1141 + +mv /var/www/swad/asg/LF/2/0/MF /var/www/swad/crs/1142 +mv /var/www/html/asg/LF/2/0/MF /var/www/html/crs/1142 + +mv /var/www/swad/asg/LF/2/0/MT /var/www/swad/crs/1143 +mv /var/www/html/asg/LF/2/0/MT /var/www/html/crs/1143 + +mv /var/www/swad/asg/LF/2/1/PA /var/www/swad/crs/1144 +mv /var/www/html/asg/LF/2/1/PA /var/www/html/crs/1144 + +mv /var/www/swad/asg/LF/2/1/PB /var/www/swad/crs/1145 +mv /var/www/html/asg/LF/2/1/PB /var/www/html/crs/1145 + +mv /var/www/swad/asg/LF/2/1/PCE /var/www/swad/crs/1146 +mv /var/www/html/asg/LF/2/1/PCE /var/www/html/crs/1146 + +mv /var/www/swad/asg/LF/2/1/PE /var/www/swad/crs/1147 +mv /var/www/html/asg/LF/2/1/PE /var/www/html/crs/1147 + +mv /var/www/swad/asg/LF/2/1/PF /var/www/swad/crs/1148 +mv /var/www/html/asg/LF/2/1/PF /var/www/html/crs/1148 + +mv /var/www/swad/asg/LF/2/0/QOA /var/www/swad/crs/1149 +mv /var/www/html/asg/LF/2/0/QOA /var/www/html/crs/1149 + +mv /var/www/swad/asg/LF/2/0/QOD /var/www/swad/crs/1150 +mv /var/www/html/asg/LF/2/0/QOD /var/www/html/crs/1150 + +mv /var/www/swad/asg/LF/2/1/TID /var/www/swad/crs/1151 +mv /var/www/html/asg/LF/2/1/TID /var/www/html/crs/1151 + +mv /var/www/swad/asg/LF/2/1/TIC /var/www/swad/crs/1152 +mv /var/www/html/asg/LF/2/1/TIC /var/www/html/crs/1152 + +mv /var/www/swad/asg/LF/2/1/TIF /var/www/swad/crs/1153 +mv /var/www/html/asg/LF/2/1/TIF /var/www/html/crs/1153 + +mv /var/www/swad/asg/LF/3/0/ABDLC /var/www/swad/crs/1154 +mv /var/www/html/asg/LF/3/0/ABDLC /var/www/html/crs/1154 + +mv /var/www/swad/asg/LF/3/2/BFA /var/www/swad/crs/1155 +mv /var/www/html/asg/LF/3/2/BFA /var/www/html/crs/1155 + +mv /var/www/swad/asg/LF/3/0/FBD /var/www/swad/crs/1156 +mv /var/www/html/asg/LF/3/0/FBD /var/www/html/crs/1156 + +mv /var/www/swad/asg/LF/3/1/F1A /var/www/swad/crs/1157 +mv /var/www/html/asg/LF/3/1/F1A /var/www/html/crs/1157 + +mv /var/www/swad/asg/LF/3/1/F1B /var/www/swad/crs/1158 +mv /var/www/html/asg/LF/3/1/F1B /var/www/html/crs/1158 + +mv /var/www/swad/asg/LF/3/1/F1D /var/www/swad/crs/1159 +mv /var/www/html/asg/LF/3/1/F1D /var/www/html/crs/1159 + +mv /var/www/swad/asg/LF/3/0/FPD /var/www/swad/crs/1160 +mv /var/www/html/asg/LF/3/0/FPD /var/www/html/crs/1160 + +mv /var/www/swad/asg/LF/3/0/F /var/www/swad/crs/1161 +mv /var/www/html/asg/LF/3/0/F /var/www/html/crs/1161 + +mv /var/www/swad/asg/LF/3/0/FA /var/www/swad/crs/1162 +mv /var/www/html/asg/LF/3/0/FA /var/www/html/crs/1162 + +mv /var/www/swad/asg/LF/3/0/NBC /var/www/swad/crs/1163 +mv /var/www/html/asg/LF/3/0/NBC /var/www/html/crs/1163 + +mv /var/www/swad/asg/LF/3/0/NBF /var/www/swad/crs/1164 +mv /var/www/html/asg/LF/3/0/NBF /var/www/html/crs/1164 + +mv /var/www/swad/asg/LF/3/0/QFB /var/www/swad/crs/1165 +mv /var/www/html/asg/LF/3/0/QFB /var/www/html/crs/1165 + +mv /var/www/swad/asg/LF/3/0/QFE /var/www/swad/crs/1166 +mv /var/www/html/asg/LF/3/0/QFE /var/www/html/crs/1166 + +mv /var/www/swad/asg/LF/3/0/QFF /var/www/swad/crs/1167 +mv /var/www/html/asg/LF/3/0/QFF /var/www/html/crs/1167 + +mv /var/www/swad/asg/LF/3/0/TFGD /var/www/swad/crs/1168 +mv /var/www/html/asg/LF/3/0/TFGD /var/www/html/crs/1168 + +mv /var/www/swad/asg/LF/4/2/AOHPF /var/www/swad/crs/1169 +mv /var/www/html/asg/LF/4/2/AOHPF /var/www/html/crs/1169 + +mv /var/www/swad/asg/LF/4/0/ABDLB /var/www/swad/crs/1170 +mv /var/www/html/asg/LF/4/0/ABDLB /var/www/html/crs/1170 + +mv /var/www/swad/asg/LF/4/2/ABDLP /var/www/swad/crs/1171 +mv /var/www/html/asg/LF/4/2/ABDLP /var/www/html/crs/1171 + +mv /var/www/swad/asg/LF/4/2/AQBF /var/www/swad/crs/1172 +mv /var/www/html/asg/LF/4/2/AQBF /var/www/html/crs/1172 + +mv /var/www/swad/asg/LF/4/1/AFBM /var/www/swad/crs/1173 +mv /var/www/html/asg/LF/4/1/AFBM /var/www/html/crs/1173 + +mv /var/www/swad/asg/LF/4/0/EF /var/www/swad/crs/1174 +mv /var/www/html/asg/LF/4/0/EF /var/www/html/crs/1174 + +mv /var/www/swad/asg/LF/4/2/FP /var/www/swad/crs/1175 +mv /var/www/html/asg/LF/4/2/FP /var/www/html/crs/1175 + +mv /var/www/swad/asg/LF/4/0/F2C /var/www/swad/crs/1176 +mv /var/www/html/asg/LF/4/0/F2C /var/www/html/crs/1176 + +mv /var/www/swad/asg/LF/4/1/I /var/www/swad/crs/1177 +mv /var/www/html/asg/LF/4/1/I /var/www/html/crs/1177 + +mv /var/www/swad/asg/LF/4/2/PMM /var/www/swad/crs/1178 +mv /var/www/html/asg/LF/4/2/PMM /var/www/html/crs/1178 + +mv /var/www/swad/asg/LF/4/1/SOC /var/www/swad/crs/1179 +mv /var/www/html/asg/LF/4/1/SOC /var/www/html/crs/1179 + +mv /var/www/swad/asg/LF/4/0/TFEB /var/www/swad/crs/1180 +mv /var/www/html/asg/LF/4/0/TFEB /var/www/html/crs/1180 + +mv /var/www/swad/asg/LF/5/1/BVAFA /var/www/swad/crs/1181 +mv /var/www/html/asg/LF/5/1/BVAFA /var/www/html/crs/1181 + +mv /var/www/swad/asg/LF/5/1/FCBC /var/www/swad/crs/1182 +mv /var/www/html/asg/LF/5/1/FCBC /var/www/html/crs/1182 + +mv /var/www/swad/asg/LF/5/1/FA /var/www/swad/crs/1183 +mv /var/www/html/asg/LF/5/1/FA /var/www/html/crs/1183 + +mv /var/www/swad/asg/LF/5/1/GCRVIF /var/www/swad/crs/1184 +mv /var/www/html/asg/LF/5/1/GCRVIF /var/www/html/crs/1184 + +mv /var/www/swad/asg/LF/5/1/GPFB /var/www/swad/crs/1185 +mv /var/www/html/asg/LF/5/1/GPFB /var/www/html/crs/1185 + +mv /var/www/swad/asg/LF/5/1/GPFAC /var/www/swad/crs/1186 +mv /var/www/html/asg/LF/5/1/GPFAC /var/www/html/crs/1186 + +mv /var/www/swad/asg/LF/5/1/LDFAC /var/www/swad/crs/1187 +mv /var/www/html/asg/LF/5/1/LDFAC /var/www/html/crs/1187 + +mv /var/www/swad/asg/LF/5/1/LDF /var/www/swad/crs/1188 +mv /var/www/html/asg/LF/5/1/LDF /var/www/html/crs/1188 + +mv /var/www/swad/asg/LF/5/1/PM /var/www/swad/crs/1189 +mv /var/www/html/asg/LF/5/1/PM /var/www/html/crs/1189 + +mv /var/www/swad/asg/LFIL/1/0/SLL /var/www/swad/crs/1190 +mv /var/www/html/asg/LFIL/1/0/SLL /var/www/html/crs/1190 + +mv /var/www/swad/asg/LFIL/2/2/TL /var/www/swad/crs/1191 +mv /var/www/html/asg/LFIL/2/2/TL /var/www/html/crs/1191 + +mv /var/www/swad/asg/LFCL/0/1/EL /var/www/swad/crs/1192 +mv /var/www/html/asg/LFCL/0/1/EL /var/www/html/crs/1192 + +mv /var/www/swad/asg/LFCL/0/1/EMG1 /var/www/swad/crs/1193 +mv /var/www/html/asg/LFCL/0/1/EMG1 /var/www/html/crs/1193 + +mv /var/www/swad/asg/LFCL/0/1/EMG2 /var/www/swad/crs/1194 +mv /var/www/html/asg/LFCL/0/1/EMG2 /var/www/html/crs/1194 + +mv /var/www/swad/asg/LFCL/0/2/MGAP /var/www/swad/crs/1195 +mv /var/www/html/asg/LFCL/0/2/MGAP /var/www/html/crs/1195 + +mv /var/www/swad/asg/LFCL/4/1/HCC1 /var/www/swad/crs/1196 +mv /var/www/html/asg/LFCL/4/1/HCC1 /var/www/html/crs/1196 + +mv /var/www/swad/asg/LFCL/5/2/HCC2 /var/www/swad/crs/1197 +mv /var/www/html/asg/LFCL/5/2/HCC2 /var/www/html/crs/1197 + +mv /var/www/swad/asg/LFES/0/0/GCLE /var/www/swad/crs/1198 +mv /var/www/html/asg/LFES/0/0/GCLE /var/www/html/crs/1198 + +mv /var/www/swad/asg/LFES/5/0/HCPE /var/www/swad/crs/1199 +mv /var/www/html/asg/LFES/5/0/HCPE /var/www/html/crs/1199 + +mv /var/www/swad/asg/LFFR/0/1/EF1 /var/www/swad/crs/1200 +mv /var/www/html/asg/LFFR/0/1/EF1 /var/www/html/crs/1200 + +mv /var/www/swad/asg/LFFR/0/2/EF2 /var/www/swad/crs/1201 +mv /var/www/html/asg/LFFR/0/2/EF2 /var/www/html/crs/1201 + +mv /var/www/swad/asg/LFFR/0/0/ELF /var/www/swad/crs/1202 +mv /var/www/html/asg/LFFR/0/0/ELF /var/www/html/crs/1202 + +mv /var/www/swad/asg/LFFR/3/2/IIAF /var/www/swad/crs/1203 +mv /var/www/html/asg/LFFR/3/2/IIAF /var/www/html/crs/1203 + +mv /var/www/swad/asg/LFFR/4/0/HLF /var/www/swad/crs/1204 +mv /var/www/html/asg/LFFR/4/0/HLF /var/www/html/crs/1204 + +mv /var/www/swad/asg/LFHI/0/2/FSBM /var/www/swad/crs/1205 +mv /var/www/html/asg/LFHI/0/2/FSBM /var/www/html/crs/1205 + +mv /var/www/swad/asg/LFHI/0/1/HELE /var/www/swad/crs/1206 +mv /var/www/html/asg/LFHI/0/1/HELE /var/www/html/crs/1206 + +mv /var/www/swad/asg/LFHI/0/1/LESO /var/www/swad/crs/1207 +mv /var/www/html/asg/LFHI/0/1/LESO /var/www/html/crs/1207 + +mv /var/www/swad/asg/LFHI/0/2/LSXIXH /var/www/swad/crs/1208 +mv /var/www/html/asg/LFHI/0/2/LSXIXH /var/www/html/crs/1208 + +mv /var/www/swad/asg/LFHI/0/1/NHSXX /var/www/swad/crs/1209 +mv /var/www/html/asg/LFHI/0/1/NHSXX /var/www/html/crs/1209 + +mv /var/www/swad/asg/LFHI/1/0/MSEB /var/www/swad/crs/1210 +mv /var/www/html/asg/LFHI/1/0/MSEB /var/www/html/crs/1210 + +mv /var/www/swad/asg/LFHI/1/2/NC /var/www/swad/crs/1211 +mv /var/www/html/asg/LFHI/1/2/NC /var/www/html/crs/1211 + +mv /var/www/swad/asg/LFHI/2/0/LSLEB /var/www/swad/crs/1212 +mv /var/www/html/asg/LFHI/2/0/LSLEB /var/www/html/crs/1212 + +mv /var/www/swad/asg/LFHI/2/0/LE2B /var/www/swad/crs/1213 +mv /var/www/html/asg/LFHI/2/0/LE2B /var/www/html/crs/1213 + +mv /var/www/swad/asg/LFHI/2/2/TLB /var/www/swad/crs/1214 +mv /var/www/html/asg/LFHI/2/2/TLB /var/www/html/crs/1214 + +mv /var/www/swad/asg/LFHI/4/2/DHA /var/www/swad/crs/1215 +mv /var/www/html/asg/LFHI/4/2/DHA /var/www/html/crs/1215 + +mv /var/www/swad/asg/LFHI/4/2/DEB /var/www/swad/crs/1216 +mv /var/www/html/asg/LFHI/4/2/DEB /var/www/html/crs/1216 + +mv /var/www/swad/asg/LFIN/0/0/CLALLI /var/www/swad/crs/1217 +mv /var/www/html/asg/LFIN/0/0/CLALLI /var/www/html/crs/1217 + +mv /var/www/swad/asg/LFIN/0/2/ESLEU /var/www/swad/crs/1218 +mv /var/www/html/asg/LFIN/0/2/ESLEU /var/www/html/crs/1218 + +mv /var/www/swad/asg/LFIN/0/1/IFE1 /var/www/swad/crs/1219 +mv /var/www/html/asg/LFIN/0/1/IFE1 /var/www/html/crs/1219 + +mv /var/www/swad/asg/LFIN/0/2/IFE2 /var/www/swad/crs/1220 +mv /var/www/html/asg/LFIN/0/2/IFE2 /var/www/html/crs/1220 + +mv /var/www/swad/asg/LFIN/0/2/LCIE /var/www/swad/crs/1221 +mv /var/www/html/asg/LFIN/0/2/LCIE /var/www/html/crs/1221 + +mv /var/www/swad/asg/LFIN/0/1/MEI2A /var/www/swad/crs/1222 +mv /var/www/html/asg/LFIN/0/1/MEI2A /var/www/html/crs/1222 + +mv /var/www/swad/asg/LFIN/0/1/MEI4A /var/www/swad/crs/1223 +mv /var/www/html/asg/LFIN/0/1/MEI4A /var/www/html/crs/1223 + +mv /var/www/swad/asg/LFIN/0/2/PI /var/www/swad/crs/1224 +mv /var/www/html/asg/LFIN/0/2/PI /var/www/html/crs/1224 + +mv /var/www/swad/asg/LFIN/0/2/RF /var/www/swad/crs/1225 +mv /var/www/html/asg/LFIN/0/2/RF /var/www/html/crs/1225 + +mv /var/www/swad/asg/LFIN/0/1/TDLI1 /var/www/swad/crs/1226 +mv /var/www/html/asg/LFIN/0/1/TDLI1 /var/www/html/crs/1226 + +mv /var/www/swad/asg/LFIN/0/2/TDLI2 /var/www/swad/crs/1227 +mv /var/www/html/asg/LFIN/0/2/TDLI2 /var/www/html/crs/1227 + +mv /var/www/swad/asg/LFIN/1/0/II1C /var/www/swad/crs/1228 +mv /var/www/html/asg/LFIN/1/0/II1C /var/www/html/crs/1228 + +mv /var/www/swad/asg/LFIN/1/0/II2 /var/www/swad/crs/1229 +mv /var/www/html/asg/LFIN/1/0/II2 /var/www/html/crs/1229 + +mv /var/www/swad/asg/LFIN/1/0/II2C /var/www/swad/crs/1230 +mv /var/www/html/asg/LFIN/1/0/II2C /var/www/html/crs/1230 + +mv /var/www/swad/asg/LFIN/1/0/LEA /var/www/swad/crs/1231 +mv /var/www/html/asg/LFIN/1/0/LEA /var/www/html/crs/1231 + +mv /var/www/swad/asg/LFIN/1/0/LEB /var/www/swad/crs/1232 +mv /var/www/html/asg/LFIN/1/0/LEB /var/www/html/crs/1232 + +mv /var/www/swad/asg/LFIN/1/0/LI1 /var/www/swad/crs/1233 +mv /var/www/html/asg/LFIN/1/0/LI1 /var/www/html/crs/1233 + +mv /var/www/swad/asg/LFIN/1/1/TELIAB /var/www/swad/crs/1234 +mv /var/www/html/asg/LFIN/1/1/TELIAB /var/www/html/crs/1234 + +mv /var/www/swad/asg/LFIN/1/1/TELIC /var/www/swad/crs/1235 +mv /var/www/html/asg/LFIN/1/1/TELIC /var/www/html/crs/1235 + +mv /var/www/swad/asg/LFIN/2/1/II3AB /var/www/swad/crs/1236 +mv /var/www/html/asg/LFIN/2/1/II3AB /var/www/html/crs/1236 + +mv /var/www/swad/asg/LFIN/2/0/II4AB /var/www/swad/crs/1237 +mv /var/www/html/asg/LFIN/2/0/II4AB /var/www/html/crs/1237 + +mv /var/www/swad/asg/LFIN/2/0/II4C /var/www/swad/crs/1238 +mv /var/www/html/asg/LFIN/2/0/II4C /var/www/html/crs/1238 + +mv /var/www/swad/asg/LFIN/2/1/LAEIAB /var/www/swad/crs/1239 +mv /var/www/html/asg/LFIN/2/1/LAEIAB /var/www/html/crs/1239 + +mv /var/www/swad/asg/LFIN/2/0/LI1 /var/www/swad/crs/1240 +mv /var/www/html/asg/LFIN/2/0/LI1 /var/www/html/crs/1240 + +mv /var/www/swad/asg/LFIN/2/1/LI1BC /var/www/swad/crs/1241 +mv /var/www/html/asg/LFIN/2/1/LI1BC /var/www/html/crs/1241 + +mv /var/www/swad/asg/LFIN/2/0/LI1C /var/www/swad/crs/1242 +mv /var/www/html/asg/LFIN/2/0/LI1C /var/www/html/crs/1242 + +mv /var/www/swad/asg/LFIN/2/2/TLA /var/www/swad/crs/1243 +mv /var/www/html/asg/LFIN/2/2/TLA /var/www/html/crs/1243 + +mv /var/www/swad/asg/LFIN/3/0/MGI /var/www/swad/crs/1244 +mv /var/www/html/asg/LFIN/3/0/MGI /var/www/html/crs/1244 + +mv /var/www/swad/asg/LFIN/4/0/HLI /var/www/swad/crs/1245 +mv /var/www/html/asg/LFIN/4/0/HLI /var/www/html/crs/1245 + +mv /var/www/swad/asg/LFIN/5/0/GI /var/www/swad/crs/1246 +mv /var/www/html/asg/LFIN/5/0/GI /var/www/html/crs/1246 + +mv /var/www/swad/asg/LFIN/5/0/LI2B /var/www/swad/crs/1247 +mv /var/www/html/asg/LFIN/5/0/LI2B /var/www/html/crs/1247 + +mv /var/www/swad/asg/LFI/0/1/FP /var/www/swad/crs/1248 +mv /var/www/html/asg/LFI/0/1/FP /var/www/html/crs/1248 + +mv /var/www/swad/asg/LFI/0/0/IRFM /var/www/swad/crs/1249 +mv /var/www/html/asg/LFI/0/0/IRFM /var/www/html/crs/1249 + +mv /var/www/swad/asg/LFI/0/0/TMCF /var/www/swad/crs/1250 +mv /var/www/html/asg/LFI/0/0/TMCF /var/www/html/crs/1250 + +mv /var/www/swad/asg/LFI/1/2/RAAC /var/www/swad/crs/1251 +mv /var/www/html/asg/LFI/1/2/RAAC /var/www/html/crs/1251 + +mv /var/www/swad/asg/LFI/1/2/RAB /var/www/swad/crs/1252 +mv /var/www/html/asg/LFI/1/2/RAB /var/www/html/crs/1252 + +mv /var/www/swad/asg/LFI/2/1/FM1A /var/www/swad/crs/1253 +mv /var/www/html/asg/LFI/2/1/FM1A /var/www/html/crs/1253 + +mv /var/www/swad/asg/LFI/2/1/FC2 /var/www/swad/crs/1254 +mv /var/www/html/asg/LFI/2/1/FC2 /var/www/html/crs/1254 + +mv /var/www/swad/asg/LFI/2/2/IA /var/www/swad/crs/1255 +mv /var/www/html/asg/LFI/2/2/IA /var/www/html/crs/1255 + +mv /var/www/swad/asg/LFI/2/2/IMNFA /var/www/swad/crs/1256 +mv /var/www/html/asg/LFI/2/2/IMNFA /var/www/html/crs/1256 + +mv /var/www/swad/asg/LFI/2/0/MMF4 /var/www/swad/crs/1257 +mv /var/www/html/asg/LFI/2/0/MMF4 /var/www/html/crs/1257 + +mv /var/www/swad/asg/LFI/2/0/MOC /var/www/swad/crs/1258 +mv /var/www/html/asg/LFI/2/0/MOC /var/www/html/crs/1258 + +mv /var/www/swad/asg/LFI/2/0/TEF1MT /var/www/swad/crs/1259 +mv /var/www/html/asg/LFI/2/0/TEF1MT /var/www/html/crs/1259 + +mv /var/www/swad/asg/LFI/3/1/FMA /var/www/swad/crs/1260 +mv /var/www/html/asg/LFI/3/1/FMA /var/www/html/crs/1260 + +mv /var/www/swad/asg/LFI/3/0/O /var/www/swad/crs/1261 +mv /var/www/html/asg/LFI/3/0/O /var/www/html/crs/1261 + +mv /var/www/swad/asg/LFI/3/0/OB /var/www/swad/crs/1262 +mv /var/www/html/asg/LFI/3/0/OB /var/www/html/crs/1262 + +mv /var/www/swad/asg/LFI/4/0/FE /var/www/swad/crs/1263 +mv /var/www/html/asg/LFI/4/0/FE /var/www/html/crs/1263 + +mv /var/www/swad/asg/LFI/4/1/FPOI /var/www/swad/crs/1264 +mv /var/www/html/asg/LFI/4/1/FPOI /var/www/html/crs/1264 + +mv /var/www/swad/asg/LFI/5/1/AG /var/www/swad/crs/1265 +mv /var/www/html/asg/LFI/5/1/AG /var/www/html/crs/1265 + +mv /var/www/swad/asg/LFI/5/2/EN /var/www/swad/crs/1266 +mv /var/www/html/asg/LFI/5/2/EN /var/www/html/crs/1266 + +mv /var/www/swad/asg/LFI/5/2/FP /var/www/swad/crs/1267 +mv /var/www/html/asg/LFI/5/2/FP /var/www/html/crs/1267 + +mv /var/www/swad/asg/LFI/5/2/FVT /var/www/swad/crs/1268 +mv /var/www/html/asg/LFI/5/2/FVT /var/www/html/crs/1268 + +mv /var/www/swad/asg/LFI/5/2/FVP /var/www/swad/crs/1269 +mv /var/www/html/asg/LFI/5/2/FVP /var/www/html/crs/1269 + +mv /var/www/swad/asg/LFI/5/1/MC2 /var/www/swad/crs/1270 +mv /var/www/html/asg/LFI/5/1/MC2 /var/www/html/crs/1270 + +mv /var/www/swad/asg/LGG/0/2/DIRR /var/www/swad/crs/1271 +mv /var/www/html/asg/LGG/0/2/DIRR /var/www/html/crs/1271 + +mv /var/www/swad/asg/LGG/0/2/HEMC /var/www/swad/crs/1272 +mv /var/www/html/asg/LGG/0/2/HEMC /var/www/html/crs/1272 + +mv /var/www/swad/asg/LGG/1/0/TGCFA /var/www/swad/crs/1273 +mv /var/www/html/asg/LGG/1/0/TGCFA /var/www/html/crs/1273 + +mv /var/www/swad/asg/LGG/5/0/OT /var/www/swad/crs/1274 +mv /var/www/html/asg/LGG/5/0/OT /var/www/html/crs/1274 + +mv /var/www/swad/asg/LG/0/1/GC /var/www/swad/crs/1275 +mv /var/www/html/asg/LG/0/1/GC /var/www/html/crs/1275 + +mv /var/www/swad/asg/LG/0/1/PG /var/www/swad/crs/1276 +mv /var/www/html/asg/LG/0/1/PG /var/www/html/crs/1276 + +mv /var/www/swad/asg/LG/0/0/PE /var/www/swad/crs/1277 +mv /var/www/html/asg/LG/0/0/PE /var/www/html/crs/1277 + +mv /var/www/swad/asg/LG/0/1/TPM /var/www/swad/crs/1278 +mv /var/www/html/asg/LG/0/1/TPM /var/www/html/crs/1278 + +mv /var/www/swad/asg/LG/1/2/EA /var/www/swad/crs/1279 +mv /var/www/html/asg/LG/1/2/EA /var/www/html/crs/1279 + +mv /var/www/swad/asg/LG/1/2/EB /var/www/swad/crs/1280 +mv /var/www/html/asg/LG/1/2/EB /var/www/html/crs/1280 + +mv /var/www/swad/asg/LG/2/2/M2A /var/www/swad/crs/1281 +mv /var/www/html/asg/LG/2/2/M2A /var/www/html/crs/1281 + +mv /var/www/swad/asg/LG/2/2/M2B /var/www/swad/crs/1282 +mv /var/www/html/asg/LG/2/2/M2B /var/www/html/crs/1282 + +mv /var/www/swad/asg/LG/2/2/P2 /var/www/swad/crs/1283 +mv /var/www/html/asg/LG/2/2/P2 /var/www/html/crs/1283 + +mv /var/www/swad/asg/LG/4/1/AE /var/www/swad/crs/1284 +mv /var/www/html/asg/LG/4/1/AE /var/www/html/crs/1284 + +mv /var/www/swad/asg/LG/4/0/GR /var/www/swad/crs/1285 +mv /var/www/html/asg/LG/4/0/GR /var/www/html/crs/1285 + +mv /var/www/swad/asg/LG/4/1/PI /var/www/swad/crs/1286 +mv /var/www/html/asg/LG/4/1/PI /var/www/html/crs/1286 + +mv /var/www/swad/asg/LG/5/1/OE /var/www/swad/crs/1287 +mv /var/www/html/asg/LG/5/1/OE /var/www/html/crs/1287 + +mv /var/www/swad/asg/LG/5/2/RE /var/www/swad/crs/1288 +mv /var/www/html/asg/LG/5/2/RE /var/www/html/crs/1288 + +mv /var/www/swad/asg/LG/5/2/V /var/www/swad/crs/1289 +mv /var/www/html/asg/LG/5/2/V /var/www/html/crs/1289 + +mv /var/www/swad/asg/LH/0/1/AT /var/www/swad/crs/1290 +mv /var/www/html/asg/LH/0/1/AT /var/www/html/crs/1290 + +mv /var/www/swad/asg/LH/0/2/AA /var/www/swad/crs/1291 +mv /var/www/html/asg/LH/0/2/AA /var/www/html/crs/1291 + +mv /var/www/swad/asg/LH/0/2/AI /var/www/swad/crs/1292 +mv /var/www/html/asg/LH/0/2/AI /var/www/html/crs/1292 + +mv /var/www/swad/asg/LH/0/1/CMA /var/www/swad/crs/1293 +mv /var/www/html/asg/LH/0/1/CMA /var/www/html/crs/1293 + +mv /var/www/swad/asg/LH/0/2/CPA /var/www/swad/crs/1294 +mv /var/www/html/asg/LH/0/2/CPA /var/www/html/crs/1294 + +mv /var/www/swad/asg/LH/0/1/EN /var/www/swad/crs/1295 +mv /var/www/html/asg/LH/0/1/EN /var/www/html/crs/1295 + +mv /var/www/swad/asg/LH/0/0/HEPOA /var/www/swad/crs/1296 +mv /var/www/html/asg/LH/0/0/HEPOA /var/www/html/crs/1296 + +mv /var/www/swad/asg/LH/0/1/HG /var/www/swad/crs/1297 +mv /var/www/html/asg/LH/0/1/HG /var/www/html/crs/1297 + +mv /var/www/swad/asg/LH/0/1/HSVCEM /var/www/swad/crs/1298 +mv /var/www/html/asg/LH/0/1/HSVCEM /var/www/html/crs/1298 + +mv /var/www/swad/asg/LH/0/0/HMA /var/www/swad/crs/1299 +mv /var/www/html/asg/LH/0/0/HMA /var/www/html/crs/1299 + +mv /var/www/swad/asg/LH/0/1/HM /var/www/swad/crs/1300 +mv /var/www/html/asg/LH/0/1/HM /var/www/html/crs/1300 + +mv /var/www/swad/asg/LH/0/2/HMM /var/www/swad/crs/1301 +mv /var/www/html/asg/LH/0/2/HMM /var/www/html/crs/1301 + +mv /var/www/swad/asg/LH/0/0/HEU /var/www/swad/crs/1302 +mv /var/www/html/asg/LH/0/0/HEU /var/www/html/crs/1302 + +mv /var/www/swad/asg/LH/0/1/HR /var/www/swad/crs/1303 +mv /var/www/html/asg/LH/0/1/HR /var/www/html/crs/1303 + +mv /var/www/swad/asg/LH/0/0/IEJE /var/www/swad/crs/1304 +mv /var/www/html/asg/LH/0/0/IEJE /var/www/html/crs/1304 + +mv /var/www/swad/asg/LH/0/2/JC /var/www/swad/crs/1305 +mv /var/www/html/asg/LH/0/2/JC /var/www/html/crs/1305 + +mv /var/www/swad/asg/LH/0/1/OPEM /var/www/swad/crs/1306 +mv /var/www/html/asg/LH/0/1/OPEM /var/www/html/crs/1306 + +mv /var/www/swad/asg/LH/1/0/HAUA /var/www/swad/crs/1307 +mv /var/www/html/asg/LH/1/0/HAUA /var/www/html/crs/1307 + +mv /var/www/swad/asg/LH/1/0/HAUB /var/www/swad/crs/1308 +mv /var/www/html/asg/LH/1/0/HAUB /var/www/html/crs/1308 + +mv /var/www/swad/asg/LH/1/1/HEAB /var/www/swad/crs/1309 +mv /var/www/html/asg/LH/1/1/HEAB /var/www/html/crs/1309 + +mv /var/www/swad/asg/LH/1/1/HEAA /var/www/swad/crs/1310 +mv /var/www/html/asg/LH/1/1/HEAA /var/www/html/crs/1310 + +mv /var/www/swad/asg/LH/1/1/P1A /var/www/swad/crs/1311 +mv /var/www/html/asg/LH/1/1/P1A /var/www/html/crs/1311 + +mv /var/www/swad/asg/LH/1/2/P2A /var/www/swad/crs/1312 +mv /var/www/html/asg/LH/1/2/P2A /var/www/html/crs/1312 + +mv /var/www/swad/asg/LH/2/0/HCE /var/www/swad/crs/1313 +mv /var/www/html/asg/LH/2/0/HCE /var/www/html/crs/1313 + +mv /var/www/swad/asg/LH/4/2/HCT /var/www/swad/crs/1314 +mv /var/www/html/asg/LH/4/2/HCT /var/www/html/crs/1314 + +mv /var/www/swad/asg/LH/4/1/HEA /var/www/swad/crs/1315 +mv /var/www/html/asg/LH/4/1/HEA /var/www/html/crs/1315 + +mv /var/www/swad/asg/LH/4/0/THA /var/www/swad/crs/1316 +mv /var/www/html/asg/LH/4/0/THA /var/www/html/crs/1316 + +mv /var/www/swad/asg/LHA/0/1/CEA /var/www/swad/crs/1317 +mv /var/www/html/asg/LHA/0/1/CEA /var/www/html/crs/1317 + +mv /var/www/swad/asg/LHA/0/2/HC /var/www/swad/crs/1318 +mv /var/www/html/asg/LHA/0/2/HC /var/www/html/crs/1318 + +mv /var/www/swad/asg/LHA/0/1/IMT /var/www/swad/crs/1319 +mv /var/www/html/asg/LHA/0/1/IMT /var/www/html/crs/1319 + +mv /var/www/swad/asg/LHA/1/1/HAM /var/www/swad/crs/1320 +mv /var/www/html/asg/LHA/1/1/HAM /var/www/html/crs/1320 + +mv /var/www/swad/asg/LHA/2/0/TACBCA /var/www/swad/crs/1321 +mv /var/www/html/asg/LHA/2/0/TACBCA /var/www/html/crs/1321 + +mv /var/www/swad/asg/LHA/2/0/TACBCE /var/www/swad/crs/1322 +mv /var/www/html/asg/LHA/2/0/TACBCE /var/www/html/crs/1322 + +mv /var/www/swad/asg/LHA/3/1/CA1 /var/www/swad/crs/1323 +mv /var/www/html/asg/LHA/3/1/CA1 /var/www/html/crs/1323 + +mv /var/www/swad/asg/LHA/3/2/CA2 /var/www/swad/crs/1324 +mv /var/www/html/asg/LHA/3/2/CA2 /var/www/html/crs/1324 + +mv /var/www/swad/asg/LHCM/0/2/FMM /var/www/swad/crs/1325 +mv /var/www/html/asg/LHCM/0/2/FMM /var/www/html/crs/1325 + +mv /var/www/swad/asg/LHCM/5/0/EM /var/www/swad/crs/1326 +mv /var/www/html/asg/LHCM/5/0/EM /var/www/html/crs/1326 + +mv /var/www/swad/asg/LITM/0/1/MARKI /var/www/swad/crs/1327 +mv /var/www/html/asg/LITM/0/1/MARKI /var/www/html/crs/1327 + +mv /var/www/swad/asg/LITM/1/1/IM1 /var/www/swad/crs/1328 +mv /var/www/html/asg/LITM/1/1/IM1 /var/www/html/crs/1328 + +mv /var/www/swad/asg/LITM/1/2/IM2 /var/www/swad/crs/1329 +mv /var/www/html/asg/LITM/1/2/IM2 /var/www/html/crs/1329 + +mv /var/www/swad/asg/LITM/1/1/PC /var/www/swad/crs/1330 +mv /var/www/html/asg/LITM/1/1/PC /var/www/html/crs/1330 + +mv /var/www/swad/asg/LMA/1/0/ABC /var/www/swad/crs/1331 +mv /var/www/html/asg/LMA/1/0/ABC /var/www/html/crs/1331 + +mv /var/www/swad/asg/LMA/3/0/AEB /var/www/swad/crs/1332 +mv /var/www/html/asg/LMA/3/0/AEB /var/www/html/crs/1332 + +mv /var/www/swad/asg/LMA/3/0/EDB /var/www/swad/crs/1333 +mv /var/www/html/asg/LMA/3/0/EDB /var/www/html/crs/1333 + +mv /var/www/swad/asg/LMA/5/1/MV /var/www/swad/crs/1334 +mv /var/www/html/asg/LMA/5/1/MV /var/www/html/crs/1334 + +mv /var/www/swad/asg/LMA/5/1/PVEF /var/www/swad/crs/1335 +mv /var/www/html/asg/LMA/5/1/PVEF /var/www/html/crs/1335 + +mv /var/www/swad/asg/LM/0/2/AEODM /var/www/swad/crs/1336 +mv /var/www/html/asg/LM/0/2/AEODM /var/www/html/crs/1336 + +mv /var/www/swad/asg/LM/0/1/EPSH /var/www/swad/crs/1337 +mv /var/www/html/asg/LM/0/1/EPSH /var/www/html/crs/1337 + +mv /var/www/swad/asg/LM/0/2/HEM /var/www/swad/crs/1338 +mv /var/www/html/asg/LM/0/2/HEM /var/www/html/crs/1338 + +mv /var/www/swad/asg/LM/0/1/IFE /var/www/swad/crs/1339 +mv /var/www/html/asg/LM/0/1/IFE /var/www/html/crs/1339 + +mv /var/www/swad/asg/LM/2/1/BPAB /var/www/swad/crs/1340 +mv /var/www/html/asg/LM/2/1/BPAB /var/www/html/crs/1340 + +mv /var/www/swad/asg/LM/2/0/AH2 /var/www/swad/crs/1341 +mv /var/www/html/asg/LM/2/0/AH2 /var/www/html/crs/1341 + +mv /var/www/swad/asg/LM/2/1/HM /var/www/swad/crs/1342 +mv /var/www/html/asg/LM/2/1/HM /var/www/html/crs/1342 + +mv /var/www/swad/asg/LM/2/1/HMA /var/www/swad/crs/1343 +mv /var/www/html/asg/LM/2/1/HMA /var/www/html/crs/1343 + +mv /var/www/swad/asg/LM/2/1/HMB /var/www/swad/crs/1344 +mv /var/www/html/asg/LM/2/1/HMB /var/www/html/crs/1344 + +mv /var/www/swad/asg/LM/2/2/HM1 /var/www/swad/crs/1345 +mv /var/www/html/asg/LM/2/2/HM1 /var/www/html/crs/1345 + +mv /var/www/swad/asg/LM/2/2/HM2 /var/www/swad/crs/1346 +mv /var/www/html/asg/LM/2/2/HM2 /var/www/html/crs/1346 + +mv /var/www/swad/asg/LM/3/1/MPM /var/www/swad/crs/1347 +mv /var/www/html/asg/LM/3/1/MPM /var/www/html/crs/1347 + +mv /var/www/swad/asg/LM/5/0/PQ2 /var/www/swad/crs/1348 +mv /var/www/html/asg/LM/5/0/PQ2 /var/www/html/crs/1348 + +mv /var/www/swad/asg/LM/6/0/MPSPC /var/www/swad/crs/1349 +mv /var/www/html/asg/LM/6/0/MPSPC /var/www/html/crs/1349 + +mv /var/www/swad/asg/LM/6/0/PM3PCN /var/www/swad/crs/1350 +mv /var/www/html/asg/LM/6/0/PM3PCN /var/www/html/crs/1350 + +mv /var/www/swad/asg/LO/1/2/HOMCO /var/www/swad/crs/1351 +mv /var/www/html/asg/LO/1/2/HOMCO /var/www/html/crs/1351 + +mv /var/www/swad/asg/LPED/0/2/MEPMC /var/www/swad/crs/1352 +mv /var/www/html/asg/LPED/0/2/MEPMC /var/www/html/crs/1352 + +mv /var/www/swad/asg/LPED/1/0/BMIE /var/www/swad/crs/1353 +mv /var/www/html/asg/LPED/1/0/BMIE /var/www/html/crs/1353 + +mv /var/www/swad/asg/LPED/1/0/HE /var/www/swad/crs/1354 +mv /var/www/html/asg/LPED/1/0/HE /var/www/html/crs/1354 + +mv /var/www/swad/asg/LPED/1/1/TC /var/www/swad/crs/1355 +mv /var/www/html/asg/LPED/1/1/TC /var/www/html/crs/1355 + +mv /var/www/swad/asg/LPED/1/0/TE /var/www/swad/crs/1356 +mv /var/www/html/asg/LPED/1/0/TE /var/www/html/crs/1356 + +mv /var/www/swad/asg/LPED/2/0/DG /var/www/swad/crs/1357 +mv /var/www/html/asg/LPED/2/0/DG /var/www/html/crs/1357 + +mv /var/www/swad/asg/LPED/2/0/OGCE /var/www/swad/crs/1358 +mv /var/www/html/asg/LPED/2/0/OGCE /var/www/html/crs/1358 + +mv /var/www/swad/asg/LPED/2/0/SEA /var/www/swad/crs/1359 +mv /var/www/html/asg/LPED/2/0/SEA /var/www/html/crs/1359 + +mv /var/www/swad/asg/LPED/2/0/SE /var/www/swad/crs/1360 +mv /var/www/html/asg/LPED/2/0/SE /var/www/html/crs/1360 + +mv /var/www/swad/asg/LPED/2/1/TEC /var/www/swad/crs/1361 +mv /var/www/html/asg/LPED/2/1/TEC /var/www/html/crs/1361 + +mv /var/www/swad/asg/LPED/3/2/EMC /var/www/swad/crs/1362 +mv /var/www/html/asg/LPED/3/2/EMC /var/www/html/crs/1362 + +mv /var/www/swad/asg/LPED/3/2/FAEE /var/www/swad/crs/1363 +mv /var/www/html/asg/LPED/3/2/FAEE /var/www/html/crs/1363 + +mv /var/www/swad/asg/LPED/3/1/OET /var/www/swad/crs/1364 +mv /var/www/html/asg/LPED/3/1/OET /var/www/html/crs/1364 + +mv /var/www/swad/asg/LPED/4/1/ACM /var/www/swad/crs/1365 +mv /var/www/html/asg/LPED/4/1/ACM /var/www/html/crs/1365 + +mv /var/www/swad/asg/LPED/4/2/DEE /var/www/swad/crs/1366 +mv /var/www/html/asg/LPED/4/2/DEE /var/www/html/crs/1366 + +mv /var/www/swad/asg/LPED/4/1/DDIC /var/www/swad/crs/1367 +mv /var/www/html/asg/LPED/4/1/DDIC /var/www/html/crs/1367 + +mv /var/www/swad/asg/LPED/4/2/EE /var/www/swad/crs/1368 +mv /var/www/html/asg/LPED/4/2/EE /var/www/html/crs/1368 + +mv /var/www/swad/asg/LPED/4/1/PSC /var/www/swad/crs/1369 +mv /var/www/html/asg/LPED/4/1/PSC /var/www/html/crs/1369 + +mv /var/www/swad/asg/LPED/4/2/POOE /var/www/swad/crs/1370 +mv /var/www/html/asg/LPED/4/2/POOE /var/www/html/crs/1370 + +mv /var/www/swad/asg/LPED/5/2/DPDA /var/www/swad/crs/1371 +mv /var/www/html/asg/LPED/5/2/DPDA /var/www/html/crs/1371 + +mv /var/www/swad/asg/LPED/5/2/DPDB /var/www/swad/crs/1372 +mv /var/www/html/asg/LPED/5/2/DPDB /var/www/html/crs/1372 + +mv /var/www/swad/asg/LPED/5/2/DPDC /var/www/swad/crs/1373 +mv /var/www/html/asg/LPED/5/2/DPDC /var/www/html/crs/1373 + +mv /var/www/swad/asg/LPED/5/2/EFDP /var/www/swad/crs/1374 +mv /var/www/html/asg/LPED/5/2/EFDP /var/www/html/crs/1374 + +mv /var/www/swad/asg/LPED/5/2/EPCP /var/www/swad/crs/1375 +mv /var/www/html/asg/LPED/5/2/EPCP /var/www/html/crs/1375 + +mv /var/www/swad/asg/LPED/5/1/EGI /var/www/swad/crs/1376 +mv /var/www/html/asg/LPED/5/1/EGI /var/www/html/crs/1376 + +mv /var/www/swad/asg/LPED/5/1/FAFPAB /var/www/swad/crs/1377 +mv /var/www/html/asg/LPED/5/1/FAFPAB /var/www/html/crs/1377 + +mv /var/www/swad/asg/LPED/5/2/PFE /var/www/swad/crs/1378 +mv /var/www/html/asg/LPED/5/2/PFE /var/www/html/crs/1378 + +mv /var/www/swad/asg/LPED/5/2/P2 /var/www/swad/crs/1379 +mv /var/www/html/asg/LPED/5/2/P2 /var/www/html/crs/1379 + +mv /var/www/swad/asg/LPED/5/2/SMCMSE /var/www/swad/crs/1380 +mv /var/www/html/asg/LPED/5/2/SMCMSE /var/www/html/crs/1380 + +mv /var/www/swad/asg/LPSP/0/1/ESEA /var/www/swad/crs/1381 +mv /var/www/html/asg/LPSP/0/1/ESEA /var/www/html/crs/1381 + +mv /var/www/swad/asg/LPSP/0/2/OEE /var/www/swad/crs/1382 +mv /var/www/html/asg/LPSP/0/2/OEE /var/www/html/crs/1382 + +mv /var/www/swad/asg/LPSP/1/2/ACA /var/www/swad/crs/1383 +mv /var/www/html/asg/LPSP/1/2/ACA /var/www/html/crs/1383 + +mv /var/www/swad/asg/LPSP/1/2/DPP /var/www/swad/crs/1384 +mv /var/www/html/asg/LPSP/1/2/DPP /var/www/html/crs/1384 + +mv /var/www/swad/asg/LPSP/1/1/DE /var/www/swad/crs/1385 +mv /var/www/html/asg/LPSP/1/1/DE /var/www/html/crs/1385 + +mv /var/www/swad/asg/LPSP/1/2/DAIP /var/www/swad/crs/1386 +mv /var/www/html/asg/LPSP/1/2/DAIP /var/www/html/crs/1386 + +mv /var/www/swad/asg/LPSP/1/2/DDIC /var/www/swad/crs/1387 +mv /var/www/html/asg/LPSP/1/2/DDIC /var/www/html/crs/1387 + +mv /var/www/swad/asg/LPSP/1/2/EEA /var/www/swad/crs/1388 +mv /var/www/html/asg/LPSP/1/2/EEA /var/www/html/crs/1388 + +mv /var/www/swad/asg/LPSP/1/2/EED /var/www/swad/crs/1389 +mv /var/www/html/asg/LPSP/1/2/EED /var/www/html/crs/1389 + +mv /var/www/swad/asg/LPSP/1/1/ESE /var/www/swad/crs/1390 +mv /var/www/html/asg/LPSP/1/1/ESE /var/www/html/crs/1390 + +mv /var/www/swad/asg/LPSP/1/2/EPCE /var/www/swad/crs/1391 +mv /var/www/html/asg/LPSP/1/2/EPCE /var/www/html/crs/1391 + +mv /var/www/swad/asg/LPSP/1/1/MOE /var/www/swad/crs/1392 +mv /var/www/html/asg/LPSP/1/1/MOE /var/www/html/crs/1392 + +mv /var/www/swad/asg/LPSP/1/1/MIE /var/www/swad/crs/1393 +mv /var/www/html/asg/LPSP/1/1/MIE /var/www/html/crs/1393 + +mv /var/www/swad/asg/LPSP/1/1/MOIP /var/www/swad/crs/1394 +mv /var/www/html/asg/LPSP/1/1/MOIP /var/www/html/crs/1394 + +mv /var/www/swad/asg/LPSP/1/1/MOIPD /var/www/swad/crs/1395 +mv /var/www/html/asg/LPSP/1/1/MOIPD /var/www/html/crs/1395 + +mv /var/www/swad/asg/LPSP/1/1/PPRSEE /var/www/swad/crs/1396 +mv /var/www/html/asg/LPSP/1/1/PPRSEE /var/www/html/crs/1396 + +mv /var/www/swad/asg/LPSP/1/2/PIP /var/www/swad/crs/1397 +mv /var/www/html/asg/LPSP/1/2/PIP /var/www/html/crs/1397 + +mv /var/www/swad/asg/LPSP/1/1/PI /var/www/swad/crs/1398 +mv /var/www/html/asg/LPSP/1/1/PI /var/www/html/crs/1398 + +mv /var/www/swad/asg/LPSP/1/1/PE /var/www/swad/crs/1399 +mv /var/www/html/asg/LPSP/1/1/PE /var/www/html/crs/1399 + +mv /var/www/swad/asg/LPSP/2/1/AEM /var/www/swad/crs/1400 +mv /var/www/html/asg/LPSP/2/1/AEM /var/www/html/crs/1400 + +mv /var/www/swad/asg/LPSP/2/1/AMC /var/www/swad/crs/1401 +mv /var/www/html/asg/LPSP/2/1/AMC /var/www/html/crs/1401 + +mv /var/www/swad/asg/LPSP/2/1/IPTD /var/www/swad/crs/1402 +mv /var/www/html/asg/LPSP/2/1/IPTD /var/www/html/crs/1402 + +mv /var/www/swad/asg/LPSP/2/2/DSMS /var/www/swad/crs/1403 +mv /var/www/html/asg/LPSP/2/2/DSMS /var/www/html/crs/1403 + +mv /var/www/swad/asg/LPSP/2/1/ELDA /var/www/swad/crs/1404 +mv /var/www/html/asg/LPSP/2/1/ELDA /var/www/html/crs/1404 + +mv /var/www/swad/asg/LPSP/2/1/EDACE /var/www/swad/crs/1405 +mv /var/www/html/asg/LPSP/2/1/EDACE /var/www/html/crs/1405 + +mv /var/www/swad/asg/LPSP/2/2/EFEDEA /var/www/swad/crs/1406 +mv /var/www/html/asg/LPSP/2/2/EFEDEA /var/www/html/crs/1406 + +mv /var/www/swad/asg/LPSP/2/1/EMDEA /var/www/swad/crs/1407 +mv /var/www/html/asg/LPSP/2/1/EMDEA /var/www/html/crs/1407 + +mv /var/www/swad/asg/LPSP/2/2/EPDEA /var/www/swad/crs/1408 +mv /var/www/html/asg/LPSP/2/2/EPDEA /var/www/html/crs/1408 + +mv /var/www/swad/asg/LPSP/2/1/IDEE /var/www/swad/crs/1409 +mv /var/www/html/asg/LPSP/2/1/IDEE /var/www/html/crs/1409 + +mv /var/www/swad/asg/LPSP/2/2/MDTIP /var/www/swad/crs/1410 +mv /var/www/html/asg/LPSP/2/2/MDTIP /var/www/html/crs/1410 + +mv /var/www/swad/asg/LPSP/2/2/OEEE /var/www/swad/crs/1411 +mv /var/www/html/asg/LPSP/2/2/OEEE /var/www/html/crs/1411 + +mv /var/www/swad/asg/LPSP/2/1/OP /var/www/swad/crs/1412 +mv /var/www/html/asg/LPSP/2/1/OP /var/www/html/crs/1412 + +mv /var/www/swad/asg/LPSP/2/0/P /var/www/swad/crs/1413 +mv /var/www/html/asg/LPSP/2/0/P /var/www/html/crs/1413 + +mv /var/www/swad/asg/LPSP/2/2/PG /var/www/swad/crs/1414 +mv /var/www/html/asg/LPSP/2/2/PG /var/www/html/crs/1414 + +mv /var/www/swad/asg/LPSP/2/2/PS /var/www/swad/crs/1415 +mv /var/www/html/asg/LPSP/2/2/PS /var/www/html/crs/1415 + +mv /var/www/swad/asg/LPSP/2/1/PTL /var/www/swad/crs/1416 +mv /var/www/html/asg/LPSP/2/1/PTL /var/www/html/crs/1416 + +mv /var/www/swad/asg/LPSP/2/1/PDI /var/www/swad/crs/1417 +mv /var/www/html/asg/LPSP/2/1/PDI /var/www/html/crs/1417 + +mv /var/www/swad/asg/LPSP/2/2/TPP /var/www/swad/crs/1418 +mv /var/www/html/asg/LPSP/2/2/TPP /var/www/html/crs/1418 + +mv /var/www/swad/asg/LPC/0/2/MOE /var/www/swad/crs/1419 +mv /var/www/html/asg/LPC/0/2/MOE /var/www/html/crs/1419 + +mv /var/www/swad/asg/LPC/1/2/DPP /var/www/swad/crs/1420 +mv /var/www/html/asg/LPC/1/2/DPP /var/www/html/crs/1420 + +mv /var/www/swad/asg/LPC/1/2/DE /var/www/swad/crs/1421 +mv /var/www/html/asg/LPC/1/2/DE /var/www/html/crs/1421 + +mv /var/www/swad/asg/LPC/1/1/DAIP /var/www/swad/crs/1422 +mv /var/www/html/asg/LPC/1/1/DAIP /var/www/html/crs/1422 + +mv /var/www/swad/asg/LPC/1/1/DDIC /var/www/swad/crs/1423 +mv /var/www/html/asg/LPC/1/1/DDIC /var/www/html/crs/1423 + +mv /var/www/swad/asg/LPC/1/2/EE /var/www/swad/crs/1424 +mv /var/www/html/asg/LPC/1/2/EE /var/www/html/crs/1424 + +mv /var/www/swad/asg/LPC/1/2/EPCE /var/www/swad/crs/1425 +mv /var/www/html/asg/LPC/1/2/EPCE /var/www/html/crs/1425 + +mv /var/www/swad/asg/LPC/1/1/MIE /var/www/swad/crs/1426 +mv /var/www/html/asg/LPC/1/1/MIE /var/www/html/crs/1426 + +mv /var/www/swad/asg/LPC/1/1/MOIP /var/www/swad/crs/1427 +mv /var/www/html/asg/LPC/1/1/MOIP /var/www/html/crs/1427 + +mv /var/www/swad/asg/LPC/1/2/PIP /var/www/swad/crs/1428 +mv /var/www/html/asg/LPC/1/2/PIP /var/www/html/crs/1428 + +mv /var/www/swad/asg/LPC/1/2/PE /var/www/swad/crs/1429 +mv /var/www/html/asg/LPC/1/2/PE /var/www/html/crs/1429 + +mv /var/www/swad/asg/LPC/1/2/PI /var/www/swad/crs/1430 +mv /var/www/html/asg/LPC/1/2/PI /var/www/html/crs/1430 + +mv /var/www/swad/asg/LPC/1/1/PI /var/www/swad/crs/1431 +mv /var/www/html/asg/LPC/1/1/PI /var/www/html/crs/1431 + +mv /var/www/swad/asg/LPC/1/2/THIEE /var/www/swad/crs/1432 +mv /var/www/html/asg/LPC/1/2/THIEE /var/www/html/crs/1432 + +mv /var/www/swad/asg/LPC/2/2/AC /var/www/swad/crs/1433 +mv /var/www/html/asg/LPC/2/2/AC /var/www/html/crs/1433 + +mv /var/www/swad/asg/LPC/2/2/AMC /var/www/swad/crs/1434 +mv /var/www/html/asg/LPC/2/2/AMC /var/www/html/crs/1434 + +mv /var/www/swad/asg/LPC/2/1/AEM /var/www/swad/crs/1435 +mv /var/www/html/asg/LPC/2/1/AEM /var/www/html/crs/1435 + +mv /var/www/swad/asg/LPC/2/1/DSMS /var/www/swad/crs/1436 +mv /var/www/html/asg/LPC/2/1/DSMS /var/www/html/crs/1436 + +mv /var/www/swad/asg/LPC/2/2/EACDEA /var/www/swad/crs/1437 +mv /var/www/html/asg/LPC/2/2/EACDEA /var/www/html/crs/1437 + +mv /var/www/swad/asg/LPC/2/2/ELMDA /var/www/swad/crs/1438 +mv /var/www/html/asg/LPC/2/2/ELMDA /var/www/html/crs/1438 + +mv /var/www/swad/asg/LPC/2/1/EDACSE /var/www/swad/crs/1439 +mv /var/www/html/asg/LPC/2/1/EDACSE /var/www/html/crs/1439 + +mv /var/www/swad/asg/LPC/2/2/IDEE /var/www/swad/crs/1440 +mv /var/www/html/asg/LPC/2/2/IDEE /var/www/html/crs/1440 + +mv /var/www/swad/asg/LPC/2/1/IPTD /var/www/swad/crs/1441 +mv /var/www/html/asg/LPC/2/1/IPTD /var/www/html/crs/1441 + +mv /var/www/swad/asg/LPC/2/2/OEEE /var/www/swad/crs/1442 +mv /var/www/html/asg/LPC/2/2/OEEE /var/www/html/crs/1442 + +mv /var/www/swad/asg/LPC/2/2/OP /var/www/swad/crs/1443 +mv /var/www/html/asg/LPC/2/2/OP /var/www/html/crs/1443 + +mv /var/www/swad/asg/LPC/2/0/P /var/www/swad/crs/1444 +mv /var/www/html/asg/LPC/2/0/P /var/www/html/crs/1444 + +mv /var/www/swad/asg/LPC/2/1/PG /var/www/swad/crs/1445 +mv /var/www/html/asg/LPC/2/1/PG /var/www/html/crs/1445 + +mv /var/www/swad/asg/LPC/2/2/PTL /var/www/swad/crs/1446 +mv /var/www/html/asg/LPC/2/2/PTL /var/www/html/crs/1446 + +mv /var/www/swad/asg/LPC/2/1/PIP /var/www/swad/crs/1447 +mv /var/www/html/asg/LPC/2/1/PIP /var/www/html/crs/1447 + +mv /var/www/swad/asg/LPC/2/1/TPP /var/www/swad/crs/1448 +mv /var/www/html/asg/LPC/2/1/TPP /var/www/html/crs/1448 + +mv /var/www/swad/asg/LPM/0/1/AALE /var/www/swad/crs/1449 +mv /var/www/html/asg/LPM/0/1/AALE /var/www/html/crs/1449 + +mv /var/www/swad/asg/LPM/2/2/EMIA /var/www/swad/crs/1450 +mv /var/www/html/asg/LPM/2/2/EMIA /var/www/html/crs/1450 + +mv /var/www/swad/asg/LQ/0/2/CQI /var/www/swad/crs/1451 +mv /var/www/html/asg/LQ/0/2/CQI /var/www/html/crs/1451 + +mv /var/www/swad/asg/LQ/0/2/EEPMA /var/www/swad/crs/1452 +mv /var/www/html/asg/LQ/0/2/EEPMA /var/www/html/crs/1452 + +mv /var/www/swad/asg/LQ/1/2/CA /var/www/swad/crs/1453 +mv /var/www/html/asg/LQ/1/2/CA /var/www/html/crs/1453 + +mv /var/www/swad/asg/LQ/1/2/CB /var/www/swad/crs/1454 +mv /var/www/html/asg/LQ/1/2/CB /var/www/html/crs/1454 + +mv /var/www/swad/asg/LQ/1/2/CC /var/www/swad/crs/1455 +mv /var/www/html/asg/LQ/1/2/CC /var/www/html/crs/1455 + +mv /var/www/swad/asg/LQ/1/2/CD /var/www/swad/crs/1456 +mv /var/www/html/asg/LQ/1/2/CD /var/www/html/crs/1456 + +mv /var/www/swad/asg/LQ/1/0/MA /var/www/swad/crs/1457 +mv /var/www/html/asg/LQ/1/0/MA /var/www/html/crs/1457 + +mv /var/www/swad/asg/LQ/1/0/MB /var/www/swad/crs/1458 +mv /var/www/html/asg/LQ/1/0/MB /var/www/html/crs/1458 + +mv /var/www/swad/asg/LQ/1/0/QAA /var/www/swad/crs/1459 +mv /var/www/html/asg/LQ/1/0/QAA /var/www/html/crs/1459 + +mv /var/www/swad/asg/LQ/1/0/QAB /var/www/swad/crs/1460 +mv /var/www/html/asg/LQ/1/0/QAB /var/www/html/crs/1460 + +mv /var/www/swad/asg/LQ/1/0/QAC /var/www/swad/crs/1461 +mv /var/www/html/asg/LQ/1/0/QAC /var/www/html/crs/1461 + +mv /var/www/swad/asg/LQ/1/0/QO1 /var/www/swad/crs/1462 +mv /var/www/html/asg/LQ/1/0/QO1 /var/www/html/crs/1462 + +mv /var/www/swad/asg/LQ/2/1/ESO /var/www/swad/crs/1463 +mv /var/www/html/asg/LQ/2/1/ESO /var/www/html/crs/1463 + +mv /var/www/swad/asg/LQ/2/1/IUC /var/www/swad/crs/1464 +mv /var/www/html/asg/LQ/2/1/IUC /var/www/html/crs/1464 + +mv /var/www/swad/asg/LQ/2/1/MA /var/www/swad/crs/1465 +mv /var/www/html/asg/LQ/2/1/MA /var/www/html/crs/1465 + +mv /var/www/swad/asg/LQ/2/0/QAIA /var/www/swad/crs/1466 +mv /var/www/html/asg/LQ/2/0/QAIA /var/www/html/crs/1466 + +mv /var/www/swad/asg/LQ/2/0/QAIB /var/www/swad/crs/1467 +mv /var/www/html/asg/LQ/2/0/QAIB /var/www/html/crs/1467 + +mv /var/www/swad/asg/LQ/2/0/QAIC /var/www/swad/crs/1468 +mv /var/www/html/asg/LQ/2/0/QAIC /var/www/html/crs/1468 + +mv /var/www/swad/asg/LQ/2/0/QIC /var/www/swad/crs/1469 +mv /var/www/html/asg/LQ/2/0/QIC /var/www/html/crs/1469 + +mv /var/www/swad/asg/LQ/3/0/IQ /var/www/swad/crs/1470 +mv /var/www/html/asg/LQ/3/0/IQ /var/www/html/crs/1470 + +mv /var/www/swad/asg/LQ/3/1/IEQA /var/www/swad/crs/1471 +mv /var/www/html/asg/LQ/3/1/IEQA /var/www/html/crs/1471 + +mv /var/www/swad/asg/LQ/4/1/EQA1A /var/www/swad/crs/1472 +mv /var/www/html/asg/LQ/4/1/EQA1A /var/www/html/crs/1472 + +mv /var/www/swad/asg/LQ/4/1/EQA1B /var/www/swad/crs/1473 +mv /var/www/html/asg/LQ/4/1/EQA1B /var/www/html/crs/1473 + +mv /var/www/swad/asg/LQ/5/2/AS /var/www/swad/crs/1474 +mv /var/www/html/asg/LQ/5/2/AS /var/www/html/crs/1474 + +mv /var/www/swad/asg/LQ/5/1/AQBC /var/www/swad/crs/1475 +mv /var/www/html/asg/LQ/5/1/AQBC /var/www/html/crs/1475 + +mv /var/www/swad/asg/LQ/5/1/MAA /var/www/swad/crs/1476 +mv /var/www/html/asg/LQ/5/1/MAA /var/www/html/crs/1476 + +mv /var/www/swad/asg/LQ/5/1/TQCCQA /var/www/swad/crs/1477 +mv /var/www/html/asg/LQ/5/1/TQCCQA /var/www/html/crs/1477 + +mv /var/www/swad/asg/LSOC/0/2/AM /var/www/swad/crs/1478 +mv /var/www/html/asg/LSOC/0/2/AM /var/www/html/crs/1478 + +mv /var/www/swad/asg/LSOC/1/0/EP /var/www/swad/crs/1479 +mv /var/www/html/asg/LSOC/1/0/EP /var/www/html/crs/1479 + +mv /var/www/swad/asg/LSOC/1/0/EPB /var/www/swad/crs/1480 +mv /var/www/html/asg/LSOC/1/0/EPB /var/www/html/crs/1480 + +mv /var/www/swad/asg/LSOC/2/0/HTS /var/www/swad/crs/1481 +mv /var/www/html/asg/LSOC/2/0/HTS /var/www/html/crs/1481 + +mv /var/www/swad/asg/LSOC/2/0/HTSB /var/www/swad/crs/1482 +mv /var/www/html/asg/LSOC/2/0/HTSB /var/www/html/crs/1482 + +mv /var/www/swad/asg/LSOC/2/0/TEA /var/www/swad/crs/1483 +mv /var/www/html/asg/LSOC/2/0/TEA /var/www/html/crs/1483 + +mv /var/www/swad/asg/LSOC/2/0/TEB /var/www/swad/crs/1484 +mv /var/www/html/asg/LSOC/2/0/TEB /var/www/html/crs/1484 + +mv /var/www/swad/asg/LSOC/3/0/CAB /var/www/swad/crs/1485 +mv /var/www/html/asg/LSOC/3/0/CAB /var/www/html/crs/1485 + +mv /var/www/swad/asg/LSOC/4/0/SIIB /var/www/swad/crs/1486 +mv /var/www/html/asg/LSOC/4/0/SIIB /var/www/html/crs/1486 + +mv /var/www/swad/asg/LSOC/4/2/TAISC /var/www/swad/crs/1487 +mv /var/www/html/asg/LSOC/4/2/TAISC /var/www/html/crs/1487 + +mv /var/www/swad/asg/LSOC/5/1/SC /var/www/swad/crs/1488 +mv /var/www/html/asg/LSOC/5/1/SC /var/www/html/crs/1488 + +mv /var/www/swad/asg/LSOC/5/1/SU /var/www/swad/crs/1489 +mv /var/www/html/asg/LSOC/5/1/SU /var/www/html/crs/1489 + +mv /var/www/swad/asg/LSOC/5/1/TIAC /var/www/swad/crs/1490 +mv /var/www/html/asg/LSOC/5/1/TIAC /var/www/html/crs/1490 + +mv /var/www/swad/asg/LSOC/5/1/TMCS /var/www/swad/crs/1491 +mv /var/www/html/asg/LSOC/5/1/TMCS /var/www/html/crs/1491 + +mv /var/www/swad/asg/LTLLC/0/2/CC /var/www/swad/crs/1492 +mv /var/www/html/asg/LTLLC/0/2/CC /var/www/html/crs/1492 + +mv /var/www/swad/asg/LTLLC/1/2/CL2 /var/www/swad/crs/1493 +mv /var/www/html/asg/LTLLC/1/2/CL2 /var/www/html/crs/1493 + +mv /var/www/swad/asg/LTLLC/1/1/HPLE /var/www/swad/crs/1494 +mv /var/www/html/asg/LTLLC/1/1/HPLE /var/www/html/crs/1494 + +mv /var/www/swad/asg/LTI/0/1/AIDDC /var/www/swad/crs/1495 +mv /var/www/html/asg/LTI/0/1/AIDDC /var/www/html/crs/1495 + +mv /var/www/swad/asg/LTI/0/2/CTS /var/www/swad/crs/1496 +mv /var/www/html/asg/LTI/0/2/CTS /var/www/html/crs/1496 + +mv /var/www/swad/asg/LTI/0/2/CE2 /var/www/swad/crs/1497 +mv /var/www/html/asg/LTI/0/2/CE2 /var/www/html/crs/1497 + +mv /var/www/swad/asg/LTI/0/1/DE /var/www/swad/crs/1498 +mv /var/www/html/asg/LTI/0/1/DE /var/www/html/crs/1498 + +mv /var/www/swad/asg/LTI/0/1/IBCI /var/www/swad/crs/1499 +mv /var/www/html/asg/LTI/0/1/IBCI /var/www/html/crs/1499 + +mv /var/www/swad/asg/LTI/0/0/LE3 /var/www/swad/crs/1500 +mv /var/www/html/asg/LTI/0/0/LE3 /var/www/html/crs/1500 + +mv /var/www/swad/asg/LTI/0/1/MM /var/www/swad/crs/1501 +mv /var/www/html/asg/LTI/0/1/MM /var/www/html/crs/1501 + +mv /var/www/swad/asg/LTI/0/2/TCM /var/www/swad/crs/1502 +mv /var/www/html/asg/LTI/0/2/TCM /var/www/html/crs/1502 + +mv /var/www/swad/asg/LTI/0/1/TAA /var/www/swad/crs/1503 +mv /var/www/html/asg/LTI/0/1/TAA /var/www/html/crs/1503 + +mv /var/www/swad/asg/LTI/0/1/T14FE /var/www/swad/crs/1504 +mv /var/www/html/asg/LTI/0/1/T14FE /var/www/html/crs/1504 + +mv /var/www/swad/asg/LTI/0/2/VIDDA /var/www/swad/crs/1505 +mv /var/www/html/asg/LTI/0/2/VIDDA /var/www/html/crs/1505 + +mv /var/www/swad/asg/LTI/1/1/LE1CD /var/www/swad/crs/1506 +mv /var/www/html/asg/LTI/1/1/LE1CD /var/www/html/crs/1506 + +mv /var/www/swad/asg/LTI/2/2/CR /var/www/swad/crs/1507 +mv /var/www/html/asg/LTI/2/2/CR /var/www/html/crs/1507 + +mv /var/www/swad/asg/LTI/2/1/DAT /var/www/swad/crs/1508 +mv /var/www/html/asg/LTI/2/1/DAT /var/www/html/crs/1508 + +mv /var/www/swad/asg/LTI/2/2/T2BAF /var/www/swad/crs/1509 +mv /var/www/html/asg/LTI/2/2/T2BAF /var/www/html/crs/1509 + +mv /var/www/swad/asg/LTI/2/2/T2I /var/www/swad/crs/1510 +mv /var/www/html/asg/LTI/2/2/T2I /var/www/html/crs/1510 + +mv /var/www/swad/asg/LTI/2/2/T3A /var/www/swad/crs/1511 +mv /var/www/html/asg/LTI/2/2/T3A /var/www/html/crs/1511 + +mv /var/www/swad/asg/LTI/2/2/T3ABC /var/www/swad/crs/1512 +mv /var/www/html/asg/LTI/2/2/T3ABC /var/www/html/crs/1512 + +mv /var/www/swad/asg/LTI/2/2/T3ABIB /var/www/swad/crs/1513 +mv /var/www/html/asg/LTI/2/2/T3ABIB /var/www/html/crs/1513 + +mv /var/www/swad/asg/LTI/2/2/T3ABIC /var/www/swad/crs/1514 +mv /var/www/html/asg/LTI/2/2/T3ABIC /var/www/html/crs/1514 + +mv /var/www/swad/asg/LTI/2/1/TPTA /var/www/swad/crs/1515 +mv /var/www/html/asg/LTI/2/1/TPTA /var/www/html/crs/1515 + +mv /var/www/swad/asg/LTI/2/1/TPTF /var/www/swad/crs/1516 +mv /var/www/html/asg/LTI/2/1/TPTF /var/www/html/crs/1516 + +mv /var/www/swad/asg/LTI/3/2/IAT /var/www/swad/crs/1517 +mv /var/www/html/asg/LTI/3/2/IAT /var/www/html/crs/1517 + +mv /var/www/swad/asg/LTI/3/2/IATBDF /var/www/swad/crs/1518 +mv /var/www/html/asg/LTI/3/2/IATBDF /var/www/html/crs/1518 + +mv /var/www/swad/asg/LTI/3/2/IATCE /var/www/swad/crs/1519 +mv /var/www/html/asg/LTI/3/2/IATCE /var/www/html/crs/1519 + +mv /var/www/swad/asg/LTI/3/2/PTB /var/www/swad/crs/1520 +mv /var/www/html/asg/LTI/3/2/PTB /var/www/html/crs/1520 + +mv /var/www/swad/asg/LTI/3/2/TISA /var/www/swad/crs/1521 +mv /var/www/html/asg/LTI/3/2/TISA /var/www/html/crs/1521 + +mv /var/www/swad/asg/LTI/3/1/T1CAA /var/www/swad/crs/1522 +mv /var/www/html/asg/LTI/3/1/T1CAA /var/www/html/crs/1522 + +mv /var/www/swad/asg/LTI/3/1/T4BAA /var/www/swad/crs/1523 +mv /var/www/html/asg/LTI/3/1/T4BAA /var/www/html/crs/1523 + +mv /var/www/swad/asg/LTI/3/1/T4BAF /var/www/swad/crs/1524 +mv /var/www/html/asg/LTI/3/1/T4BAF /var/www/html/crs/1524 + +mv /var/www/swad/asg/LTI/3/1/T5A /var/www/swad/crs/1525 +mv /var/www/html/asg/LTI/3/1/T5A /var/www/html/crs/1525 + +mv /var/www/swad/asg/LTI/3/1/T5ABF /var/www/swad/crs/1526 +mv /var/www/html/asg/LTI/3/1/T5ABF /var/www/html/crs/1526 + +mv /var/www/swad/asg/LTI/3/2/T5ABFC /var/www/swad/crs/1527 +mv /var/www/html/asg/LTI/3/2/T5ABFC /var/www/html/crs/1527 + +mv /var/www/swad/asg/LTI/3/2/T7EA /var/www/swad/crs/1528 +mv /var/www/html/asg/LTI/3/2/T7EA /var/www/html/crs/1528 + +mv /var/www/swad/asg/LTI/4/0/ICA /var/www/swad/crs/1529 +mv /var/www/html/asg/LTI/4/0/ICA /var/www/html/crs/1529 + +mv /var/www/swad/asg/LTI/4/1/T4B /var/www/swad/crs/1530 +mv /var/www/html/asg/LTI/4/1/T4B /var/www/html/crs/1530 + +mv /var/www/swad/asg/LTI/4/1/T4CAA /var/www/swad/crs/1531 +mv /var/www/html/asg/LTI/4/1/T4CAA /var/www/html/crs/1531 + +mv /var/www/swad/asg/LTI/4/1/T8B /var/www/swad/crs/1532 +mv /var/www/html/asg/LTI/4/1/T8B /var/www/html/crs/1532 + +mv /var/www/swad/asg/LTI/4/1/T8BAA /var/www/swad/crs/1533 +mv /var/www/html/asg/LTI/4/1/T8BAA /var/www/html/crs/1533 + +mv /var/www/swad/asg/LTI/4/1/T8I /var/www/swad/crs/1534 +mv /var/www/html/asg/LTI/4/1/T8I /var/www/html/crs/1534 + +mv /var/www/swad/asg/LTI/4/1/T9A /var/www/swad/crs/1535 +mv /var/www/html/asg/LTI/4/1/T9A /var/www/html/crs/1535 + +mv /var/www/swad/asg/LTI/4/2/T9ABFL /var/www/swad/crs/1536 +mv /var/www/html/asg/LTI/4/2/T9ABFL /var/www/html/crs/1536 + +mv /var/www/swad/asg/LTI/4/2/T11EA /var/www/swad/crs/1537 +mv /var/www/html/asg/LTI/4/2/T11EA /var/www/html/crs/1537 + +mv /var/www/swad/asg/LTI/4/1/T12 /var/www/swad/crs/1538 +mv /var/www/html/asg/LTI/4/1/T12 /var/www/html/crs/1538 + +mv /var/www/swad/asg/LTI/4/2/T13EA /var/www/swad/crs/1539 +mv /var/www/html/asg/LTI/4/2/T13EA /var/www/html/crs/1539 + +mv /var/www/swad/asg/M/0/2/LD /var/www/swad/crs/1540 +mv /var/www/html/asg/M/0/2/LD /var/www/html/crs/1540 + +mv /var/www/swad/asg/M/0/2/NSAFC /var/www/swad/crs/1541 +mv /var/www/html/asg/M/0/2/NSAFC /var/www/html/crs/1541 + +mv /var/www/swad/asg/M/3/2/NTAE /var/www/swad/crs/1542 +mv /var/www/html/asg/M/3/2/NTAE /var/www/html/crs/1542 + +mv /var/www/swad/asg/M/3/2/OET /var/www/swad/crs/1543 +mv /var/www/html/asg/M/3/2/OET /var/www/html/crs/1543 + +mv /var/www/swad/asg/M/3/1/PM1 /var/www/swad/crs/1544 +mv /var/www/html/asg/M/3/1/PM1 /var/www/html/crs/1544 + +mv /var/www/swad/asg/M/3/0/SE /var/www/swad/crs/1545 +mv /var/www/html/asg/M/3/0/SE /var/www/html/crs/1545 + +mv /var/www/swad/asg/MC/0/2/TMEE /var/www/swad/crs/1546 +mv /var/www/html/asg/MC/0/2/TMEE /var/www/html/crs/1546 + +mv /var/www/swad/asg/MC/1/0/PEDEE /var/www/swad/crs/1547 +mv /var/www/html/asg/MC/1/0/PEDEE /var/www/html/crs/1547 + +mv /var/www/swad/asg/MC/3/1/OCE /var/www/swad/crs/1548 +mv /var/www/html/asg/MC/3/1/OCE /var/www/html/crs/1548 + +mv /var/www/swad/asg/MML/1/1/IEDI /var/www/swad/crs/1549 +mv /var/www/html/asg/MML/1/1/IEDI /var/www/html/crs/1549 + +mv /var/www/swad/asg/MAL/1/1/DIL /var/www/swad/crs/1550 +mv /var/www/html/asg/MAL/1/1/DIL /var/www/html/crs/1550 + +mv /var/www/swad/asg/MAL/3/1/NTAE /var/www/swad/crs/1551 +mv /var/www/html/asg/MAL/3/1/NTAE /var/www/html/crs/1551 + +mv /var/www/swad/asg/MAL/3/1/NTAEA /var/www/swad/crs/1552 +mv /var/www/html/asg/MAL/3/1/NTAEA /var/www/html/crs/1552 + +mv /var/www/swad/asg/MAL/3/2/PM2 /var/www/swad/crs/1553 +mv /var/www/html/asg/MAL/3/2/PM2 /var/www/html/crs/1553 + +mv /var/www/swad/asg/MAL/3/1/TETLOE /var/www/swad/crs/1554 +mv /var/www/html/asg/MAL/3/1/TETLOE /var/www/html/crs/1554 + +mv /var/www/swad/asg/MALC/1/1/AFNL /var/www/swad/crs/1555 +mv /var/www/html/asg/MALC/1/1/AFNL /var/www/html/crs/1555 + +mv /var/www/swad/asg/MALC/1/1/CLC /var/www/swad/crs/1556 +mv /var/www/html/asg/MALC/1/1/CLC /var/www/html/crs/1556 + +mv /var/www/swad/asg/MALC/1/0/DG /var/www/swad/crs/1557 +mv /var/www/html/asg/MALC/1/0/DG /var/www/html/crs/1557 + +mv /var/www/swad/asg/MALC/1/2/EMSC /var/www/swad/crs/1558 +mv /var/www/html/asg/MALC/1/2/EMSC /var/www/html/crs/1558 + +mv /var/www/swad/asg/MALC/1/2/EPSC /var/www/swad/crs/1559 +mv /var/www/html/asg/MALC/1/2/EPSC /var/www/html/crs/1559 + +mv /var/www/swad/asg/MALC/1/1/LI /var/www/swad/crs/1560 +mv /var/www/html/asg/MALC/1/1/LI /var/www/html/crs/1560 + +mv /var/www/swad/asg/MALC/1/0/L /var/www/swad/crs/1561 +mv /var/www/html/asg/MALC/1/0/L /var/www/html/crs/1561 + +mv /var/www/swad/asg/MALC/1/0/PEDEE /var/www/swad/crs/1562 +mv /var/www/html/asg/MALC/1/0/PEDEE /var/www/html/crs/1562 + +mv /var/www/swad/asg/MALC/1/2/PL /var/www/swad/crs/1563 +mv /var/www/html/asg/MALC/1/2/PL /var/www/html/crs/1563 + +mv /var/www/swad/asg/MALC/1/1/SE /var/www/swad/crs/1564 +mv /var/www/html/asg/MALC/1/1/SE /var/www/html/crs/1564 + +mv /var/www/swad/asg/MALC/1/2/TICE /var/www/swad/crs/1565 +mv /var/www/html/asg/MALC/1/2/TICE /var/www/html/crs/1565 + +mv /var/www/swad/asg/MALC/2/1/ANL /var/www/swad/crs/1566 +mv /var/www/html/asg/MALC/2/1/ANL /var/www/html/crs/1566 + +mv /var/www/swad/asg/MALC/2/2/BPEE /var/www/swad/crs/1567 +mv /var/www/html/asg/MALC/2/2/BPEE /var/www/html/crs/1567 + +mv /var/www/swad/asg/MALC/2/1/BPEE /var/www/swad/crs/1568 +mv /var/www/html/asg/MALC/2/1/BPEE /var/www/html/crs/1568 + +mv /var/www/swad/asg/MALC/2/0/DHL /var/www/swad/crs/1569 +mv /var/www/html/asg/MALC/2/0/DHL /var/www/html/crs/1569 + +mv /var/www/swad/asg/MALC/2/1/DIL /var/www/swad/crs/1570 +mv /var/www/html/asg/MALC/2/1/DIL /var/www/html/crs/1570 + +mv /var/www/swad/asg/MALC/2/2/EA /var/www/swad/crs/1571 +mv /var/www/html/asg/MALC/2/2/EA /var/www/html/crs/1571 + +mv /var/www/swad/asg/MALC/2/2/LD /var/www/swad/crs/1572 +mv /var/www/html/asg/MALC/2/2/LD /var/www/html/crs/1572 + +mv /var/www/swad/asg/MALC/2/1/NTAE /var/www/swad/crs/1573 +mv /var/www/html/asg/MALC/2/1/NTAE /var/www/html/crs/1573 + +mv /var/www/swad/asg/MALC/2/0/PAL /var/www/swad/crs/1574 +mv /var/www/html/asg/MALC/2/0/PAL /var/www/html/crs/1574 + +mv /var/www/swad/asg/MALC/2/2/TAIL /var/www/swad/crs/1575 +mv /var/www/html/asg/MALC/2/2/TAIL /var/www/html/crs/1575 + +mv /var/www/swad/asg/MALC/2/0/TETAL /var/www/swad/crs/1576 +mv /var/www/html/asg/MALC/2/0/TETAL /var/www/html/crs/1576 + +mv /var/www/swad/asg/MALC/2/0/TETLOE /var/www/swad/crs/1577 +mv /var/www/html/asg/MALC/2/0/TETLOE /var/www/html/crs/1577 + +mv /var/www/swad/asg/MALC/3/1/AEPL /var/www/swad/crs/1578 +mv /var/www/html/asg/MALC/3/1/AEPL /var/www/html/crs/1578 + +mv /var/www/swad/asg/MALC/3/1/AVT /var/www/swad/crs/1579 +mv /var/www/html/asg/MALC/3/1/AVT /var/www/html/crs/1579 + +mv /var/www/swad/asg/MALC/3/1/EL /var/www/swad/crs/1580 +mv /var/www/html/asg/MALC/3/1/EL /var/www/html/crs/1580 + +mv /var/www/swad/asg/MALC/3/1/FPAA /var/www/swad/crs/1581 +mv /var/www/html/asg/MALC/3/1/FPAA /var/www/html/crs/1581 + +mv /var/www/swad/asg/MALC/3/1/OCE /var/www/swad/crs/1582 +mv /var/www/html/asg/MALC/3/1/OCE /var/www/html/crs/1582 + +mv /var/www/swad/asg/MALC/3/2/P /var/www/swad/crs/1583 +mv /var/www/html/asg/MALC/3/2/P /var/www/html/crs/1583 + +mv /var/www/swad/asg/MALC/3/2/PITAL /var/www/swad/crs/1584 +mv /var/www/html/asg/MALC/3/2/PITAL /var/www/html/crs/1584 + +mv /var/www/swad/asg/MALC/3/1/SAC /var/www/swad/crs/1585 +mv /var/www/html/asg/MALC/3/1/SAC /var/www/html/crs/1585 + +mv /var/www/swad/asg/MALC/3/2/SL /var/www/swad/crs/1586 +mv /var/www/html/asg/MALC/3/2/SL /var/www/html/crs/1586 + +mv /var/www/swad/asg/MALC/3/1/TTPAL /var/www/swad/crs/1587 +mv /var/www/html/asg/MALC/3/1/TTPAL /var/www/html/crs/1587 + +mv /var/www/swad/asg/MEE/1/2/MEEA /var/www/swad/crs/1588 +mv /var/www/html/asg/MEE/1/2/MEEA /var/www/html/crs/1588 + +mv /var/www/swad/asg/MEE/1/2/MEEC /var/www/swad/crs/1589 +mv /var/www/html/asg/MEE/1/2/MEEC /var/www/html/crs/1589 + +mv /var/www/swad/asg/MEE/2/1/AEEDA /var/www/swad/crs/1590 +mv /var/www/html/asg/MEE/2/1/AEEDA /var/www/html/crs/1590 + +mv /var/www/swad/asg/MEE/2/1/AEEDM /var/www/swad/crs/1591 +mv /var/www/html/asg/MEE/2/1/AEEDM /var/www/html/crs/1591 + +mv /var/www/swad/asg/MEE/3/2/ADOEE /var/www/swad/crs/1592 +mv /var/www/html/asg/MEE/3/2/ADOEE /var/www/html/crs/1592 + +mv /var/www/swad/asg/MEE/3/2/MNEE /var/www/swad/crs/1593 +mv /var/www/html/asg/MEE/3/2/MNEE /var/www/html/crs/1593 + +mv /var/www/swad/asg/MEE/3/2/NTAE /var/www/swad/crs/1594 +mv /var/www/html/asg/MEE/3/2/NTAE /var/www/html/crs/1594 + +mv /var/www/swad/asg/MEE/3/1/P1 /var/www/swad/crs/1595 +mv /var/www/html/asg/MEE/3/1/P1 /var/www/html/crs/1595 + +mv /var/www/swad/asg/MEE/3/2/SPM2 /var/www/swad/crs/1596 +mv /var/www/html/asg/MEE/3/2/SPM2 /var/www/html/crs/1596 + +mv /var/www/swad/asg/MEEC/1/0/AEEDM /var/www/swad/crs/1597 +mv /var/www/html/asg/MEEC/1/0/AEEDM /var/www/html/crs/1597 + +mv /var/www/swad/asg/MEEC/1/2/AEEDV /var/www/swad/crs/1598 +mv /var/www/html/asg/MEEC/1/2/AEEDV /var/www/html/crs/1598 + +mv /var/www/swad/asg/MEEC/1/0/DG /var/www/swad/crs/1599 +mv /var/www/html/asg/MEEC/1/0/DG /var/www/html/crs/1599 + +mv /var/www/swad/asg/MEEC/1/2/IAPV /var/www/swad/crs/1600 +mv /var/www/html/asg/MEEC/1/2/IAPV /var/www/html/crs/1600 + +mv /var/www/swad/asg/MEEC/1/1/JMAEE /var/www/swad/crs/1601 +mv /var/www/html/asg/MEEC/1/1/JMAEE /var/www/html/crs/1601 + +mv /var/www/swad/asg/MEEC/1/0/PEDEE /var/www/swad/crs/1602 +mv /var/www/html/asg/MEEC/1/0/PEDEE /var/www/html/crs/1602 + +mv /var/www/swad/asg/MEEC/1/1/SE /var/www/swad/crs/1603 +mv /var/www/html/asg/MEEC/1/1/SE /var/www/html/crs/1603 + +mv /var/www/swad/asg/MEEC/1/2/TICE /var/www/swad/crs/1604 +mv /var/www/html/asg/MEEC/1/2/TICE /var/www/html/crs/1604 + +mv /var/www/swad/asg/MEEC/1/1/TCP /var/www/swad/crs/1605 +mv /var/www/html/asg/MEEC/1/1/TCP /var/www/html/crs/1605 + +mv /var/www/swad/asg/MEEC/2/1/AEEDA /var/www/swad/crs/1606 +mv /var/www/html/asg/MEEC/2/1/AEEDA /var/www/html/crs/1606 + +mv /var/www/swad/asg/MEEC/2/1/AEEDM /var/www/swad/crs/1607 +mv /var/www/html/asg/MEEC/2/1/AEEDM /var/www/html/crs/1607 + +mv /var/www/swad/asg/MEEC/2/2/BPEE /var/www/swad/crs/1608 +mv /var/www/html/asg/MEEC/2/2/BPEE /var/www/html/crs/1608 + +mv /var/www/swad/asg/MEEC/2/1/BPEE /var/www/swad/crs/1609 +mv /var/www/html/asg/MEEC/2/1/BPEE /var/www/html/crs/1609 + +mv /var/www/swad/asg/MEEC/2/2/EFANEE /var/www/swad/crs/1610 +mv /var/www/html/asg/MEEC/2/2/EFANEE /var/www/html/crs/1610 + +mv /var/www/swad/asg/MEEC/2/2/EPM /var/www/swad/crs/1611 +mv /var/www/html/asg/MEEC/2/2/EPM /var/www/html/crs/1611 + +mv /var/www/swad/asg/MEEC/2/2/IPEP /var/www/swad/crs/1612 +mv /var/www/html/asg/MEEC/2/2/IPEP /var/www/html/crs/1612 + +mv /var/www/swad/asg/MEEC/2/1/NTAE /var/www/swad/crs/1613 +mv /var/www/html/asg/MEEC/2/1/NTAE /var/www/html/crs/1613 + +mv /var/www/swad/asg/MEEC/2/1/TMEE /var/www/swad/crs/1614 +mv /var/www/html/asg/MEEC/2/1/TMEE /var/www/html/crs/1614 + +mv /var/www/swad/asg/MEEC/2/0/TETLE /var/www/swad/crs/1615 +mv /var/www/html/asg/MEEC/2/0/TETLE /var/www/html/crs/1615 + +mv /var/www/swad/asg/MEEC/3/1/ADOEE /var/www/swad/crs/1616 +mv /var/www/html/asg/MEEC/3/1/ADOEE /var/www/html/crs/1616 + +mv /var/www/swad/asg/MEEC/3/2/BPEII /var/www/swad/crs/1617 +mv /var/www/html/asg/MEEC/3/2/BPEII /var/www/html/crs/1617 + +mv /var/www/swad/asg/MEEC/3/1/ELANEE /var/www/swad/crs/1618 +mv /var/www/html/asg/MEEC/3/1/ELANEE /var/www/html/crs/1618 + +mv /var/www/swad/asg/MEEC/3/1/EMANEE /var/www/swad/crs/1619 +mv /var/www/html/asg/MEEC/3/1/EMANEE /var/www/html/crs/1619 + +mv /var/www/swad/asg/MEEC/3/1/MEE /var/www/swad/crs/1620 +mv /var/www/html/asg/MEEC/3/1/MEE /var/www/html/crs/1620 + +mv /var/www/swad/asg/MEEC/3/1/OCE /var/www/swad/crs/1621 +mv /var/www/html/asg/MEEC/3/1/OCE /var/www/html/crs/1621 + +mv /var/www/swad/asg/MEEC/3/1/OET /var/www/swad/crs/1622 +mv /var/www/html/asg/MEEC/3/1/OET /var/www/html/crs/1622 + +mv /var/www/swad/asg/MEEC/3/2/P /var/www/swad/crs/1623 +mv /var/www/html/asg/MEEC/3/2/P /var/www/html/crs/1623 + +mv /var/www/swad/asg/MEF/0/2/BMAF /var/www/swad/crs/1624 +mv /var/www/html/asg/MEF/0/2/BMAF /var/www/html/crs/1624 + +mv /var/www/swad/asg/MEF/0/1/DDI /var/www/swad/crs/1625 +mv /var/www/html/asg/MEF/0/1/DDI /var/www/html/crs/1625 + +mv /var/www/swad/asg/MEF/0/1/FEB /var/www/swad/crs/1626 +mv /var/www/html/asg/MEF/0/1/FEB /var/www/html/crs/1626 + +mv /var/www/swad/asg/MEF/1/1/EADC /var/www/swad/crs/1627 +mv /var/www/html/asg/MEF/1/1/EADC /var/www/html/crs/1627 + +mv /var/www/swad/asg/MEF/1/1/EFB /var/www/swad/crs/1628 +mv /var/www/html/asg/MEF/1/1/EFB /var/www/html/crs/1628 + +mv /var/www/swad/asg/MEF/1/2/EFD1A /var/www/swad/crs/1629 +mv /var/www/html/asg/MEF/1/2/EFD1A /var/www/html/crs/1629 + +mv /var/www/swad/asg/MEF/1/2/EFD1C /var/www/swad/crs/1630 +mv /var/www/html/asg/MEF/1/2/EFD1C /var/www/html/crs/1630 + +mv /var/www/swad/asg/MEF/1/1/BBFM /var/www/swad/crs/1631 +mv /var/www/html/asg/MEF/1/1/BBFM /var/www/html/crs/1631 + +mv /var/www/swad/asg/MEF/2/1/EFD2 /var/www/swad/crs/1632 +mv /var/www/html/asg/MEF/2/1/EFD2 /var/www/html/crs/1632 + +mv /var/www/swad/asg/MEF/2/1/DJP /var/www/swad/crs/1633 +mv /var/www/html/asg/MEF/2/1/DJP /var/www/html/crs/1633 + +mv /var/www/swad/asg/MEF/2/2/DD /var/www/swad/crs/1634 +mv /var/www/html/asg/MEF/2/2/DD /var/www/html/crs/1634 + +mv /var/www/swad/asg/MEF/2/1/OCEC /var/www/swad/crs/1635 +mv /var/www/html/asg/MEF/2/1/OCEC /var/www/html/crs/1635 + +mv /var/www/swad/asg/MEF/2/2/TPAFAC /var/www/swad/crs/1636 +mv /var/www/html/asg/MEF/2/2/TPAFAC /var/www/html/crs/1636 + +mv /var/www/swad/asg/MEF/2/2/DLL /var/www/swad/crs/1637 +mv /var/www/html/asg/MEF/2/2/DLL /var/www/html/crs/1637 + +mv /var/www/swad/asg/MEF/3/1/EFD3 /var/www/swad/crs/1638 +mv /var/www/html/asg/MEF/3/1/EFD3 /var/www/html/crs/1638 + +mv /var/www/swad/asg/MEF/3/1/ECD /var/www/swad/crs/1639 +mv /var/www/html/asg/MEF/3/1/ECD /var/www/html/crs/1639 + +mv /var/www/swad/asg/MEF/3/1/IEDIAC /var/www/swad/crs/1640 +mv /var/www/html/asg/MEF/3/1/IEDIAC /var/www/html/crs/1640 + +mv /var/www/swad/asg/MEF/3/1/NTAE /var/www/swad/crs/1641 +mv /var/www/html/asg/MEF/3/1/NTAE /var/www/html/crs/1641 + +mv /var/www/swad/asg/MEF/3/1/NTAEC /var/www/swad/crs/1642 +mv /var/www/html/asg/MEF/3/1/NTAEC /var/www/html/crs/1642 + +mv /var/www/swad/asg/MEF/3/2/PMI3 /var/www/swad/crs/1643 +mv /var/www/html/asg/MEF/3/2/PMI3 /var/www/html/crs/1643 + +mv /var/www/swad/asg/MEF/3/2/PEFG5 /var/www/swad/crs/1644 +mv /var/www/html/asg/MEF/3/2/PEFG5 /var/www/html/crs/1644 + +mv /var/www/swad/asg/MEF/3/2/PM2EFV /var/www/swad/crs/1645 +mv /var/www/html/asg/MEF/3/2/PM2EFV /var/www/html/crs/1645 + +mv /var/www/swad/asg/MEF/3/2/P2 /var/www/swad/crs/1646 +mv /var/www/html/asg/MEF/3/2/P2 /var/www/html/crs/1646 + +mv /var/www/swad/asg/MEFC/1/1/IDI /var/www/swad/crs/1647 +mv /var/www/html/asg/MEFC/1/1/IDI /var/www/html/crs/1647 + +mv /var/www/swad/asg/MEFC/1/2/MEF /var/www/swad/crs/1648 +mv /var/www/html/asg/MEFC/1/2/MEF /var/www/html/crs/1648 + +mv /var/www/swad/asg/MEFC/2/2/EFB /var/www/swad/crs/1649 +mv /var/www/html/asg/MEFC/2/2/EFB /var/www/html/crs/1649 + +mv /var/www/swad/asg/MEFC/3/1/IDC /var/www/swad/crs/1650 +mv /var/www/html/asg/MEFC/3/1/IDC /var/www/html/crs/1650 + +mv /var/www/swad/asg/MEFM/0/1/AFMA /var/www/swad/crs/1651 +mv /var/www/html/asg/MEFM/0/1/AFMA /var/www/html/crs/1651 + +mv /var/www/swad/asg/MEFM/0/2/AFRO /var/www/swad/crs/1652 +mv /var/www/html/asg/MEFM/0/2/AFRO /var/www/html/crs/1652 + +mv /var/www/swad/asg/MEFM/0/2/DCEFEP /var/www/swad/crs/1653 +mv /var/www/html/asg/MEFM/0/2/DCEFEP /var/www/html/crs/1653 + +mv /var/www/swad/asg/MEFM/0/2/HAF /var/www/swad/crs/1654 +mv /var/www/html/asg/MEFM/0/2/HAF /var/www/html/crs/1654 + +mv /var/www/swad/asg/MEFM/0/2/PREFD /var/www/swad/crs/1655 +mv /var/www/html/asg/MEFM/0/2/PREFD /var/www/html/crs/1655 + +mv /var/www/swad/asg/MEFM/2/0/DEF /var/www/swad/crs/1656 +mv /var/www/html/asg/MEFM/2/0/DEF /var/www/html/crs/1656 + +mv /var/www/swad/asg/MEFM/2/1/ECC /var/www/swad/crs/1657 +mv /var/www/html/asg/MEFM/2/1/ECC /var/www/html/crs/1657 + +mv /var/www/swad/asg/MEFM/2/2/TPAF /var/www/swad/crs/1658 +mv /var/www/html/asg/MEFM/2/2/TPAF /var/www/html/crs/1658 + +mv /var/www/swad/asg/MEFM/3/1/JMEF /var/www/swad/crs/1659 +mv /var/www/html/asg/MEFM/3/1/JMEF /var/www/html/crs/1659 + +mv /var/www/swad/asg/MEFM/3/2/P /var/www/swad/crs/1660 +mv /var/www/html/asg/MEFM/3/2/P /var/www/html/crs/1660 + +mv /var/www/swad/asg/MEFM/3/2/PE /var/www/swad/crs/1661 +mv /var/www/html/asg/MEFM/3/2/PE /var/www/html/crs/1661 + +mv /var/www/swad/asg/MEI/1/0/DGA /var/www/swad/crs/1662 +mv /var/www/html/asg/MEI/1/0/DGA /var/www/html/crs/1662 + +mv /var/www/swad/asg/MEI/1/2/EMIC /var/www/swad/crs/1663 +mv /var/www/html/asg/MEI/1/2/EMIC /var/www/html/crs/1663 + +mv /var/www/swad/asg/MEI/2/0/BPEEA /var/www/swad/crs/1664 +mv /var/www/html/asg/MEI/2/0/BPEEA /var/www/html/crs/1664 + +mv /var/www/swad/asg/MEI/2/1/DEMDA /var/www/swad/crs/1665 +mv /var/www/html/asg/MEI/2/1/DEMDA /var/www/html/crs/1665 + +mv /var/www/swad/asg/MEI/2/2/EMIT /var/www/swad/crs/1666 +mv /var/www/html/asg/MEI/2/2/EMIT /var/www/html/crs/1666 + +mv /var/www/swad/asg/MEI/2/1/FDEEI /var/www/swad/crs/1667 +mv /var/www/html/asg/MEI/2/1/FDEEI /var/www/html/crs/1667 + +mv /var/www/swad/asg/MEI/2/1/HIE /var/www/swad/crs/1668 +mv /var/www/html/asg/MEI/2/1/HIE /var/www/html/crs/1668 + +mv /var/www/swad/asg/MEI/3/1/LI /var/www/swad/crs/1669 +mv /var/www/html/asg/MEI/3/1/LI /var/www/html/crs/1669 + +mv /var/www/swad/asg/MEI/3/1/NTAE /var/www/swad/crs/1670 +mv /var/www/html/asg/MEI/3/1/NTAE /var/www/html/crs/1670 + +mv /var/www/swad/asg/MEI/3/1/NTAEA /var/www/swad/crs/1671 +mv /var/www/html/asg/MEI/3/1/NTAEA /var/www/html/crs/1671 + +mv /var/www/swad/asg/MEI/3/1/NTAEC /var/www/swad/crs/1672 +mv /var/www/html/asg/MEI/3/1/NTAEC /var/www/html/crs/1672 + +mv /var/www/swad/asg/MEI/3/2/P1 /var/www/swad/crs/1673 +mv /var/www/html/asg/MEI/3/2/P1 /var/www/html/crs/1673 + +mv /var/www/swad/asg/MEI/3/2/PM2 /var/www/swad/crs/1674 +mv /var/www/html/asg/MEI/3/2/PM2 /var/www/html/crs/1674 + +mv /var/www/swad/asg/MEI/3/1/SEA /var/www/swad/crs/1675 +mv /var/www/html/asg/MEI/3/1/SEA /var/www/html/crs/1675 + +mv /var/www/swad/asg/MEI/3/1/SE /var/www/swad/crs/1676 +mv /var/www/html/asg/MEI/3/1/SE /var/www/html/crs/1676 + +mv /var/www/swad/asg/MEI/3/1/TI /var/www/swad/crs/1677 +mv /var/www/html/asg/MEI/3/1/TI /var/www/html/crs/1677 + +mv /var/www/swad/asg/MEIC/1/2/LI /var/www/swad/crs/1678 +mv /var/www/html/asg/MEIC/1/2/LI /var/www/html/crs/1678 + +mv /var/www/swad/asg/MEIC/2/0/DHLD /var/www/swad/crs/1679 +mv /var/www/html/asg/MEIC/2/0/DHLD /var/www/html/crs/1679 + +mv /var/www/swad/asg/MEIC/3/1/JDTI /var/www/swad/crs/1680 +mv /var/www/html/asg/MEIC/3/1/JDTI /var/www/html/crs/1680 + +mv /var/www/swad/asg/MEIM/3/1/EIEEI /var/www/swad/crs/1681 +mv /var/www/html/asg/MEIM/3/1/EIEEI /var/www/html/crs/1681 + +mv /var/www/swad/asg/MEM/0/1/AEM /var/www/swad/crs/1682 +mv /var/www/html/asg/MEM/0/1/AEM /var/www/html/crs/1682 + +mv /var/www/swad/asg/MEM/1/0/DGA /var/www/swad/crs/1683 +mv /var/www/html/asg/MEM/1/0/DGA /var/www/html/crs/1683 + +mv /var/www/swad/asg/MEM/1/0/FI /var/www/swad/crs/1684 +mv /var/www/html/asg/MEM/1/0/FI /var/www/html/crs/1684 + +mv /var/www/swad/asg/MEM/1/2/FRD /var/www/swad/crs/1685 +mv /var/www/html/asg/MEM/1/2/FRD /var/www/html/crs/1685 + +mv /var/www/swad/asg/MEM/1/2/MRMDM /var/www/swad/crs/1686 +mv /var/www/html/asg/MEM/1/2/MRMDM /var/www/html/crs/1686 + +mv /var/www/swad/asg/MEM/2/0/AI /var/www/swad/crs/1687 +mv /var/www/html/asg/MEM/2/0/AI /var/www/html/crs/1687 + +mv /var/www/swad/asg/MEM/2/1/LLD /var/www/swad/crs/1688 +mv /var/www/html/asg/MEM/2/1/LLD /var/www/html/crs/1688 + +mv /var/www/swad/asg/MEM/2/2/MICMNT /var/www/swad/crs/1689 +mv /var/www/html/asg/MEM/2/2/MICMNT /var/www/html/crs/1689 + +mv /var/www/swad/asg/MEM/3/1/DEMM /var/www/swad/crs/1690 +mv /var/www/html/asg/MEM/3/1/DEMM /var/www/html/crs/1690 + +mv /var/www/swad/asg/MEM/3/1/NTAE /var/www/swad/crs/1691 +mv /var/www/html/asg/MEM/3/1/NTAE /var/www/html/crs/1691 + +mv /var/www/swad/asg/MEM/3/2/P2A /var/www/swad/crs/1692 +mv /var/www/html/asg/MEM/3/2/P2A /var/www/html/crs/1692 + +mv /var/www/swad/asg/MEM/3/2/PM2 /var/www/swad/crs/1693 +mv /var/www/html/asg/MEM/3/2/PM2 /var/www/html/crs/1693 + +mv /var/www/swad/asg/MEMM/2/2/EFD /var/www/swad/crs/1694 +mv /var/www/html/asg/MEMM/2/2/EFD /var/www/html/crs/1694 + +mv /var/www/swad/asg/MEP/1/1/EADB /var/www/swad/crs/1695 +mv /var/www/html/asg/MEP/1/1/EADB /var/www/html/crs/1695 + +mv /var/www/swad/asg/MEP/1/1/EADC /var/www/swad/crs/1696 +mv /var/www/html/asg/MEP/1/1/EADC /var/www/html/crs/1696 + +mv /var/www/swad/asg/MEP/1/1/EADD /var/www/swad/crs/1697 +mv /var/www/html/asg/MEP/1/1/EADD /var/www/html/crs/1697 + +mv /var/www/swad/asg/MEP/2/0/BPEEA /var/www/swad/crs/1698 +mv /var/www/html/asg/MEP/2/0/BPEEA /var/www/html/crs/1698 + +mv /var/www/swad/asg/MEP/2/0/BPEEC /var/www/swad/crs/1699 +mv /var/www/html/asg/MEP/2/0/BPEEC /var/www/html/crs/1699 + +mv /var/www/swad/asg/MEP/2/0/BPEE /var/www/swad/crs/1700 +mv /var/www/html/asg/MEP/2/0/BPEE /var/www/html/crs/1700 + +mv /var/www/swad/asg/MEP/2/0/LLDC /var/www/swad/crs/1701 +mv /var/www/html/asg/MEP/2/0/LLDC /var/www/html/crs/1701 + +mv /var/www/swad/asg/MEP/2/1/OCEC /var/www/swad/crs/1702 +mv /var/www/html/asg/MEP/2/1/OCEC /var/www/html/crs/1702 + +mv /var/www/swad/asg/MEP/2/1/OGCE /var/www/swad/crs/1703 +mv /var/www/html/asg/MEP/2/1/OGCE /var/www/html/crs/1703 + +mv /var/www/swad/asg/MEP/3/2/IEDIA /var/www/swad/crs/1704 +mv /var/www/html/asg/MEP/3/2/IEDIA /var/www/html/crs/1704 + +mv /var/www/swad/asg/MEP/3/2/NTAE /var/www/swad/crs/1705 +mv /var/www/html/asg/MEP/3/2/NTAE /var/www/html/crs/1705 + +mv /var/www/swad/asg/MEP/3/2/NTAEA /var/www/swad/crs/1706 +mv /var/www/html/asg/MEP/3/2/NTAEA /var/www/html/crs/1706 + +mv /var/www/swad/asg/MEP/3/2/NTAEC /var/www/swad/crs/1707 +mv /var/www/html/asg/MEP/3/2/NTAEC /var/www/html/crs/1707 + +mv /var/www/swad/asg/MEP/3/2/NTAED /var/www/swad/crs/1708 +mv /var/www/html/asg/MEP/3/2/NTAED /var/www/html/crs/1708 + +mv /var/www/swad/asg/MEP/3/2/PM2A /var/www/swad/crs/1709 +mv /var/www/html/asg/MEP/3/2/PM2A /var/www/html/crs/1709 + +mv /var/www/swad/asg/MEP/3/2/PM2B /var/www/swad/crs/1710 +mv /var/www/html/asg/MEP/3/2/PM2B /var/www/html/crs/1710 + +mv /var/www/swad/asg/MEP/3/2/PM2C /var/www/swad/crs/1711 +mv /var/www/html/asg/MEP/3/2/PM2C /var/www/html/crs/1711 + +mv /var/www/swad/asg/MEP/3/2/PM2D /var/www/swad/crs/1712 +mv /var/www/html/asg/MEP/3/2/PM2D /var/www/html/crs/1712 + +mv /var/www/swad/asg/MEP/3/2/PM2E /var/www/swad/crs/1713 +mv /var/www/html/asg/MEP/3/2/PM2E /var/www/html/crs/1713 + +mv /var/www/swad/asg/MEP/3/2/PM2F /var/www/swad/crs/1714 +mv /var/www/html/asg/MEP/3/2/PM2F /var/www/html/crs/1714 + +mv /var/www/swad/asg/MEP/3/2/PM2G /var/www/swad/crs/1715 +mv /var/www/html/asg/MEP/3/2/PM2G /var/www/html/crs/1715 + +mv /var/www/swad/asg/MEP/3/2/PM2H /var/www/swad/crs/1716 +mv /var/www/html/asg/MEP/3/2/PM2H /var/www/html/crs/1716 + +mv /var/www/swad/asg/MEP/3/2/PM2I /var/www/swad/crs/1717 +mv /var/www/html/asg/MEP/3/2/PM2I /var/www/html/crs/1717 + +mv /var/www/swad/asg/MEP/3/2/SE /var/www/swad/crs/1718 +mv /var/www/html/asg/MEP/3/2/SE /var/www/html/crs/1718 + +mv /var/www/swad/asg/MEPM/2/2/EFD /var/www/swad/crs/1719 +mv /var/www/html/asg/MEPM/2/2/EFD /var/www/html/crs/1719 + +mv /var/www/swad/asg/MLE/1/1/CA /var/www/swad/crs/1720 +mv /var/www/html/asg/MLE/1/1/CA /var/www/html/crs/1720 + +mv /var/www/swad/asg/MLE/1/1/EADA /var/www/swad/crs/1721 +mv /var/www/html/asg/MLE/1/1/EADA /var/www/html/crs/1721 + +mv /var/www/swad/asg/MLE/1/1/LEC /var/www/swad/crs/1722 +mv /var/www/html/asg/MLE/1/1/LEC /var/www/html/crs/1722 + +mv /var/www/swad/asg/MLE/1/2/IEIC /var/www/swad/crs/1723 +mv /var/www/html/asg/MLE/1/2/IEIC /var/www/html/crs/1723 + +mv /var/www/swad/asg/MLE/1/2/IEIT /var/www/swad/crs/1724 +mv /var/www/html/asg/MLE/1/2/IEIT /var/www/html/crs/1724 + +mv /var/www/swad/asg/MLE/1/0/PEDEE /var/www/swad/crs/1725 +mv /var/www/html/asg/MLE/1/0/PEDEE /var/www/html/crs/1725 + +mv /var/www/swad/asg/MLE/2/0/BPEEA /var/www/swad/crs/1726 +mv /var/www/html/asg/MLE/2/0/BPEEA /var/www/html/crs/1726 + +mv /var/www/swad/asg/MLE/2/2/DIEF /var/www/swad/crs/1727 +mv /var/www/html/asg/MLE/2/2/DIEF /var/www/html/crs/1727 + +mv /var/www/swad/asg/MLE/2/1/FFA /var/www/swad/crs/1728 +mv /var/www/html/asg/MLE/2/1/FFA /var/www/html/crs/1728 + +mv /var/www/swad/asg/MLE/2/1/FIAT /var/www/swad/crs/1729 +mv /var/www/html/asg/MLE/2/1/FIAT /var/www/html/crs/1729 + +mv /var/www/swad/asg/MLE/2/1/FIC /var/www/swad/crs/1730 +mv /var/www/html/asg/MLE/2/1/FIC /var/www/html/crs/1730 + +mv /var/www/swad/asg/MLE/2/1/MSFA /var/www/swad/crs/1731 +mv /var/www/html/asg/MLE/2/1/MSFA /var/www/html/crs/1731 + +mv /var/www/swad/asg/MLE/2/1/OCEA /var/www/swad/crs/1732 +mv /var/www/html/asg/MLE/2/1/OCEA /var/www/html/crs/1732 + +mv /var/www/swad/asg/MLE/2/1/OCEC /var/www/swad/crs/1733 +mv /var/www/html/asg/MLE/2/1/OCEC /var/www/html/crs/1733 + +mv /var/www/swad/asg/MLE/3/2/DLF /var/www/swad/crs/1734 +mv /var/www/html/asg/MLE/3/2/DLF /var/www/html/crs/1734 + +mv /var/www/swad/asg/MLE/3/2/NTAEC /var/www/swad/crs/1735 +mv /var/www/html/asg/MLE/3/2/NTAEC /var/www/html/crs/1735 + +mv /var/www/swad/asg/MLE/3/2/NTAE /var/www/swad/crs/1736 +mv /var/www/html/asg/MLE/3/2/NTAE /var/www/html/crs/1736 + +mv /var/www/swad/asg/MLEM/2/2/EFD /var/www/swad/crs/1737 +mv /var/www/html/asg/MLEM/2/2/EFD /var/www/html/crs/1737 + +mv /var/www/swad/asg/MLEM/3/1/LII /var/www/swad/crs/1738 +mv /var/www/html/asg/MLEM/3/1/LII /var/www/html/crs/1738 + +mv /var/www/swad/asg/MAC/1/2/B /var/www/swad/crs/1739 +mv /var/www/html/asg/MAC/1/2/B /var/www/html/crs/1739 + +mv /var/www/swad/asg/MAT/1/0/MAT /var/www/swad/crs/1740 +mv /var/www/html/asg/MAT/1/0/MAT /var/www/html/crs/1740 + +mv /var/www/swad/asg/MDAUA/0/0/EDUA /var/www/swad/crs/1741 +mv /var/www/html/asg/MDAUA/0/0/EDUA /var/www/html/crs/1741 + +mv /var/www/swad/asg/MDCE/1/0/UEDF /var/www/swad/crs/1742 +mv /var/www/html/asg/MDCE/1/0/UEDF /var/www/html/crs/1742 + +mv /var/www/swad/asg/MDC/1/0/MDC /var/www/swad/crs/1743 +mv /var/www/html/asg/MDC/1/0/MDC /var/www/html/crs/1743 + +mv /var/www/swad/asg/MDC/1/0/MDC2 /var/www/swad/crs/1744 +mv /var/www/html/asg/MDC/1/0/MDC2 /var/www/html/crs/1744 + +mv /var/www/swad/asg/MDC/1/0/MDC3 /var/www/swad/crs/1745 +mv /var/www/html/asg/MDC/1/0/MDC3 /var/www/html/crs/1745 + +mv /var/www/swad/asg/MEO/1/0/MEO /var/www/swad/crs/1746 +mv /var/www/html/asg/MEO/1/0/MEO /var/www/html/crs/1746 + +mv /var/www/swad/asg/MEMDIS/0/0/ANAPS /var/www/swad/crs/1747 +mv /var/www/html/asg/MEMDIS/0/0/ANAPS /var/www/html/crs/1747 + +mv /var/www/swad/asg/MEMDIS/0/0/ANTPS /var/www/swad/crs/1748 +mv /var/www/html/asg/MEMDIS/0/0/ANTPS /var/www/html/crs/1748 + +mv /var/www/swad/asg/MEMDIS/0/0/AR /var/www/swad/crs/1749 +mv /var/www/html/asg/MEMDIS/0/0/AR /var/www/html/crs/1749 + +mv /var/www/swad/asg/MEMDIS/0/0/DI /var/www/swad/crs/1750 +mv /var/www/html/asg/MEMDIS/0/0/DI /var/www/html/crs/1750 + +mv /var/www/swad/asg/MEMDIS/0/0/DCDA /var/www/swad/crs/1751 +mv /var/www/html/asg/MEMDIS/0/0/DCDA /var/www/html/crs/1751 + +mv /var/www/swad/asg/MEMDIS/0/0/DGIS /var/www/swad/crs/1752 +mv /var/www/html/asg/MEMDIS/0/0/DGIS /var/www/html/crs/1752 + +mv /var/www/swad/asg/MEMDIS/0/0/DSA /var/www/swad/crs/1753 +mv /var/www/html/asg/MEMDIS/0/0/DSA /var/www/html/crs/1753 + +mv /var/www/swad/asg/MEMDIS/0/0/DDE /var/www/swad/crs/1754 +mv /var/www/html/asg/MEMDIS/0/0/DDE /var/www/html/crs/1754 + +mv /var/www/swad/asg/MEMDIS/0/0/DGTS /var/www/swad/crs/1755 +mv /var/www/html/asg/MEMDIS/0/0/DGTS /var/www/html/crs/1755 + +mv /var/www/swad/asg/MEMDIS/0/0/EBPMPM /var/www/swad/crs/1756 +mv /var/www/html/asg/MEMDIS/0/0/EBPMPM /var/www/html/crs/1756 + +mv /var/www/swad/asg/MEMDIS/0/0/EIMPC /var/www/swad/crs/1757 +mv /var/www/html/asg/MEMDIS/0/0/EIMPC /var/www/html/crs/1757 + +mv /var/www/swad/asg/MEMDIS/0/0/EIS /var/www/swad/crs/1758 +mv /var/www/html/asg/MEMDIS/0/0/EIS /var/www/html/crs/1758 + +mv /var/www/swad/asg/MEMDIS/0/0/EARPAL /var/www/swad/crs/1759 +mv /var/www/html/asg/MEMDIS/0/0/EARPAL /var/www/html/crs/1759 + +mv /var/www/swad/asg/MEMDIS/0/0/EPPE /var/www/swad/crs/1760 +mv /var/www/html/asg/MEMDIS/0/0/EPPE /var/www/html/crs/1760 + +mv /var/www/swad/asg/MEMDIS/0/0/FME /var/www/swad/crs/1761 +mv /var/www/html/asg/MEMDIS/0/0/FME /var/www/html/crs/1761 + +mv /var/www/swad/asg/MEMDIS/0/0/GMJ /var/www/swad/crs/1762 +mv /var/www/html/asg/MEMDIS/0/0/GMJ /var/www/html/crs/1762 + +mv /var/www/swad/asg/MEMDIS/0/0/IDEEG /var/www/swad/crs/1763 +mv /var/www/html/asg/MEMDIS/0/0/IDEEG /var/www/html/crs/1763 + +mv /var/www/swad/asg/MEMDIS/0/0/IISE /var/www/swad/crs/1764 +mv /var/www/html/asg/MEMDIS/0/0/IISE /var/www/html/crs/1764 + +mv /var/www/swad/asg/MEMDIS/0/0/IED /var/www/swad/crs/1765 +mv /var/www/html/asg/MEMDIS/0/0/IED /var/www/html/crs/1765 + +mv /var/www/swad/asg/MEMDIS/0/0/IEM /var/www/swad/crs/1766 +mv /var/www/html/asg/MEMDIS/0/0/IEM /var/www/html/crs/1766 + +mv /var/www/swad/asg/MEMDIS/0/0/MFTS /var/www/swad/crs/1767 +mv /var/www/html/asg/MEMDIS/0/0/MFTS /var/www/html/crs/1767 + +mv /var/www/swad/asg/MEMDIS/0/0/SSPSPI /var/www/swad/crs/1768 +mv /var/www/html/asg/MEMDIS/0/0/SSPSPI /var/www/html/crs/1768 + +mv /var/www/swad/asg/MEMDIS/0/0/SPIS /var/www/swad/crs/1769 +mv /var/www/html/asg/MEMDIS/0/0/SPIS /var/www/html/crs/1769 + +mv /var/www/swad/asg/MEMDIS/0/0/TSA /var/www/swad/crs/1770 +mv /var/www/html/asg/MEMDIS/0/0/TSA /var/www/html/crs/1770 + +mv /var/www/swad/asg/MGEMMA/0/2/EFAD /var/www/swad/crs/1771 +mv /var/www/html/asg/MGEMMA/0/2/EFAD /var/www/html/crs/1771 + +mv /var/www/swad/asg/MGEMMA/0/1/GCRAC /var/www/swad/crs/1772 +mv /var/www/html/asg/MGEMMA/0/1/GCRAC /var/www/html/crs/1772 + +mv /var/www/swad/asg/MGEMMA/0/1/HF /var/www/swad/crs/1773 +mv /var/www/html/asg/MGEMMA/0/1/HF /var/www/html/crs/1773 + +mv /var/www/swad/asg/MGEMMA/0/1/MF /var/www/swad/crs/1774 +mv /var/www/html/asg/MGEMMA/0/1/MF /var/www/html/crs/1774 + +mv /var/www/swad/asg/MGEMMA/0/1/PFAS /var/www/swad/crs/1775 +mv /var/www/html/asg/MGEMMA/0/1/PFAS /var/www/html/crs/1775 + +mv /var/www/swad/asg/MGEMMA/0/1/TF /var/www/swad/crs/1776 +mv /var/www/html/asg/MGEMMA/0/1/TF /var/www/html/crs/1776 + +mv /var/www/swad/asg/MGEO/0/0/FMSPST /var/www/swad/crs/1777 +mv /var/www/html/asg/MGEO/0/0/FMSPST /var/www/html/crs/1777 + +mv /var/www/swad/asg/MIC/1/0/FCEIC /var/www/swad/crs/1778 +mv /var/www/html/asg/MIC/1/0/FCEIC /var/www/html/crs/1778 + +mv /var/www/swad/asg/MIA/1/0/CSV /var/www/swad/crs/1779 +mv /var/www/html/asg/MIA/1/0/CSV /var/www/html/crs/1779 + +mv /var/www/swad/asg/MICR/0/0/AC /var/www/swad/crs/1780 +mv /var/www/html/asg/MICR/0/0/AC /var/www/html/crs/1780 + +mv /var/www/swad/asg/MICR/0/0/ACAP /var/www/swad/crs/1781 +mv /var/www/html/asg/MICR/0/0/ACAP /var/www/html/crs/1781 + +mv /var/www/swad/asg/MICR/0/0/AIAV /var/www/swad/crs/1782 +mv /var/www/html/asg/MICR/0/0/AIAV /var/www/html/crs/1782 + +mv /var/www/swad/asg/MICR/0/0/APCC /var/www/swad/crs/1783 +mv /var/www/html/asg/MICR/0/0/APCC /var/www/html/crs/1783 + +mv /var/www/swad/asg/MICR/0/0/CAPB /var/www/swad/crs/1784 +mv /var/www/html/asg/MICR/0/0/CAPB /var/www/html/crs/1784 + +mv /var/www/swad/asg/MICR/0/0/CAPOP /var/www/swad/crs/1785 +mv /var/www/html/asg/MICR/0/0/CAPOP /var/www/html/crs/1785 + +mv /var/www/swad/asg/MICR/0/0/CI /var/www/swad/crs/1786 +mv /var/www/html/asg/MICR/0/0/CI /var/www/html/crs/1786 + +mv /var/www/swad/asg/MICR/0/0/HCDHR /var/www/swad/crs/1787 +mv /var/www/html/asg/MICR/0/0/HCDHR /var/www/html/crs/1787 + +mv /var/www/swad/asg/MICR/0/0/HMM /var/www/swad/crs/1788 +mv /var/www/html/asg/MICR/0/0/HMM /var/www/html/crs/1788 + +mv /var/www/swad/asg/MICR/0/0/IN /var/www/swad/crs/1789 +mv /var/www/html/asg/MICR/0/0/IN /var/www/html/crs/1789 + +mv /var/www/swad/asg/MICR/0/0/ISO /var/www/swad/crs/1790 +mv /var/www/html/asg/MICR/0/0/ISO /var/www/html/crs/1790 + +mv /var/www/swad/asg/MICR/0/0/OCSAP /var/www/swad/crs/1791 +mv /var/www/html/asg/MICR/0/0/OCSAP /var/www/html/crs/1791 + +mv /var/www/swad/asg/MICR/0/0/PAIPC /var/www/swad/crs/1792 +mv /var/www/html/asg/MICR/0/0/PAIPC /var/www/html/crs/1792 + +mv /var/www/swad/asg/MICR/0/0/RS /var/www/swad/crs/1793 +mv /var/www/html/asg/MICR/0/0/RS /var/www/html/crs/1793 + +mv /var/www/swad/asg/MICR/0/0/SD /var/www/swad/crs/1794 +mv /var/www/html/asg/MICR/0/0/SD /var/www/html/crs/1794 + +mv /var/www/swad/asg/MICR/0/0/SS /var/www/swad/crs/1795 +mv /var/www/html/asg/MICR/0/0/SS /var/www/html/crs/1795 + +mv /var/www/swad/asg/MMP/0/0/M /var/www/swad/crs/1796 +mv /var/www/html/asg/MMP/0/0/M /var/www/html/crs/1796 + +mv /var/www/swad/asg/MMP/0/0/EP /var/www/swad/crs/1797 +mv /var/www/html/asg/MMP/0/0/EP /var/www/html/crs/1797 + +mv /var/www/swad/asg/MMP/0/0/E /var/www/swad/crs/1798 +mv /var/www/html/asg/MMP/0/0/E /var/www/html/crs/1798 + +mv /var/www/swad/asg/MMP/0/0/EE /var/www/swad/crs/1799 +mv /var/www/html/asg/MMP/0/0/EE /var/www/html/crs/1799 + +mv /var/www/swad/asg/MMP/0/0/AP /var/www/swad/crs/1800 +mv /var/www/html/asg/MMP/0/0/AP /var/www/html/crs/1800 + +mv /var/www/swad/asg/MMP/0/0/CE /var/www/swad/crs/1801 +mv /var/www/html/asg/MMP/0/0/CE /var/www/html/crs/1801 + +mv /var/www/swad/asg/MMP/0/0/PI /var/www/swad/crs/1802 +mv /var/www/html/asg/MMP/0/0/PI /var/www/html/crs/1802 + +mv /var/www/swad/asg/MMP/0/0/OC /var/www/swad/crs/1803 +mv /var/www/html/asg/MMP/0/0/OC /var/www/html/crs/1803 + +mv /var/www/swad/asg/MMP/0/0/DP /var/www/swad/crs/1804 +mv /var/www/html/asg/MMP/0/0/DP /var/www/html/crs/1804 + +mv /var/www/swad/asg/MMP/0/0/PMC /var/www/swad/crs/1805 +mv /var/www/html/asg/MMP/0/0/PMC /var/www/html/crs/1805 + +mv /var/www/swad/asg/MMP/0/0/GR /var/www/swad/crs/1806 +mv /var/www/html/asg/MMP/0/0/GR /var/www/html/crs/1806 + +mv /var/www/swad/asg/MMP/0/0/GCGL /var/www/swad/crs/1807 +mv /var/www/html/asg/MMP/0/0/GCGL /var/www/html/crs/1807 + +mv /var/www/swad/asg/MLLI/0/0/ALL /var/www/swad/crs/1808 +mv /var/www/html/asg/MLLI/0/0/ALL /var/www/html/crs/1808 + +mv /var/www/swad/asg/MLLI/0/0/EAI /var/www/swad/crs/1809 +mv /var/www/html/asg/MLLI/0/0/EAI /var/www/html/crs/1809 + +mv /var/www/swad/asg/MLLI/0/0/AACIEP /var/www/swad/crs/1810 +mv /var/www/html/asg/MLLI/0/0/AACIEP /var/www/html/crs/1810 + +mv /var/www/swad/asg/MLLI/0/0/CPAEL /var/www/swad/crs/1811 +mv /var/www/html/asg/MLLI/0/0/CPAEL /var/www/html/crs/1811 + +mv /var/www/swad/asg/MLLI/0/0/CLIA30 /var/www/swad/crs/1812 +mv /var/www/html/asg/MLLI/0/0/CLIA30 /var/www/html/crs/1812 + +mv /var/www/swad/asg/MLLI/0/0/EFAD /var/www/swad/crs/1813 +mv /var/www/html/asg/MLLI/0/0/EFAD /var/www/html/crs/1813 + +mv /var/www/swad/asg/MLLI/0/0/EAL /var/www/swad/crs/1814 +mv /var/www/html/asg/MLLI/0/0/EAL /var/www/html/crs/1814 + +mv /var/www/swad/asg/MLLI/0/0/EINOH /var/www/swad/crs/1815 +mv /var/www/html/asg/MLLI/0/0/EINOH /var/www/html/crs/1815 + +mv /var/www/swad/asg/MLLI/0/0/FSALI /var/www/swad/crs/1816 +mv /var/www/html/asg/MLLI/0/0/FSALI /var/www/html/crs/1816 + +mv /var/www/swad/asg/MLLI/0/0/IT /var/www/swad/crs/1817 +mv /var/www/html/asg/MLLI/0/0/IT /var/www/html/crs/1817 + +mv /var/www/swad/asg/MLLI/0/0/IAD /var/www/swad/crs/1818 +mv /var/www/html/asg/MLLI/0/0/IAD /var/www/html/crs/1818 + +mv /var/www/swad/asg/MLLI/0/0/LGAC /var/www/swad/crs/1819 +mv /var/www/html/asg/MLLI/0/0/LGAC /var/www/html/crs/1819 + +mv /var/www/swad/asg/MLLI/0/0/MIALA /var/www/swad/crs/1820 +mv /var/www/html/asg/MLLI/0/0/MIALA /var/www/html/crs/1820 + +mv /var/www/swad/asg/MLLI/0/0/NP /var/www/swad/crs/1821 +mv /var/www/html/asg/MLLI/0/0/NP /var/www/html/crs/1821 + +mv /var/www/swad/asg/MLLI/0/0/PDU /var/www/swad/crs/1822 +mv /var/www/html/asg/MLLI/0/0/PDU /var/www/html/crs/1822 + +mv /var/www/swad/asg/MMPSP/0/0/AS /var/www/swad/crs/1823 +mv /var/www/html/asg/MMPSP/0/0/AS /var/www/html/crs/1823 + +mv /var/www/swad/asg/MMPSP/0/0/EPET /var/www/swad/crs/1824 +mv /var/www/html/asg/MMPSP/0/0/EPET /var/www/html/crs/1824 + +mv /var/www/swad/asg/MMPSP/0/0/PS /var/www/swad/crs/1825 +mv /var/www/html/asg/MMPSP/0/0/PS /var/www/html/crs/1825 + +mv /var/www/swad/asg/MMTAF/0/0/DEADT /var/www/swad/crs/1826 +mv /var/www/html/asg/MMTAF/0/0/DEADT /var/www/html/crs/1826 + +mv /var/www/swad/asg/MM/0/0/ET /var/www/swad/crs/1827 +mv /var/www/html/asg/MM/0/0/ET /var/www/html/crs/1827 + +mv /var/www/swad/asg/MM/0/0/MAC /var/www/swad/crs/1828 +mv /var/www/html/asg/MM/0/0/MAC /var/www/html/crs/1828 + +mv /var/www/swad/asg/MM/0/0/MAI /var/www/swad/crs/1829 +mv /var/www/html/asg/MM/0/0/MAI /var/www/html/crs/1829 + +mv /var/www/swad/asg/MM/0/0/MCM /var/www/swad/crs/1830 +mv /var/www/html/asg/MM/0/0/MCM /var/www/html/crs/1830 + +mv /var/www/swad/asg/MM/0/0/MM /var/www/swad/crs/1831 +mv /var/www/html/asg/MM/0/0/MM /var/www/html/crs/1831 + +mv /var/www/swad/asg/MM/0/0/MSF /var/www/swad/crs/1832 +mv /var/www/html/asg/MM/0/0/MSF /var/www/html/crs/1832 + +mv /var/www/swad/asg/MM/0/0/ME /var/www/swad/crs/1833 +mv /var/www/html/asg/MM/0/0/ME /var/www/html/crs/1833 + +mv /var/www/swad/asg/MM/1/0/CFHM /var/www/swad/crs/1834 +mv /var/www/html/asg/MM/1/0/CFHM /var/www/html/crs/1834 + +mv /var/www/swad/asg/MM/1/0/LM /var/www/swad/crs/1835 +mv /var/www/html/asg/MM/1/0/LM /var/www/html/crs/1835 + +mv /var/www/swad/asg/MM/1/0/TMAM /var/www/swad/crs/1836 +mv /var/www/html/asg/MM/1/0/TMAM /var/www/html/crs/1836 + +mv /var/www/swad/asg/MM/1/0/PM /var/www/swad/crs/1837 +mv /var/www/html/asg/MM/1/0/PM /var/www/html/crs/1837 + +mv /var/www/swad/asg/MM/1/0/AM /var/www/swad/crs/1838 +mv /var/www/html/asg/MM/1/0/AM /var/www/html/crs/1838 + +mv /var/www/swad/asg/MM/1/0/D /var/www/swad/crs/1839 +mv /var/www/html/asg/MM/1/0/D /var/www/html/crs/1839 + +mv /var/www/swad/asg/MM/1/0/C /var/www/swad/crs/1840 +mv /var/www/html/asg/MM/1/0/C /var/www/html/crs/1840 + +mv /var/www/swad/asg/MM/2/0/CE /var/www/swad/crs/1841 +mv /var/www/html/asg/MM/2/0/CE /var/www/html/crs/1841 + +mv /var/www/swad/asg/MM/2/0/SE /var/www/swad/crs/1842 +mv /var/www/html/asg/MM/2/0/SE /var/www/html/crs/1842 + +mv /var/www/swad/asg/MM/2/0/SI /var/www/swad/crs/1843 +mv /var/www/html/asg/MM/2/0/SI /var/www/html/crs/1843 + +mv /var/www/swad/asg/MM/2/0/GM /var/www/swad/crs/1844 +mv /var/www/html/asg/MM/2/0/GM /var/www/html/crs/1844 + +mv /var/www/swad/asg/MM/2/0/AGREH /var/www/swad/crs/1845 +mv /var/www/html/asg/MM/2/0/AGREH /var/www/html/crs/1845 + +mv /var/www/swad/asg/MNH/0/0/E /var/www/swad/crs/1846 +mv /var/www/html/asg/MNH/0/0/E /var/www/html/crs/1846 + +mv /var/www/swad/asg/MPC/1/0/PE /var/www/swad/crs/1847 +mv /var/www/html/asg/MPC/1/0/PE /var/www/html/crs/1847 + +mv /var/www/swad/asg/MPS/0/0/DSC /var/www/swad/crs/1848 +mv /var/www/html/asg/MPS/0/0/DSC /var/www/html/crs/1848 + +mv /var/www/swad/asg/MQ/1/0/EAA /var/www/swad/crs/1849 +mv /var/www/html/asg/MQ/1/0/EAA /var/www/html/crs/1849 + +mv /var/www/swad/asg/MTI/1/0/GT /var/www/swad/crs/1850 +mv /var/www/html/asg/MTI/1/0/GT /var/www/html/crs/1850 + +mv /var/www/swad/asg/MTI/1/1/HIITI /var/www/swad/crs/1851 +mv /var/www/html/asg/MTI/1/1/HIITI /var/www/html/crs/1851 + +mv /var/www/swad/asg/MTI/1/0/ICEFDC /var/www/swad/crs/1852 +mv /var/www/html/asg/MTI/1/0/ICEFDC /var/www/html/crs/1852 + +mv /var/www/swad/asg/MTI/1/1/TCTI /var/www/swad/crs/1853 +mv /var/www/html/asg/MTI/1/1/TCTI /var/www/html/crs/1853 + +mv /var/www/swad/asg/MTI/1/0/TCT /var/www/swad/crs/1854 +mv /var/www/html/asg/MTI/1/0/TCT /var/www/html/crs/1854 + +mv /var/www/swad/asg/MEIG/1/0/CG /var/www/swad/crs/1855 +mv /var/www/html/asg/MEIG/1/0/CG /var/www/html/crs/1855 + +mv /var/www/swad/asg/MEIG/1/0/MOC /var/www/swad/crs/1856 +mv /var/www/html/asg/MEIG/1/0/MOC /var/www/html/crs/1856 + +mv /var/www/swad/asg/PDDH/1/2/M1 /var/www/swad/crs/1857 +mv /var/www/html/asg/PDDH/1/2/M1 /var/www/html/crs/1857 + +mv /var/www/swad/asg/PATC/0/0/FGM /var/www/swad/crs/1858 +mv /var/www/html/asg/PATC/0/0/FGM /var/www/html/crs/1858 + +mv /var/www/swad/asg/PID/0/0/SWAD /var/www/swad/crs/1859 +mv /var/www/html/asg/PID/0/0/SWAD /var/www/html/crs/1859 + +mv /var/www/swad/asg/PID/0/0/SECPE /var/www/swad/crs/1860 +mv /var/www/html/asg/PID/0/0/SECPE /var/www/html/crs/1860 + +mv /var/www/swad/asg/PID/0/0/TAEVS /var/www/swad/crs/1861 +mv /var/www/html/asg/PID/0/0/TAEVS /var/www/html/crs/1861 + +mv /var/www/swad/asg/GIBH/0/0/FIPPD /var/www/swad/crs/1862 +mv /var/www/html/asg/GIBH/0/0/FIPPD /var/www/html/crs/1862 + +mv /var/www/swad/asg/GIBH/0/0/IBH /var/www/swad/crs/1863 +mv /var/www/html/asg/GIBH/0/0/IBH /var/www/html/crs/1863 + +mv /var/www/swad/asg/PV/0/0/PV /var/www/swad/crs/1864 +mv /var/www/html/asg/PV/0/0/PV /var/www/html/crs/1864 + +mv /var/www/swad/asg/DEMO/1/0/DEMO00 /var/www/swad/crs/1865 +mv /var/www/html/asg/DEMO/1/0/DEMO00 /var/www/html/crs/1865 + +mv /var/www/swad/asg/DEMO/1/0/DEMO01 /var/www/swad/crs/1866 +mv /var/www/html/asg/DEMO/1/0/DEMO01 /var/www/html/crs/1866 + +mv /var/www/swad/asg/DEMO/1/0/DEMO02 /var/www/swad/crs/1867 +mv /var/www/html/asg/DEMO/1/0/DEMO02 /var/www/html/crs/1867 + +mv /var/www/swad/asg/DEMO/1/0/DEMO03 /var/www/swad/crs/1868 +mv /var/www/html/asg/DEMO/1/0/DEMO03 /var/www/html/crs/1868 + +mv /var/www/swad/asg/DEMO/1/0/DEMO04 /var/www/swad/crs/1869 +mv /var/www/html/asg/DEMO/1/0/DEMO04 /var/www/html/crs/1869 + +mv /var/www/swad/asg/DEMO/1/0/DEMO05 /var/www/swad/crs/1870 +mv /var/www/html/asg/DEMO/1/0/DEMO05 /var/www/html/crs/1870 + +mv /var/www/swad/asg/DEMO/1/0/DEMO06 /var/www/swad/crs/1871 +mv /var/www/html/asg/DEMO/1/0/DEMO06 /var/www/html/crs/1871 + +mv /var/www/swad/asg/DEMO/1/0/DEMO07 /var/www/swad/crs/1872 +mv /var/www/html/asg/DEMO/1/0/DEMO07 /var/www/html/crs/1872 + +mv /var/www/swad/asg/DEMO/1/0/DEMO08 /var/www/swad/crs/1873 +mv /var/www/html/asg/DEMO/1/0/DEMO08 /var/www/html/crs/1873 + +mv /var/www/swad/asg/DEMO/1/0/DEMO09 /var/www/swad/crs/1874 +mv /var/www/html/asg/DEMO/1/0/DEMO09 /var/www/html/crs/1874 + +mv /var/www/swad/asg/DEMO/1/0/DEMO10 /var/www/swad/crs/1875 +mv /var/www/html/asg/DEMO/1/0/DEMO10 /var/www/html/crs/1875 + +mv /var/www/swad/asg/DEMO/1/0/DEMO11 /var/www/swad/crs/1876 +mv /var/www/html/asg/DEMO/1/0/DEMO11 /var/www/html/crs/1876 + +mv /var/www/swad/asg/DEMO/1/0/DEMO12 /var/www/swad/crs/1877 +mv /var/www/html/asg/DEMO/1/0/DEMO12 /var/www/html/crs/1877 + +mv /var/www/swad/asg/DEMO/1/0/DEMO13 /var/www/swad/crs/1878 +mv /var/www/html/asg/DEMO/1/0/DEMO13 /var/www/html/crs/1878 + +mv /var/www/swad/asg/DEMO/1/0/DEMO14 /var/www/swad/crs/1879 +mv /var/www/html/asg/DEMO/1/0/DEMO14 /var/www/html/crs/1879 + +mv /var/www/swad/asg/DEMO/1/0/DEMO15 /var/www/swad/crs/1880 +mv /var/www/html/asg/DEMO/1/0/DEMO15 /var/www/html/crs/1880 + +mv /var/www/swad/asg/DEMO/1/0/DEMO16 /var/www/swad/crs/1881 +mv /var/www/html/asg/DEMO/1/0/DEMO16 /var/www/html/crs/1881 + +mv /var/www/swad/asg/DEMO/1/0/DEMO17 /var/www/swad/crs/1882 +mv /var/www/html/asg/DEMO/1/0/DEMO17 /var/www/html/crs/1882 + +mv /var/www/swad/asg/DEMO/1/0/DEMO18 /var/www/swad/crs/1883 +mv /var/www/html/asg/DEMO/1/0/DEMO18 /var/www/html/crs/1883 + +mv /var/www/swad/asg/DEMO/1/0/DEMO19 /var/www/swad/crs/1884 +mv /var/www/html/asg/DEMO/1/0/DEMO19 /var/www/html/crs/1884 + +mv /var/www/swad/asg/DEMO/2/0/DEMO20 /var/www/swad/crs/1885 +mv /var/www/html/asg/DEMO/2/0/DEMO20 /var/www/html/crs/1885 + +mv /var/www/swad/asg/DEMO/2/0/DEMO21 /var/www/swad/crs/1886 +mv /var/www/html/asg/DEMO/2/0/DEMO21 /var/www/html/crs/1886 + +mv /var/www/swad/asg/DEMO/2/0/DEMO22 /var/www/swad/crs/1887 +mv /var/www/html/asg/DEMO/2/0/DEMO22 /var/www/html/crs/1887 + +mv /var/www/swad/asg/DEMO/2/0/DEMO23 /var/www/swad/crs/1888 +mv /var/www/html/asg/DEMO/2/0/DEMO23 /var/www/html/crs/1888 + +mv /var/www/swad/asg/DEMO/2/0/DEMO24 /var/www/swad/crs/1889 +mv /var/www/html/asg/DEMO/2/0/DEMO24 /var/www/html/crs/1889 + +mv /var/www/swad/asg/DEMO/2/0/DEMO25 /var/www/swad/crs/1890 +mv /var/www/html/asg/DEMO/2/0/DEMO25 /var/www/html/crs/1890 + +mv /var/www/swad/asg/DEMO/2/0/DEMO26 /var/www/swad/crs/1891 +mv /var/www/html/asg/DEMO/2/0/DEMO26 /var/www/html/crs/1891 + +mv /var/www/swad/asg/DEMO/2/0/DEMO27 /var/www/swad/crs/1892 +mv /var/www/html/asg/DEMO/2/0/DEMO27 /var/www/html/crs/1892 + +mv /var/www/swad/asg/DEMO/2/0/DEMO28 /var/www/swad/crs/1893 +mv /var/www/html/asg/DEMO/2/0/DEMO28 /var/www/html/crs/1893 + +mv /var/www/swad/asg/DEMO/2/0/DEMO29 /var/www/swad/crs/1894 +mv /var/www/html/asg/DEMO/2/0/DEMO29 /var/www/html/crs/1894 + +mv /var/www/swad/asg/DEMO/2/0/DEMO30 /var/www/swad/crs/1895 +mv /var/www/html/asg/DEMO/2/0/DEMO30 /var/www/html/crs/1895 + +mv /var/www/swad/asg/DEMO/2/0/DEMO31 /var/www/swad/crs/1896 +mv /var/www/html/asg/DEMO/2/0/DEMO31 /var/www/html/crs/1896 + +mv /var/www/swad/asg/DEMO/2/0/DEMO32 /var/www/swad/crs/1897 +mv /var/www/html/asg/DEMO/2/0/DEMO32 /var/www/html/crs/1897 + +mv /var/www/swad/asg/DEMO/2/0/DEMO33 /var/www/swad/crs/1898 +mv /var/www/html/asg/DEMO/2/0/DEMO33 /var/www/html/crs/1898 + +mv /var/www/swad/asg/DEMO/2/0/DEMO34 /var/www/swad/crs/1899 +mv /var/www/html/asg/DEMO/2/0/DEMO34 /var/www/html/crs/1899 + +mv /var/www/swad/asg/DEMO/2/0/DEMO35 /var/www/swad/crs/1900 +mv /var/www/html/asg/DEMO/2/0/DEMO35 /var/www/html/crs/1900 + +mv /var/www/swad/asg/DEMO/2/0/DEMO36 /var/www/swad/crs/1901 +mv /var/www/html/asg/DEMO/2/0/DEMO36 /var/www/html/crs/1901 + +mv /var/www/swad/asg/DEMO/2/0/DEMO37 /var/www/swad/crs/1902 +mv /var/www/html/asg/DEMO/2/0/DEMO37 /var/www/html/crs/1902 + +mv /var/www/swad/asg/DEMO/2/0/DEMO38 /var/www/swad/crs/1903 +mv /var/www/html/asg/DEMO/2/0/DEMO38 /var/www/html/crs/1903 + +mv /var/www/swad/asg/DEMO/2/0/DEMO39 /var/www/swad/crs/1904 +mv /var/www/html/asg/DEMO/2/0/DEMO39 /var/www/html/crs/1904 + +mv /var/www/swad/asg/DEMO/3/0/DEMO40 /var/www/swad/crs/1905 +mv /var/www/html/asg/DEMO/3/0/DEMO40 /var/www/html/crs/1905 + +mv /var/www/swad/asg/DEMO/3/0/DEMO41 /var/www/swad/crs/1906 +mv /var/www/html/asg/DEMO/3/0/DEMO41 /var/www/html/crs/1906 + +mv /var/www/swad/asg/DEMO/3/0/DEMO42 /var/www/swad/crs/1907 +mv /var/www/html/asg/DEMO/3/0/DEMO42 /var/www/html/crs/1907 + +mv /var/www/swad/asg/DEMO/3/0/DEMO43 /var/www/swad/crs/1908 +mv /var/www/html/asg/DEMO/3/0/DEMO43 /var/www/html/crs/1908 + +mv /var/www/swad/asg/DEMO/3/0/DEMO44 /var/www/swad/crs/1909 +mv /var/www/html/asg/DEMO/3/0/DEMO44 /var/www/html/crs/1909 + +mv /var/www/swad/asg/DEMO/3/0/DEMO45 /var/www/swad/crs/1910 +mv /var/www/html/asg/DEMO/3/0/DEMO45 /var/www/html/crs/1910 + +mv /var/www/swad/asg/DEMO/3/0/DEMO46 /var/www/swad/crs/1911 +mv /var/www/html/asg/DEMO/3/0/DEMO46 /var/www/html/crs/1911 + +mv /var/www/swad/asg/DEMO/3/0/DEMO47 /var/www/swad/crs/1912 +mv /var/www/html/asg/DEMO/3/0/DEMO47 /var/www/html/crs/1912 + +mv /var/www/swad/asg/DEMO/3/0/DEMO48 /var/www/swad/crs/1913 +mv /var/www/html/asg/DEMO/3/0/DEMO48 /var/www/html/crs/1913 + +mv /var/www/swad/asg/DEMO/3/0/DEMO49 /var/www/swad/crs/1914 +mv /var/www/html/asg/DEMO/3/0/DEMO49 /var/www/html/crs/1914 + +mv /var/www/swad/asg/DEMO/3/0/DEMO50 /var/www/swad/crs/1915 +mv /var/www/html/asg/DEMO/3/0/DEMO50 /var/www/html/crs/1915 + +mv /var/www/swad/asg/DEMO/3/0/DEMO51 /var/www/swad/crs/1916 +mv /var/www/html/asg/DEMO/3/0/DEMO51 /var/www/html/crs/1916 + +mv /var/www/swad/asg/DEMO/3/0/DEMO52 /var/www/swad/crs/1917 +mv /var/www/html/asg/DEMO/3/0/DEMO52 /var/www/html/crs/1917 + +mv /var/www/swad/asg/DEMO/3/0/DEMO53 /var/www/swad/crs/1918 +mv /var/www/html/asg/DEMO/3/0/DEMO53 /var/www/html/crs/1918 + +mv /var/www/swad/asg/DEMO/3/0/DEMO54 /var/www/swad/crs/1919 +mv /var/www/html/asg/DEMO/3/0/DEMO54 /var/www/html/crs/1919 + +mv /var/www/swad/asg/DEMO/3/0/DEMO55 /var/www/swad/crs/1920 +mv /var/www/html/asg/DEMO/3/0/DEMO55 /var/www/html/crs/1920 + +mv /var/www/swad/asg/DEMO/3/0/DEMO56 /var/www/swad/crs/1921 +mv /var/www/html/asg/DEMO/3/0/DEMO56 /var/www/html/crs/1921 + +mv /var/www/swad/asg/DEMO/3/0/DEMO57 /var/www/swad/crs/1922 +mv /var/www/html/asg/DEMO/3/0/DEMO57 /var/www/html/crs/1922 + +mv /var/www/swad/asg/DEMO/3/0/DEMO58 /var/www/swad/crs/1923 +mv /var/www/html/asg/DEMO/3/0/DEMO58 /var/www/html/crs/1923 + +mv /var/www/swad/asg/DEMO/3/0/DEMO59 /var/www/swad/crs/1924 +mv /var/www/html/asg/DEMO/3/0/DEMO59 /var/www/html/crs/1924 + +mv /var/www/swad/asg/DEMO/4/0/DEMO60 /var/www/swad/crs/1925 +mv /var/www/html/asg/DEMO/4/0/DEMO60 /var/www/html/crs/1925 + +mv /var/www/swad/asg/DEMO/4/0/DEMO61 /var/www/swad/crs/1926 +mv /var/www/html/asg/DEMO/4/0/DEMO61 /var/www/html/crs/1926 + +mv /var/www/swad/asg/DEMO/4/0/DEMO62 /var/www/swad/crs/1927 +mv /var/www/html/asg/DEMO/4/0/DEMO62 /var/www/html/crs/1927 + +mv /var/www/swad/asg/DEMO/4/0/DEMO63 /var/www/swad/crs/1928 +mv /var/www/html/asg/DEMO/4/0/DEMO63 /var/www/html/crs/1928 + +mv /var/www/swad/asg/DEMO/4/0/DEMO64 /var/www/swad/crs/1929 +mv /var/www/html/asg/DEMO/4/0/DEMO64 /var/www/html/crs/1929 + +mv /var/www/swad/asg/DEMO/4/0/DEMO65 /var/www/swad/crs/1930 +mv /var/www/html/asg/DEMO/4/0/DEMO65 /var/www/html/crs/1930 + +mv /var/www/swad/asg/DEMO/4/0/DEMO66 /var/www/swad/crs/1931 +mv /var/www/html/asg/DEMO/4/0/DEMO66 /var/www/html/crs/1931 + +mv /var/www/swad/asg/DEMO/4/0/DEMO67 /var/www/swad/crs/1932 +mv /var/www/html/asg/DEMO/4/0/DEMO67 /var/www/html/crs/1932 + +mv /var/www/swad/asg/DEMO/4/0/DEMO68 /var/www/swad/crs/1933 +mv /var/www/html/asg/DEMO/4/0/DEMO68 /var/www/html/crs/1933 + +mv /var/www/swad/asg/DEMO/4/0/DEMO69 /var/www/swad/crs/1934 +mv /var/www/html/asg/DEMO/4/0/DEMO69 /var/www/html/crs/1934 + +mv /var/www/swad/asg/DEMO/4/0/DEMO70 /var/www/swad/crs/1935 +mv /var/www/html/asg/DEMO/4/0/DEMO70 /var/www/html/crs/1935 + +mv /var/www/swad/asg/DEMO/4/0/DEMO71 /var/www/swad/crs/1936 +mv /var/www/html/asg/DEMO/4/0/DEMO71 /var/www/html/crs/1936 + +mv /var/www/swad/asg/DEMO/4/0/DEMO72 /var/www/swad/crs/1937 +mv /var/www/html/asg/DEMO/4/0/DEMO72 /var/www/html/crs/1937 + +mv /var/www/swad/asg/DEMO/4/0/DEMO73 /var/www/swad/crs/1938 +mv /var/www/html/asg/DEMO/4/0/DEMO73 /var/www/html/crs/1938 + +mv /var/www/swad/asg/DEMO/4/0/DEMO74 /var/www/swad/crs/1939 +mv /var/www/html/asg/DEMO/4/0/DEMO74 /var/www/html/crs/1939 + +mv /var/www/swad/asg/DEMO/4/0/DEMO75 /var/www/swad/crs/1940 +mv /var/www/html/asg/DEMO/4/0/DEMO75 /var/www/html/crs/1940 + +mv /var/www/swad/asg/DEMO/4/0/DEMO76 /var/www/swad/crs/1941 +mv /var/www/html/asg/DEMO/4/0/DEMO76 /var/www/html/crs/1941 + +mv /var/www/swad/asg/DEMO/4/0/DEMO77 /var/www/swad/crs/1942 +mv /var/www/html/asg/DEMO/4/0/DEMO77 /var/www/html/crs/1942 + +mv /var/www/swad/asg/DEMO/4/0/DEMO78 /var/www/swad/crs/1943 +mv /var/www/html/asg/DEMO/4/0/DEMO78 /var/www/html/crs/1943 + +mv /var/www/swad/asg/DEMO/4/0/DEMO79 /var/www/swad/crs/1944 +mv /var/www/html/asg/DEMO/4/0/DEMO79 /var/www/html/crs/1944 + +mv /var/www/swad/asg/DEMO/5/0/DEMO80 /var/www/swad/crs/1945 +mv /var/www/html/asg/DEMO/5/0/DEMO80 /var/www/html/crs/1945 + +mv /var/www/swad/asg/DEMO/5/0/DEMO81 /var/www/swad/crs/1946 +mv /var/www/html/asg/DEMO/5/0/DEMO81 /var/www/html/crs/1946 + +mv /var/www/swad/asg/DEMO/5/0/DEMO82 /var/www/swad/crs/1947 +mv /var/www/html/asg/DEMO/5/0/DEMO82 /var/www/html/crs/1947 + +mv /var/www/swad/asg/DEMO/5/0/DEMO83 /var/www/swad/crs/1948 +mv /var/www/html/asg/DEMO/5/0/DEMO83 /var/www/html/crs/1948 + +mv /var/www/swad/asg/DEMO/5/0/DEMO84 /var/www/swad/crs/1949 +mv /var/www/html/asg/DEMO/5/0/DEMO84 /var/www/html/crs/1949 + +mv /var/www/swad/asg/DEMO/5/0/DEMO85 /var/www/swad/crs/1950 +mv /var/www/html/asg/DEMO/5/0/DEMO85 /var/www/html/crs/1950 + +mv /var/www/swad/asg/DEMO/5/0/DEMO86 /var/www/swad/crs/1951 +mv /var/www/html/asg/DEMO/5/0/DEMO86 /var/www/html/crs/1951 + +mv /var/www/swad/asg/DEMO/5/0/DEMO87 /var/www/swad/crs/1952 +mv /var/www/html/asg/DEMO/5/0/DEMO87 /var/www/html/crs/1952 + +mv /var/www/swad/asg/DEMO/5/0/DEMO88 /var/www/swad/crs/1953 +mv /var/www/html/asg/DEMO/5/0/DEMO88 /var/www/html/crs/1953 + +mv /var/www/swad/asg/DEMO/5/0/DEMO89 /var/www/swad/crs/1954 +mv /var/www/html/asg/DEMO/5/0/DEMO89 /var/www/html/crs/1954 + +mv /var/www/swad/asg/DEMO/5/0/DEMO90 /var/www/swad/crs/1955 +mv /var/www/html/asg/DEMO/5/0/DEMO90 /var/www/html/crs/1955 + +mv /var/www/swad/asg/DEMO/5/0/DEMO91 /var/www/swad/crs/1956 +mv /var/www/html/asg/DEMO/5/0/DEMO91 /var/www/html/crs/1956 + +mv /var/www/swad/asg/DEMO/5/0/DEMO92 /var/www/swad/crs/1957 +mv /var/www/html/asg/DEMO/5/0/DEMO92 /var/www/html/crs/1957 + +mv /var/www/swad/asg/DEMO/5/0/DEMO93 /var/www/swad/crs/1958 +mv /var/www/html/asg/DEMO/5/0/DEMO93 /var/www/html/crs/1958 + +mv /var/www/swad/asg/DEMO/5/0/DEMO94 /var/www/swad/crs/1959 +mv /var/www/html/asg/DEMO/5/0/DEMO94 /var/www/html/crs/1959 + +mv /var/www/swad/asg/DEMO/5/0/DEMO95 /var/www/swad/crs/1960 +mv /var/www/html/asg/DEMO/5/0/DEMO95 /var/www/html/crs/1960 + +mv /var/www/swad/asg/DEMO/5/0/DEMO96 /var/www/swad/crs/1961 +mv /var/www/html/asg/DEMO/5/0/DEMO96 /var/www/html/crs/1961 + +mv /var/www/swad/asg/DEMO/5/0/DEMO97 /var/www/swad/crs/1962 +mv /var/www/html/asg/DEMO/5/0/DEMO97 /var/www/html/crs/1962 + +mv /var/www/swad/asg/DEMO/5/0/DEMO98 /var/www/swad/crs/1963 +mv /var/www/html/asg/DEMO/5/0/DEMO98 /var/www/html/crs/1963 + +mv /var/www/swad/asg/DEMO/5/0/DEMO99 /var/www/swad/crs/1964 +mv /var/www/html/asg/DEMO/5/0/DEMO99 /var/www/html/crs/1964 + +mv /var/www/swad/asg/DEMO/6/0/DEM100 /var/www/swad/crs/1965 +mv /var/www/html/asg/DEMO/6/0/DEM100 /var/www/html/crs/1965 + +mv /var/www/swad/asg/DEMO/6/0/DEM101 /var/www/swad/crs/1966 +mv /var/www/html/asg/DEMO/6/0/DEM101 /var/www/html/crs/1966 + +mv /var/www/swad/asg/DEMO/6/0/DEM102 /var/www/swad/crs/1967 +mv /var/www/html/asg/DEMO/6/0/DEM102 /var/www/html/crs/1967 + +mv /var/www/swad/asg/DEMO/6/0/DEM103 /var/www/swad/crs/1968 +mv /var/www/html/asg/DEMO/6/0/DEM103 /var/www/html/crs/1968 + +mv /var/www/swad/asg/DEMO/6/0/DEM104 /var/www/swad/crs/1969 +mv /var/www/html/asg/DEMO/6/0/DEM104 /var/www/html/crs/1969 + +mv /var/www/swad/asg/DEMO/6/0/DEM105 /var/www/swad/crs/1970 +mv /var/www/html/asg/DEMO/6/0/DEM105 /var/www/html/crs/1970 + +mv /var/www/swad/asg/DEMO/6/0/DEM106 /var/www/swad/crs/1971 +mv /var/www/html/asg/DEMO/6/0/DEM106 /var/www/html/crs/1971 + +mv /var/www/swad/asg/DEMO/6/0/DEM107 /var/www/swad/crs/1972 +mv /var/www/html/asg/DEMO/6/0/DEM107 /var/www/html/crs/1972 + +mv /var/www/swad/asg/DEMO/6/0/DEM108 /var/www/swad/crs/1973 +mv /var/www/html/asg/DEMO/6/0/DEM108 /var/www/html/crs/1973 + +mv /var/www/swad/asg/DEMO/6/0/DEM109 /var/www/swad/crs/1974 +mv /var/www/html/asg/DEMO/6/0/DEM109 /var/www/html/crs/1974 + +mv /var/www/swad/asg/DEMO/6/0/DEM110 /var/www/swad/crs/1975 +mv /var/www/html/asg/DEMO/6/0/DEM110 /var/www/html/crs/1975 + +mv /var/www/swad/asg/DEMO/6/0/DEM111 /var/www/swad/crs/1976 +mv /var/www/html/asg/DEMO/6/0/DEM111 /var/www/html/crs/1976 + +mv /var/www/swad/asg/DEMO/6/0/DEM112 /var/www/swad/crs/1977 +mv /var/www/html/asg/DEMO/6/0/DEM112 /var/www/html/crs/1977 + +mv /var/www/swad/asg/DEMO/6/0/DEM113 /var/www/swad/crs/1978 +mv /var/www/html/asg/DEMO/6/0/DEM113 /var/www/html/crs/1978 + +mv /var/www/swad/asg/DEMO/6/0/DEM114 /var/www/swad/crs/1979 +mv /var/www/html/asg/DEMO/6/0/DEM114 /var/www/html/crs/1979 + +mv /var/www/swad/asg/DEMO/6/0/DEM115 /var/www/swad/crs/1980 +mv /var/www/html/asg/DEMO/6/0/DEM115 /var/www/html/crs/1980 + +mv /var/www/swad/asg/DEMO/6/0/DEM116 /var/www/swad/crs/1981 +mv /var/www/html/asg/DEMO/6/0/DEM116 /var/www/html/crs/1981 + +mv /var/www/swad/asg/DEMO/6/0/DEM117 /var/www/swad/crs/1982 +mv /var/www/html/asg/DEMO/6/0/DEM117 /var/www/html/crs/1982 + +mv /var/www/swad/asg/DEMO/6/0/DEM118 /var/www/swad/crs/1983 +mv /var/www/html/asg/DEMO/6/0/DEM118 /var/www/html/crs/1983 + +mv /var/www/swad/asg/DEMO/6/0/DEM119 /var/www/swad/crs/1984 +mv /var/www/html/asg/DEMO/6/0/DEM119 /var/www/html/crs/1984 + +alter table usr_data add column Gender ENUM ('unknown','female','male') DEFAULT 'unknown' NOT NULL after FirstName; + +alter table usr_data change LastAccBriefcase LastAccBriefcase DATETIME NOT NULL; + +ALTER TABLE log CHANGE TipoUsrNum UsrType TINYINT NOT NULL; + +UPDATE usr_data SET UsrType='5' where UsrType='4'; +UPDATE connected SET UsrType='5' where UsrType='4'; +UPDATE log SET UsrType='5' where UsrType='4'; + +ALTER TABLE sessions ADD COLUMN DegCod INT NOT NULL DEFAULT -1 AFTER Password; + +show index from courses; +DROP INDEX FullCrsCod_old ON courses; +CREATE INDEX FullCrsCod_old ON courses (FullCrsCod_old); + +ALTER TABLE asg_usr CHANGE NumAccTst NumAccTst INT NOT NULL DEFAULT 0; +ALTER TABLE asg_usr ADD COLUMN NextAccTst DATETIME AFTER NumAccTst; + +ALTER TABLE tst_config ADD COLUMN MinTimeNxtTstPerQst INT NOT NULL DEFAULT 0 AFTER Max; + +SELECT degrees.FullName,courses.CrsCod,courses.Year,courses.Semester,courses.ShortName,courses.FullName,courses.NumTeachers,courses.NumStudents FROM courses,degrees WHERE courses.FullName LIKE '%estructura%' AND courses.DegCod=degrees.DegCod ORDER BY degrees.FullName,courses.FullName,courses.Year,courses.Semester; + +SELECT degrees.DegCod,courses.CrsCod,degrees.Logo,degrees.ShortName,degrees.FullName,courses.Year,courses.Semester,courses.FullName,courses.NumTeachers,courses.NumStudents FROM asg_usr,courses,degrees WHERE asg_usr.DNI IN (SELECT DNI FROM usr_data WHERE UsrType='3' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%eva%' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%martinez%' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%ortigosa%') AND asg_usr.CrsCod=courses.CrsCod AND courses.DegCod=degrees.DegCod ORDER BY degrees.FullName,courses.Year,courses.Semester,courses.FullName; + +SELECT degrees.DegCod,courses.CrsCod,degrees.Logo,degrees.ShortName,degrees.FullName,courses.Year,courses.Semester,courses.FullName,courses.NumTeachers,courses.NumStudents +FROM (SELECT DNI FROM usr_data WHERE UsrType='3' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%eva%' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%martinez%' AND CONCAT_WS(' ',FirstName,Surname1,Surname2) LIKE '%ortigosa%') AS teachers,asg_usr,courses,degrees WHERE teachers.DNI=asg_usr.DNI AND asg_usr.CrsCod=courses.CrsCod AND courses.DegCod=degrees.DegCod ORDER BY degrees.FullName,courses.Year,courses.Semester,courses.FullName; + +CREATE TABLE tst_status (CrsCod INT NOT NULL, IdSession CHAR(22) NOT NULL, Status TINYINT NOT NULL, UNIQUE INDEX(CrsCod,IdSession)); +CREATE TABLE tst_status (IdSession CHAR(22) NOT NULL, CrsCod INT NOT NULL, NumAccTst INT NOT NULL, Status TINYINT NOT NULL, UNIQUE INDEX(IdSession,CrsCod,NumAccTst)); +CREATE TABLE tst_status (IdSession CHAR(22) NOT NULL, CrsCod INT NOT NULL, NumTst INT NOT NULL, Status TINYINT NOT NULL, UNIQUE INDEX(IdSession,CrsCod,NumTst)); + +ALTER TABLE courses DROP COLUMN CrsCod_old; +ALTER TABLE degrees DROP COLUMN DegCod_old; + +SELECT COUNT(*) FROM asg_usr,usr_data WHERE asg_usr.CrsCod='80' AND usr_data.UsrType='2' AND asg_usr.DNI=usr_data.DNI; + +CREATE INDEX UsrType ON usr_data (UsrType); + +SELECT COUNT(*) FROM asg_usr,usr_data WHERE asg_usr.CrsCod='421' AND asg_usr.DNI=usr_data.DNI AND usr_data.UsrType='2'; + +ALTER TABLE courses DROP COLUMN NumTeachers; +ALTER TABLE courses DROP COLUMN NumStudents; + +ALTER TABLE sessions ADD COLUMN DegTypCod INT NOT NULL DEFAULT -1 AFTER Password; + +CREATE TABLE deg_admin (DNI CHAR(16) NOT NULL, DegCod INT NOT NULL, UNIQUE INDEX(DNI,DegCod)); + +SELECT asg_usr.DNI,asg_usr.Accepted FROM asg_usr,fichas_profesor WHERE asg_usr.DNI='24243619' AND asg_usr.DNI=fichas_profesor.DNI; + +REPLACE INTO deg_admin (DNI,DegCod) VALUES ('24243619','-1'); + +ALTER TABLE sessions ADD COLUMN UsrType TINYINT NOT NULL AFTER Password; + +connected +usr_data +log +sessions + +select count(*) from connected where UsrType='5'; +select count(*) from usr_data where UsrType='5'; +select count(*) from log where UsrType='5'; +select count(*) from sessions where UsrType='5'; + +select * from connected where UsrType='5'; +select * from usr_data where UsrType='5'; +select * from log where UsrType='5'; +select * from sessions where UsrType='5'; + +update usr_data set UsrType='3' where UsrType='5'; + +ALTER TABLE degrees DROP COLUMN NumCourses; + +SELECT degrees.DegCod,degrees.ShortName,degrees.FullName,degrees.Logo FROM deg_admin,degrees WHERE deg_admin.DNI='24243619' AND deg_admin.DegCod=degrees.DegCod ORDER BY degrees.ShortName; + +SELECT degrees.DegCod,degrees.CampusCod,degrees.ShortName,degrees.FullName,degrees.FirstYear,degrees.LastYear,degrees.OptYear,degrees.Logo,degrees.WWW FROM deg_admin,degrees WHERE deg_admin.DNI='24243619' AND deg_admin.DegCod='-1' OR (deg_admin.DegCod<>'-1' AND deg_admin.DegCod=degrees.DegCod) ORDER BY degrees.ShortName; + +SELECT DATE_FORMAT(FechaHora,'%Y%m%d') AS Dia,COUNT(*) FROM log WHERE FechaHora >= '20071201' AND FechaHora <= '20080131235959' GROUP BY Dia DESC; +SELECT DATE_FORMAT(FechaHora,'%x%v') AS Week,COUNT(*) FROM log WHERE FechaHora >= '20071201' AND FechaHora <= '20080131235959' GROUP BY Week DESC; + +SELECT asg_usr.DNI,COUNT(asg_usr.Accepted='Y') FROM asg_usr,usr_data WHERE usr_data.UsrType='%u' AND asg_usr.DNI=usr_data.DNI GROUP BY asg_usr.DNI; + +SELECT DISTINCT(messages.CrsCod),courses.ShortName FROM messages,msg_received,courses WHERE msg_received.DstDNI='24243619' AND msg_received.MsgCod=messages.MsgCod AND messages.CrsCod=courses.CrsCod ORDER BY courses.ShortName; + + +SELECT CodPrg,AnsType,Shuffle,Enunciado FROM tst_questions WHERE CrsCod='1859' AND CodPrg NOT IN (SELECT tst_questions.CodPrg FROM tst_questions,tst_question_tags,tst_tags WHERE tst_questions.CrsCod='1859' AND tst_questions.CodPrg=tst_question_tags.CodPrg AND tst_question_tags.TagCod=tst_tags.TagCod AND tst_tags.CrsCod='1859' AND tst_tags.TagHidden='Y'); + +SELECT tst_questions.CodPrg FROM tst_questions,tst_question_tags,tst_tags WHERE tst_questions.CrsCod='421' AND tst_questions.CodPrg=tst_question_tags.CodPrg AND tst_question_tags.TagCod=tst_tags.TagCod AND tst_tags.CrsCod='421' AND tst_tags.TagHidden='Y' + +SELECT q.CodPrg FROM tst_questions AS q,tst_question_tags AS qt,tst_tags AS t WHERE q.CrsCod='421' AND q.CodPrg=qt.CodPrg AND qt.TagCod=t.TagCod AND t.CrsCod='421' AND t.TagHidden='Y'; + +SELECT COUNT(forum_thread.ThrCod),COUNT(forum_post.MsgCod) FROM forum_thread,forum_post WHERE forum_thread.ForumType='6' AND forum_thread.ThrCod=forum_post.ThrCod; +SELECT forum_thread.ThrCod,forum_thread.ThrInd,COUNT(forum_post.MsgCod),m0.MsgCod,m1.MsgCod,m0.AuthorDNI,m1.AuthorDNI,DATE_FORMAT(m0.CreatTime,'%%Y%%m%%d%%H%%i%%S'),DATE_FORMAT(m1.CreatTime,'%%Y%%m%%d%%H%%i%%S'),m0.Subject FROM forum_thread,forum_post,messages AS m0,messages AS m1 WHERE forum_thread.ForumType='6' AND forum_thread.ThrCod=forum_post.ThrCod AND forum_thread.FirstPstCod=m0.MsgCod AND forum_thread.LastPstCod=m1.MsgCod GROUP BY forum_post.ThrCod ORDER BY m%u.CreatTime DESC; +SELECT COUNT(*) FROM forum_thread,forum_post,messages WHERE forum_thread.ForumType='6' AND forum_thread.ThrCod=forum_post.ThrCod AND forum_post.MsgCod=messages.MsgCod AND messages.AuthorDNI='24243619'; + + +DROP INDEX MsgCod ON MsgCod; +CREATE UNIQUE INDEX MsgCod ON forum_post (MsgCod); + +ALTER TABLE forum_post ADD COLUMN ThrCod2 INT NOT NULL AFTER MsgCod; +UPDATE forum_post SET ThrCod2=ThrCod; +ALTER TABLE forum_post DROP COLUMN ThrCod; +ALTER TABLE forum_post CHANGE ThrCod2 ThrCod INT NOT NULL; +CREATE INDEX ThrCod ON forum_post (ThrCod); + +ALTER TABLE forum_thread DROP COLUMN ThrInd; + + +SELECT SQL_NO_CACHE CrsCod,ShortName FROM courses WHERE CrsCod IN (SELECT SQL_NO_CACHE DISTINCT messages.CrsCod FROM msg_received,messages WHERE msg_received.DstDNI='24243619' AND msg_received.MsgCod=messages.MsgCod) ORDER BY ShortName; + +ALTER TABLE fichas_profesor CHANGE Tlf Tlf CHAR(16) NOT NULL; +ALTER TABLE fichas_alumno CHANGE LocalPhone LocalPhone CHAR(16) NOT NULL; +ALTER TABLE fichas_alumno CHANGE FamilyPhone FamilyPhone CHAR(16) NOT NULL; + +mysql> CREATE TABLE forum_post (MsgCod INT NOT NULL, + ThrCod INT NOT NULL, + AuthorDNI CHAR(16) NOT NULL, + CreatTime DATETIME NOT NULL, + ModifTime DATETIME NOT NULL, + Subject TEXT NOT NULL, + Content LONGTEXT NOT NULL; + UNIQUE INDEX(MsgCod),INDEX(ThrCod),INDEX(AuthorDNI),INDEX(CreatTime)); + +mysql> DESCRIBE forum_post; ++-----------+----------+------+-----+---------------------+-------+ +| Field | Type | Null | Key | Default | Extra | ++-----------+----------+------+-----+---------------------+-------+ +| MsgCod | int(11) | NO | PRI | 0 | | +| ThrCod | int(11) | NO | MUL | | | +| ModifTime | datetime | NO | | 0000-00-00 00:00:00 | | ++-----------+----------+------+-----+---------------------+-------+ +3 rows in set (0.00 sec) + +mysql> CREATE TABLE messages (MsgCod INT NOT NULL AUTO_INCREMENT, + CrsCod INT NOT NULL DEFAULT -1, + AuthorDNI CHAR(16) NOT NULL, + CreatTime DATETIME NOT NULL, + Subject TEXT NOT NULL, + Content LONGTEXT NOT NULL, + UNIQUE INDEX(MsgCod), INDEX(CrsCod), INDEX(AuthorDNI)); +mysql> DESCRIBE messages; ++-----------+----------+------+-----+---------------------+----------------+ +| Field | Type | Null | Key | Default | Extra | ++-----------+----------+------+-----+---------------------+----------------+ +| MsgCod | int(11) | NO | PRI | NULL | auto_increment | +| CrsCod | int(11) | NO | MUL | -1 | | +| AuthorDNI | char(16) | NO | MUL | | | +| CreatTime | datetime | NO | | 0000-00-00 00:00:00 | | +| Subject | text | NO | | | | +| Content | longtext | NO | | | | ++-----------+----------+------+-----+---------------------+----------------+ +6 rows in set (0.00 sec) + +CREATE INDEX CreatTime ON messages (CreatTime); +------------------- + +BACKUP TABLE forum_post TO '/home/acanas/'; +ALTER TABLE forum_post CHANGE MsgCod MsgCod INT NOT NULL AUTO_INCREMENT; +ALTER TABLE forum_post ADD COLUMN AuthorDNI CHAR(16) NOT NULL AFTER ThrCod; +ALTER TABLE forum_post ADD COLUMN CreatTime DATETIME NOT NULL AFTER AuthorDNI; +ALTER TABLE forum_post ADD COLUMN Subject TEXT NOT NULL AFTER ModifTime; +ALTER TABLE forum_post ADD COLUMN Content LONGTEXT NOT NULL AFTER Subject; +CREATE INDEX AuthorDNI ON forum_post (AuthorDNI); +CREATE INDEX CreatTime ON forum_post (CreatTime); +CREATE INDEX ModifTime ON forum_post (ModifTime); +UPDATE forum_post,messages SET forum_post.AuthorDNI=messages.AuthorDNI WHERE forum_post.MsgCod=messages.MsgCod; +UPDATE forum_post,messages SET forum_post.CreatTime=messages.CreatTime WHERE forum_post.MsgCod=messages.MsgCod; +UPDATE forum_post,messages SET forum_post.Subject=messages.Subject WHERE forum_post.MsgCod=messages.MsgCod; +UPDATE forum_post,messages SET forum_post.Content=messages.Content WHERE forum_post.MsgCod=messages.MsgCod; + +DELETE FROM messages WHERE MsgCod IN (SELECT MsgCod FROM forum_post) AND MsgCod NOT IN (SELECT MsgCod FROM msg_sent) AND MsgCod NOT IN (SELECT MsgCod FROM msg_received) AND MsgCod NOT IN (SELECT MsgCod FROM msg_notices); + +------------------------------------ + + +BACKUP TABLE msg_notices TO '/home/acanas/'; +ALTER TABLE msg_notices CHANGE MsgCod MsgCod INT NOT NULL AUTO_INCREMENT; +ALTER TABLE msg_notices ADD COLUMN AuthorDNI CHAR(16) NOT NULL AFTER CrsCod; +ALTER TABLE msg_notices ADD COLUMN CreatTime DATETIME NOT NULL AFTER AuthorDNI; +ALTER TABLE msg_notices ADD COLUMN Content LONGTEXT NOT NULL AFTER CreatTime; +CREATE INDEX AuthorDNI ON msg_notices (AuthorDNI); +CREATE INDEX CreatTime ON msg_notices (CreatTime); +UPDATE msg_notices,messages SET msg_notices.AuthorDNI=messages.AuthorDNI WHERE msg_notices.MsgCod=messages.MsgCod; +UPDATE msg_notices,messages SET msg_notices.CreatTime=messages.CreatTime WHERE msg_notices.MsgCod=messages.MsgCod; +UPDATE msg_notices,messages SET msg_notices.Content=messages.Content WHERE msg_notices.MsgCod=messages.MsgCod; + +DELETE FROM messages WHERE MsgCod IN (SELECT MsgCod FROM msg_notices) AND MsgCod NOT IN (SELECT MsgCod FROM msg_sent) AND MsgCod NOT IN (SELECT MsgCod FROM msg_received); + +----- + +ALTER TABLE courses DROP COLUMN FullCrsCod_old; + +SELECT COUNT(*) FROM forum_thr_read WHERE ThrCod='4955'; + +SELECT COUNT(DISTINCT AuthorDNI) FROM forum_post WHERE ThrCod='4955'; + +SELECT COUNT(*) FROM forum_post WHERE ThrCod='4955'; + +CREATE TABLE forum_thr_clip (ThrCod INT NOT NULL,DNI CHAR(16) NOT NULL,UNIQUE INDEX(ThrCod),UNIQUE INDEX (DNI)); +ALTER TABLE forum_thr_clip ADD COLUMN TimeInsert TIMESTAMP NOT NULL AFTER DNI; + +SELECT CrsCod,AuthorDNI,DATE_FORMAT(CreatTime,'%Y%m%d%H%i%S'),Subject,Content FROM messages WHERE MsgCod='484624'; + + +SELECT COUNT(forum_post.MsgCod),m0.MsgCod,m1.MsgCod,m0.AuthorDNI,m1.AuthorDNI,DATE_FORMAT(m0.CreatTime,'%Y%m%d%H%i%S'),DATE_FORMAT(m1.CreatTime,'%Y%m%d%H%i%S'),m0.Subject FROM forum_thread,forum_post,forum_post AS m0,forum_post AS m1 WHERE forum_thread.ThrCod='5004' AND forum_thread.ThrCod=forum_post.ThrCod AND forum_thread.FirstPstCod=m0.MsgCod AND forum_thread.LastPstCod=m1.MsgCod GROUP BY forum_post.ThrCod; + +SELECT m0.MsgCod,m1.MsgCod,m0.AuthorDNI,m1.AuthorDNI,DATE_FORMAT(m0.CreatTime,'%Y%m%d%H%i%S'),DATE_FORMAT(m1.CreatTime,'%Y%m%d%H%i%S'),m0.Subject FROM forum_thread,forum_post AS m0,forum_post AS m1 WHERE forum_thread.ThrCod='5004' AND forum_thread.FirstPstCod=m0.MsgCod AND forum_thread.LastPstCod=m1.MsgCod; + +---- + +ALTER TABLE usr_data ADD COLUMN Nickname CHAR(16) NOT NULL AFTER DNI; +CREATE INDEX Nickname ON usr_data (Nickname); +UPDATE usr_data,apodos SET usr_data.Nickname=apodos.apodo WHERE usr_data.DNI=apodos.DNI; + +---- + +ALTER TABLE usr_data ADD COLUMN Dpto VARCHAR(255) NOT NULL AFTER PublicPhoto; +ALTER TABLE usr_data ADD COLUMN Centro VARCHAR(255) NOT NULL AFTER Dpto; +ALTER TABLE usr_data ADD COLUMN Despacho VARCHAR(255) NOT NULL AFTER Centro; +ALTER TABLE usr_data ADD COLUMN Tlf CHAR(16) NOT NULL AFTER Despacho; +UPDATE usr_data,fichas_profesor SET usr_data.Dpto=fichas_profesor.Dpto WHERE usr_data.DNI=fichas_profesor.DNI; +UPDATE usr_data,fichas_profesor SET usr_data.Centro=fichas_profesor.Centro WHERE usr_data.DNI=fichas_profesor.DNI; +UPDATE usr_data,fichas_profesor SET usr_data.Despacho=fichas_profesor.Despacho WHERE usr_data.DNI=fichas_profesor.DNI; +UPDATE usr_data,fichas_profesor SET usr_data.Tlf=fichas_profesor.Tlf WHERE usr_data.DNI=fichas_profesor.DNI; + +----- + +ALTER TABLE usr_data ADD COLUMN LocalAddress VARCHAR(255) NOT NULL AFTER Tlf; +ALTER TABLE usr_data ADD COLUMN LocalPhone CHAR(16) NOT NULL AFTER LocalAddress; +ALTER TABLE usr_data ADD COLUMN FamilyAddress VARCHAR(255) NOT NULL AFTER LocalPhone; +ALTER TABLE usr_data ADD COLUMN FamilyPhone CHAR(16) NOT NULL AFTER FamilyAddress; +ALTER TABLE usr_data ADD COLUMN OriginPlace VARCHAR(255) NOT NULL AFTER FamilyPhone; +ALTER TABLE usr_data ADD COLUMN Birthday DATE NOT NULL AFTER OriginPlace; +ALTER TABLE usr_data ADD COLUMN Observaciones TEXT NOT NULL AFTER Birthday; +UPDATE usr_data,fichas_alumno SET usr_data.LocalAddress=fichas_alumno.LocalAddress WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.LocalPhone=fichas_alumno.LocalPhone WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.FamilyAddress=fichas_alumno.FamilyAddress WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.FamilyPhone=fichas_alumno.FamilyPhone WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.OriginPlace=fichas_alumno.OriginPlace WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.Birthday=fichas_alumno.Birthday WHERE usr_data.DNI=fichas_alumno.DNI; +UPDATE usr_data,fichas_alumno SET usr_data.Observaciones=fichas_alumno.Observaciones WHERE usr_data.DNI=fichas_alumno.DNI; + +---- + +RENAME TABLE fichas_comun TO usr_data; +ALTER TABLE usr_data CHANGE Dpto Dept VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE Centro Centre VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE Despacho Office VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE Tlf OfficePhone CHAR(16) NOT NULL; +ALTER TABLE usr_data CHANGE DirLocal LocalAddress VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE DirFamilia FamilyAddress VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE TlfLocal LocalPhone CHAR(16) NOT NULL; +ALTER TABLE usr_data CHANGE TlfFamilia FamilyPhone CHAR(16) NOT NULL; +ALTER TABLE usr_data CHANGE LugarOrg OriginPlace VARCHAR(255) NOT NULL; +ALTER TABLE usr_data CHANGE FechaNac Birthday DATE NOT NULL; +ALTER TABLE usr_data CHANGE Observaciones Comments TEXT NOT NULL; + +---- + +ALTER TABLE usr_data ADD COLUMN Language CHAR(2) NOT NULL AFTER Gender; + +---- + +mysql> describe asg_usr; ++----------------+---------------+------+-----+---------+-------+ +| Field | Type | Null | Key | Default | Extra | ++----------------+---------------+------+-----+---------+-------+ +| CrsCod | int(11) | NO | PRI | -1 | | +| DNI | char(16) | NO | PRI | | | +| Accepted | enum('N','Y') | NO | | N | | +| UltPst | tinyint(4) | YES | | NULL | | +| UltAccDescarga | datetime | YES | | NULL | | +| UltAccComunAsg | datetime | YES | | NULL | | +| UltAccMisTrbjs | datetime | YES | | NULL | | +| UltAccTrbjsAsg | datetime | YES | | NULL | | +| UltAccCalif | datetime | YES | | NULL | | +| LastDowGrpCod | int(11) | NO | | -1 | | +| LastComGrpCod | int(11) | NO | | -1 | | +| LastAssGrpCod | int(11) | NO | | -1 | | +| NumAccTst | int(11) | NO | | 0 | | +| NextAccTst | datetime | YES | | NULL | | +| ColsOrla | tinyint(4) | YES | | NULL | | ++----------------+---------------+------+-----+---------+-------+ +15 rows in set (0.12 sec) + +RENAME TABLE asg_usr TO crs_usr; +ALTER TABLE crs_usr CHANGE UltPst LastTab TINYINT NOT NULL; +ALTER TABLE crs_usr CHANGE UltAccDescarga LastAccDownload DATETIME NOT NULL; +ALTER TABLE crs_usr CHANGE UltAccComunAsg LastAccCommonCrs DATETIME NOT NULL; +ALTER TABLE crs_usr CHANGE UltAccMisTrbjs LastAccMyWorks DATETIME NOT NULL; +ALTER TABLE crs_usr CHANGE UltAccTrbjsAsg LastAccCrsWorks DATETIME NOT NULL; +ALTER TABLE crs_usr CHANGE UltAccCalif LastAccGrades DATETIME NOT NULL; +ALTER TABLE crs_usr CHANGE ColsOrla ColsClassPhoto TINYINT NOT NULL; + +ALTER TABLE crs_usr CHANGE NextAccTst NextAccTst DATETIME NOT NULL; + +----------- + +ALTER TABLE usr_data ADD COLUMN LastTab TINYINT NOT NULL AFTER Comments; + +ALTER TABLE crs_usr DROP COLUMN LastTab; + +----- + +RENAME TABLE asg_tipos_grp TO crs_grp_types; + +RENAME TABLE degree_types TO deg_types; +RENAME TABLE asg_grupos TO crs_grp; + +RENAME TABLE asg_grp_usr TO crs_grp_usr; + +ALTER TABLE crs_grp_types ADD COLUMN GrpTypCod INT NOT NULL AFTER CodTipoGrupo; +UPDATE crs_grp_types SET GrpTypCod=CodTipoGrupo; +ALTER TABLE crs_grp_types DROP COLUMN CodTipoGrupo; +CREATE UNIQUE INDEX GrpTypCod ON crs_grp_types (GrpTypCod); +ALTER TABLE crs_grp_types CHANGE GrpTypCod GrpTypCod INT NOT NULL AUTO_INCREMENT; + +ALTER TABLE crs_grp CHANGE CodTipoGrupo GrpTypCod INT NOT NULL; + +ALTER TABLE crs_grp_types CHANGE TipoGrupo GrpTypName VARCHAR(255) NOT NULL; +ALTER TABLE crs_grp_types CHANGE Obligatorio Obligatory ENUM('N','S') NOT NULL; + +ALTER TABLE crs_grp_types ADD COLUMN Obligatory2 ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER Obligatory; +UPDATE crs_grp_types SET Obligatory2='N' WHERE Obligatory='N'; +UPDATE crs_grp_types SET Obligatory2='Y' WHERE Obligatory='S'; +ALTER TABLE crs_grp_types DROP COLUMN Obligatory; +ALTER TABLE crs_grp_types CHANGE Obligatory2 Obligatory ENUM('N','Y') NOT NULL DEFAULT 'N'; + +ALTER TABLE crs_grp_types ADD COLUMN Multiple2 ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER Multiple; +UPDATE crs_grp_types SET Multiple2='N' WHERE Multiple='N'; +UPDATE crs_grp_types SET Multiple2='Y' WHERE Multiple='S'; +ALTER TABLE crs_grp_types DROP COLUMN Multiple; +ALTER TABLE crs_grp_types CHANGE Multiple2 Multiple ENUM('N','Y') NOT NULL DEFAULT 'N'; + +CREATE TABLE prueba (CodGrupo INT NOT NULL AUTO_INCREMENT, GrpTypCod INT NOT NULL, UNIQUE INDEX(CodGrupo), INDEX(GrpTypCod)); + +ALTER TABLE prueba CHANGE CodGrupo GrpCod INT NOT NULL AUTO_INCREMENT; + +----- + +ALTER TABLE crs_grp CHANGE CodGrupo GrpCod INT NOT NULL AUTO_INCREMENT; +ALTER TABLE crs_grp_usr CHANGE CodGrupo GrpCod INT NOT NULL; +ALTER TABLE portapapeles CHANGE CodGrupo GrpCod INT NOT NULL; +ALTER TABLE crs_common_files CHANGE CodGrupo GrpCod INT NOT NULL; + +DROP TABLE prueba; +DROP TABLE apodos; + +RENAME TABLE asg_arch_comunes TO crs_common_files; + +RENAME TABLE asg_fichas TO crs_cards; +RENAME TABLE campos_fichas TO crs_card_fields; + +RENAME TABLE calificaciones TO grades; +RENAME TABLE portapapeles TO clipboard; +--- + +RENAME TABLE param_ocultos TO hidden_params; +RENAME TABLE descargas_ocultas TO hidden_downloads; + + +RENAME TABLE convocatorias TO calls_for_exams; + +RENAME TABLE horario_asg TO timetable_crs; +RENAME TABLE horario_tut TO timetable_tut; + +RENAME TABLE num_accesos_sin_foto TO clicks_without_photo; +RENAME TABLE num_clicks_without_photo TO clicks_without_photo; + +---- + +SHOW INDEX FROM usr_data; +DROP INDEX Nickname ON usr_data; +CREATE INDEX Nickname ON usr_data (Nickname); +SHOW INDEX FROM usr_data; + +---- + +ALTER TABLE usr_data ADD COLUMN UsrCod INT NOT NULL FIRST; +CREATE UNIQUE INDEX UsrCod ON usr_data (UsrCod); +ALTER TABLE usr_data CHANGE UsrCod UsrCod INT NOT NULL AUTO_INCREMENT; + +----------------------------------------------------------------------------------------------------------------------------------- + +ALTER TABLE usr_data DROP COLUMN UsrCod; +ALTER TABLE usr_data ADD UsrCod INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (UsrCod); + +--- + +*ALTER TABLE msg_new ADD COLUMN UsrCod INT NOT NULL FIRST; // Add unique index! +*UPDATE msg_new,usr_data SET msg_new.UsrCod=usr_data.UsrCod WHERE msg_new.DstDNI=usr_data.DNI; +*DROP INDEX DstDNI ON msg_new; +*CREATE UNIQUE INDEX UsrCod ON msg_new (UsrCod); +*ALTER TABLE msg_new DROP COLUMN DstDNI; + +*ALTER TABLE msg_received ADD COLUMN UsrCod INT NOT NULL AFTER MsgCod; // Add multiple index! +*UPDATE msg_received,usr_data SET msg_received.UsrCod=usr_data.UsrCod WHERE msg_received.DstDNI=usr_data.DNI; +*CREATE INDEX UsrCod ON msg_received (UsrCod); +*ALTER TABLE msg_received DROP COLUMN DstDNI; + +*ALTER TABLE msg_sent ADD COLUMN UsrCod INT NOT NULL AFTER MsgCod; // Add multiple index! +*UPDATE msg_sent,usr_data SET msg_sent.UsrCod=usr_data.UsrCod WHERE msg_sent.DstDNI=usr_data.DNI; +*CREATE INDEX UsrCod ON msg_sent (UsrCod); +*ALTER TABLE msg_sent DROP COLUMN DstDNI; + +*ALTER TABLE clicks_without_photo ADD COLUMN UsrCod INT NOT NULL FIRST; // Add unique index! +*UPDATE clicks_without_photo,usr_data SET clicks_without_photo.UsrCod=usr_data.UsrCod WHERE clicks_without_photo.DNI=usr_data.DNI; +*ALTER TABLE clicks_without_photo CHANGE NumAccesos NumClicks INT NOT NULL; +*ALTER TABLE clicks_without_photo DROP COLUMN DNI; +*CREATE UNIQUE INDEX UsrCod ON clicks_without_photo (UsrCod); + +*ALTER TABLE clipboard ADD COLUMN UsrCod INT NOT NULL FIRST; // Add unique index +*UPDATE clipboard,usr_data SET clipboard.UsrCod=usr_data.UsrCod,clipboard.Fecha=clipboard.Fecha WHERE clipboard.DNI=usr_data.DNI; +*ALTER TABLE clipboard DROP COLUMN DNI; +*CREATE UNIQUE INDEX UsrCod ON clipboard (UsrCod); +*ALTER TABLE clipboard ADD COLUMN WorksUsrCod INT NOT NULL AFTER GrpCod; +*UPDATE clipboard,usr_data SET clipboard.WorksUsrCod=usr_data.UsrCod,clipboard.Fecha=clipboard.Fecha WHERE clipboard.DNITrabajos=usr_data.DNI; +*ALTER TABLE clipboard DROP COLUMN DNITrabajos; + +*ALTER TABLE connected ADD COLUMN UsrCod INT NOT NULL FIRST; // Add unique index! + +*ALTER TABLE sessions ADD COLUMN UsrCod INT NOT NULL AFTER IdSession; // Add multiple index! + +*ALTER TABLE crs_usr ADD COLUMN UsrCod INT NOT NULL AFTER CrsCod; // Add UNIQUE INDEX(CrsCod,UsrCod)! + +*ALTER TABLE crs_grp_usr ADD COLUMN UsrCod INT NOT NULL AFTER GrpCod; // Add multiple index! + +*UPDATE connected,usr_data SET connected.UsrCod=usr_data.UsrCod WHERE connected.DNI=usr_data.DNI; +*UPDATE sessions,usr_data SET sessions.UsrCod=usr_data.UsrCod WHERE sessions.DNI=usr_data.DNI; + +*UPDATE crs_usr,usr_data SET crs_usr.UsrCod=usr_data.UsrCod WHERE crs_usr.DNI=usr_data.DNI; +*UPDATE crs_grp_usr,usr_data SET crs_grp_usr.UsrCod=usr_data.UsrCod WHERE crs_grp_usr.DNI=usr_data.DNI; + +*ALTER TABLE crs_usr DROP COLUMN DNI; +*ALTER TABLE crs_grp_usr DROP COLUMN DNI; + +*DROP INDEX CrsCod_DNI ON crs_usr; +*CREATE UNIQUE INDEX CrsCod_UsrCod ON crs_usr (CrsCod,UsrCod); +*CREATE INDEX UsrCod ON crs_grp_usr (UsrCod); + +*CREATE UNIQUE INDEX GrpCod_UsrCod ON crs_grp_usr (GrpCod,UsrCod); + +*ALTER TABLE sessions DROP COLUMN DNI; +*CREATE INDEX UsrCod ON sessions (UsrCod); + +*ALTER TABLE connected DROP COLUMN DNI; +*CREATE UNIQUE INDEX UsrCod ON connected (UsrCod); + +*ALTER TABLE crs_common_files ADD COLUMN UsrCod INT NOT NULL AFTER GrpCod; +*UPDATE crs_common_files,usr_data SET crs_common_files.UsrCod=usr_data.UsrCod WHERE crs_common_files.DNI=usr_data.DNI; +*ALTER TABLE crs_common_files DROP COLUMN DNI; +*CREATE INDEX UsrCod ON crs_common_files (UsrCod); +*DROP INDEX CodAsg ON crs_common_files; + +*ALTER TABLE crs_cards ADD COLUMN UsrCod INT NOT NULL FIRST; // Add unique index! +*UPDATE crs_cards,usr_data SET crs_cards.UsrCod=usr_data.UsrCod WHERE crs_cards.DNI=usr_data.DNI; + +*DROP INDEX CodCampo ON crs_cards; +*DROP INDEX DNI ON crs_cards; +*ALTER TABLE crs_cards DROP COLUMN DNI; +*CREATE UNIQUE INDEX FldCod_UsrCod ON crs_cards (CodCampo,UsrCod); + +*ALTER TABLE deg_admin ADD COLUMN UsrCod INT NOT NULL FIRST; // Add UNIQUE INDEX(UsrCod,DegCod)! +*UPDATE deg_admin,usr_data SET deg_admin.UsrCod=usr_data.UsrCod WHERE deg_admin.DNI=usr_data.DNI; + +*DROP INDEX DNI ON deg_admin; +*ALTER TABLE deg_admin DROP COLUMN DNI; +*CREATE UNIQUE INDEX UsrCod_DegCod ON deg_admin (UsrCod,DegCod); + +*ALTER TABLE expanded_folders ADD COLUMN UsrCod INT NOT NULL FIRST; // Add multiple index! +*UPDATE expanded_folders,usr_data SET expanded_folders.UsrCod=usr_data.UsrCod WHERE expanded_folders.DNI=usr_data.DNI; +*DROP INDEX DNI ON expanded_folders; +*DROP INDEX CrsCod_2 ON expanded_folders; +*ALTER TABLE expanded_folders DROP COLUMN DNI; +*CREATE INDEX UsrCod_TreeType ON expanded_folders (UsrCod,TreeType); +*CREATE INDEX CrsCod ON expanded_folders (CrsCod); +*ALTER TABLE expanded_folders DROP COLUMN DNIWorks; + +*ALTER TABLE forum_disabled_post ADD COLUMN UsrCod INT NOT NULL AFTER MsgCod; +*UPDATE forum_disabled_post,usr_data SET forum_disabled_post.UsrCod=usr_data.UsrCod WHERE forum_disabled_post.DNI=usr_data.DNI; +*ALTER TABLE forum_disabled_post DROP COLUMN DNI; + +*ALTER TABLE forum_thr_read ADD COLUMN UsrCod INT NOT NULL AFTER ThrCod; // Add UNIQUE INDEX(ThrCod,DNI)! +*UPDATE forum_thr_read,usr_data SET forum_thr_read.UsrCod=usr_data.UsrCod WHERE forum_thr_read.DNI=usr_data.DNI; +*DROP INDEX ThrCod ON forum_thr_read; +*CREATE UNIQUE INDEX ThrCod_UsrCod ON forum_thr_read (ThrCod,UsrCod); +*ALTER TABLE forum_thr_read DROP COLUMN DNI; + +*ALTER TABLE forum_thr_clip ADD COLUMN UsrCod INT NOT NULL AFTER ThrCod; // Add unique index! +*UPDATE forum_thr_clip,usr_data SET forum_thr_clip.UsrCod=usr_data.UsrCod WHERE forum_thr_clip.DNI=usr_data.DNI; +*ALTER TABLE forum_thr_clip DROP COLUMN DNI; +*CREATE UNIQUE INDEX UsrCod ON forum_thr_clip (UsrCod); + +*ALTER TABLE timetable_tut ADD COLUMN UsrCod INT NOT NULL FIRST; // Add multiple index! +*UPDATE timetable_tut,usr_data SET timetable_tut.UsrCod=usr_data.UsrCod WHERE timetable_tut.DNI=usr_data.DNI; +*ALTER TABLE timetable_tut DROP COLUMN DNI; +*CREATE INDEX UsrCod ON timetable_tut (UsrCod); + +CREATE INDEX UsrCod ON crs_usr (UsrCod); +CREATE INDEX UsrCod ON crs_grp_usr (UsrCod); + +SELECT COUNT(DISTINCT usr_data.UsrCod) FROM usr_data,crs_usr WHERE usr_data.UsrType='2' AND usr_data.UsrCod=crs_usr.UsrCod; + +----- + +ALTER TABLE usr_data ADD COLUMN NumNewMsgs INT NOT NULL AFTER LastTab; +UPDATE usr_data,msg_new SET usr_data.NumNewMsgs=msg_new.NumNewMsgs WHERE usr_data.UsrCod=msg_new.UsrCod; + +----- + +ALTER TABLE msg_received ADD COLUMN Replied2 ENUM('N','Y') NOT NULL AFTER Replied; +UPDATE msg_received SET Replied2='Y' WHERE Replied<>'N'; +ALTER TABLE msg_sent ADD COLUMN ReadByDst2 ENUM('N','Y') NOT NULL AFTER ReadByDst; +UPDATE msg_sent SET ReadByDst2='Y' WHERE ReadByDst<>'N'; + +UPDATE msg_received SET Replied2='Y' WHERE Replied<>'N'; +UPDATE msg_sent SET ReadByDst2='Y' WHERE ReadByDst<>'N'; +ALTER TABLE msg_received DROP COLUMN Replied; +ALTER TABLE msg_received CHANGE Replied2 Replied ENUM('N','Y') NOT NULL; +ALTER TABLE msg_sent DROP COLUMN ReadByDst; +ALTER TABLE msg_sent CHANGE ReadByDst2 ReadByDst ENUM('N','Y') NOT NULL; + +CREATE UNIQUE INDEX UsrCod_MsgCod ON msg_sent (UsrCod,MsgCod); +CREATE UNIQUE INDEX UsrCod_MsgCod ON msg_received (UsrCod,MsgCod); + +ALTER TABLE msg_received CHANGE Replied Replied ENUM('N','Y') NOT NULL DEFAULT 'N'; +ALTER TABLE msg_sent CHANGE ReadByDst ReadByDst ENUM('N','Y') NOT NULL DEFAULT 'N'; + +ALTER TABLE msg_received ADD COLUMN Expanded ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER Replied; + +ALTER TABLE msg_received ADD COLUMN ReadByMe ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER UsrCod; + +UPDATE msg_received SET ReadByMe='Y'; +UPDATE msg_sent SET ReadByDst='Y'; + +---- + +ALTER TABLE messages ADD COLUMN Deleted ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER UsrCod; + +ALTER TABLE msg_received ADD COLUMN Deleted ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER UsrCod; + + +SELECT MsgCod FROM messages WHERE UsrCod='1346' AND Deleted='N' ORDER BY MsgCod DESC; + +SELECT COUNT(*) FROM msg_sent WHERE (MsgCod,UsrCod) NOT IN (SELECT DISTINCTROW MsgCod,UsrCod FROM msg_received); + +SELECT MsgCod,UsrCod,'Y',ReadByDst,'N','N' FROM msg_sent WHERE (MsgCod,UsrCod) NOT IN (SELECT MsgCod,UsrCod FROM msg_received); + +INSERT INTO msg_received (MsgCod,UsrCod,Deleted,ReadByMe,Replied,Expanded) SELECT MsgCod,UsrCod,'Y',ReadByDst,'N','N' FROM msg_sent WHERE (MsgCod,UsrCod) NOT IN (SELECT MsgCod,UsrCod FROM msg_received); + +ALTER TABLE msg_received ADD COLUMN OldLstDst TEXT AFTER Expanded; + +UPDATE msg_received,msg_sent SET msg_received.OldLstDst=msg_sent.OldLstDst WHERE msg_received.UsrCod='-1' AND msg_received.MsgCod=msg_sent.MsgCod; +---- + +ALTER TABLE messages ADD COLUMN Expanded ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER Deleted; + +--- +ALTER TABLE msg_received CHANGE ReadByMe Open ENUM('N','Y') NOT NULL DEFAULT 'N'; + +--- + +ALTER TABLE log ADD COLUMN Addr CHAR(40) NOT NULL AFTER Accion; + +ALTER TABLE log ADD COLUMN Host VARCHAR(255) NOT NULL AFTER Addr; + +ALTER TABLE log DROP COLUMN Host; + +---- + +ALTER TABLE usr_data ADD COLUMN PendingPassword CHAR(22) NOT NULL AFTER Password; + +---- + +ALTER TABLE usr_data DROP COLUMN PendingPassword; +CREATE TABLE pending_passwd (UsrCod INT NOT NULL,PendingPassword CHAR(22) NOT NULL,DateAndTime DATETIME NOT NULL,PRIMARY KEY (UsrCod)); + +----- + +ALTER TABLE usr_data DROP COLUMN Question; +ALTER TABLE usr_data DROP COLUMN SecretAnswer; + +UPDATE usr_data SET Password='' WHERE Password='kbG7BYtb_ghI57nsp2EMMw'; + +----- + +ALTER TABLE sessions DROP COLUMN PasswordSHA512; +ALTER TABLE sessions ADD COLUMN PasswordSHA512 CHAR(86) NOT NULL AFTER Password; +ALTER TABLE usr_data ADD COLUMN PasswordSHA512 CHAR(86) NOT NULL AFTER Password; +ALTER TABLE pending_passwd ADD COLUMN PendingPasswordSHA512 CHAR(86) NOT NULL AFTER PendingPassword; + +---- +ALTER TABLE sessions DROP COLUMN Password; +ALTER TABLE pending_passwd DROP COLUMN PendingPassword; +---- +ALTER TABLE usr_data DROP COLUMN Question; +ALTER TABLE usr_data DROP COLUMN SecretAnswer; +ALTER TABLE usr_data DROP COLUMN Password; +---- +ALTER TABLE pending_passwd CHANGE PendingPasswordSHA512 PendingPassword CHAR(86) NOT NULL; +ALTER TABLE sessions CHANGE PasswordSHA512 Password CHAR(86) NOT NULL; +ALTER TABLE usr_data CHANGE PasswordSHA512 Password CHAR(86) NOT NULL; +---- + +ALTER TABLE sessions CHANGE IdSession IdSession CHAR(43) NOT NULL; +ALTER TABLE tst_status CHANGE IdSession IdSession CHAR(43) NOT NULL; +ALTER TABLE hidden_params CHANGE IdSesion IdSesion CHAR(43) NOT NULL; +ALTER TABLE usr_data CHANGE Photo Photo CHAR(43) NOT NULL; +---- +ALTER TABLE usr_data ADD COLUMN HideSideCols ENUM('N','Y') NOT NULL AFTER NumNewMsgs; + +ALTER TABLE usr_data CHANGE HideSideCols HideSideCols ENUM('N','Y') NOT NULL DEFAULT 'N'; +ALTER TABLE usr_data CHANGE PublicPhoto PublicPhoto ENUM('N','Y') NOT NULL DEFAULT 'N'; + +ALTER TABLE sessions ADD COLUMN HideSideCols ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER LastRefresh; + +--- + +ALTER TABLE usr_data ADD COLUMN SideCols TINYINT NOT NULL DEFAULT 3 AFTER HideSideCols; +ALTER TABLE sessions ADD COLUMN SideCols TINYINT NOT NULL DEFAULT 3 AFTER HideSideCols; + +ALTER TABLE usr_data DROP COLUMN HideSideCols; +ALTER TABLE sessions DROP COLUMN HideSideCols; + +---- + +CREATE TABLE log_recent (DegCod INT NOT NULL DEFAULT -1,CrsCod INT NOT NULL DEFAULT -1,DNI CHAR(16) NOT NULL,UsrType TINYINT NOT NULL,ClickTime DATETIME NOT NULL,TimeToGenerate INT NOT NULL,TimeToSend INT NOT NULL,Action VARCHAR(32) NOT NULL,IP CHAR(40) NOT NULL,Comments VARCHAR(255),INDEX (DegCod),INDEX(CrsCod),INDEX(DNI),INDEX(ClickTime,UsrType)); + +DELETE FROM log_recent; +INSERT log_recent SELECT * FROM log WHERE FechaHora>='20080501'; + +---- + +RENAME TABLE msg_sent TO msg_sent_old; +CREATE TABLE msg_received_old LIKE msg_received; +INSERT msg_received_old SELECT * FROM msg_received; +ALTER TABLE msg_received DROP COLUMN OldLstDst; + +nice -n 19 rm -Rf swad-copia-2008-05-17; mkdir swad-copia-2008-06-09; chmod go-rwx swad-copia-2008-06-09; nice -n 19 cp -Rp /home swad html chatserver swad-copia-2008-06-09; df; ls -l + +---- + +SELECT DATE_FORMAT(FechaHora,'%Y%m') AS Month,COUNT(*) FROM log WHERE FechaHora >= '20050101' AND FechaHora < '20080601' GROUP BY Month DESC; + +SELECT DATE_FORMAT(FechaHora,'%Y%m') AS Month,COUNT(DISTINCT(DNI)) FROM log WHERE FechaHora >= '20050101' AND FechaHora < '20080601' AND UsrType<>'0' GROUP BY Month DESC; + +----- + +ALTER TABLE usr_data ADD COLUMN Theme CHAR(16) NOT NULL AFTER Gender; + +ALTER TABLE hidden_params CHANGE ValorParam ParamValue TEXT; + +ALTER TABLE usr_data ADD INDEX (Theme); +ALTER TABLE usr_data ADD INDEX (Language); +ALTER TABLE usr_data ADD INDEX (SideCols); + +---- + +CREATE TABLE IP_prefs (IP CHAR(40) NOT NULL,LastChange DATETIME NOT NULL,Theme CHAR(16) NOT NULL,Language CHAR(2) NOT NULL,SideCols TINYINT NOT NULL,PRIMARY KEY (IP),INDEX(LastChange)); + +ALTER TABLE IP_prefs ADD COLUMN UsrCod INT NOT NULL DEFAULT -1 AFTER IP; +ALTER TABLE IP_prefs ADD INDEX (UsrCod); + +---- + +ALTER TABLE usr_data CHANGE ShowSideCols SideCols TINYINT NOT NULL DEFAULT 3; +ALTER TABLE sessions CHANGE ShowSideCols SideCols TINYINT NOT NULL DEFAULT 3; +ALTER TABLE IP_prefs CHANGE ShowSideCols SideCols TINYINT NOT NULL DEFAULT 3; + +ALTER TABLE sessions DROP COLUMN SideCols; + +----- + +ALTER TABLE usr_data DROP COLUMN LastPageMsgSnt; +ALTER TABLE usr_data DROP COLUMN LastPageMsgRec; +ALTER TABLE usr_data ADD COLUMN LastPageMsgRec INT NOT NULL DEFAULT 1 AFTER LastTab; +ALTER TABLE usr_data ADD COLUMN LastPageMsgSnt INT NOT NULL DEFAULT 1 AFTER LastPageMsgRec; + +--- + +ALTER TABLE sessions ADD COLUMN LastPageMsgRec INT NOT NULL DEFAULT 1 AFTER LastRefresh; +ALTER TABLE sessions ADD COLUMN LastPageMsgSnt INT NOT NULL DEFAULT 1 AFTER LastPageMsgRec; +ALTER TABLE usr_data DROP COLUMN LastPageMsgSnt; +ALTER TABLE usr_data DROP COLUMN LastPageMsgRec; + +---- + +(SELECT DegCod,'','' AS SN,'' FROM deg_admin WHERE UsrCod='12040' AND DegCod<'0') UNION (SELECT degrees.DegCod,degrees.ShortName AS SN,degrees.FullName,degrees.Logo FROM deg_admin,degrees WHERE deg_admin.UsrCod='12040' AND deg_admin.DegCod>='0' AND deg_admin.DegCod=degrees.DegCod) ORDER BY SN; + +----- + +ALTER TABLE usr_data ADD INDEX (Dept); +ALTER TABLE usr_data ADD INDEX (Centre); + +---- + +SELECT * FROM usr_data WHERE MATCH (FirstName,Surname1,Surname2) AGAINST ('Ca�as'); + +SELECT FirstName,Surname1,Surname2,MATCH (FirstName,Surname1,Surname2) AGAINST ('Ca�as') FROM usr_data WHERE MATCH (FirstName,Surname1,Surname2) AGAINST ('Ca�as'); + +CREATE FULLTEXT INDEX Name ON usr_data (FirstName,Surname1,Surname2); + +DROP INDEX Name ON usr_data; + +CREATE FULLTEXT INDEX SubjectContent ON messages (Subject,Content); + + mysqldump -l -h swad.ugr.es -u swad -p swad > copia_base_datos_swad_2008_07_01.sql + +SELECT MsgCod,Subject FROM messages WHERE UsrCod='1346' AND Deleted='N' ORDER BY MsgCod DESC; + +---- + +ALTER TABLE DROP COLUMN crs_usr; +ALTER TABLE crs_usr ADD COLUMN UsrListType ENUM('classphoto','list') DEFAULT 'classphoto' NOT NULL AFTER ColsClassPhoto; + + +--- + +ALTER TABLE crs_usr ADD COLUMN UsrListType2 ENUM('classphoto','list') NOT NULL DEFAULT 'classphoto' AFTER NextAccTst; +UPDATE crs_usr SET UsrListType2=UsrListType; +ALTER TABLE crs_usr DROP COLUMN UsrListType; +ALTER TABLE crs_usr CHANGE UsrListType2 UsrListType ENUM('classphoto','list') NOT NULL DEFAULT 'classphoto'; + +---- + +ALTER TABLE crs_usr ADD COLUMN ListWithPhotos ENUM('N','Y') NOT NULL DEFAULT 'Y' AFTER ColsClassPhoto; + +---- + +ALTER TABLE sta_degrees ADD COLUMN Gender ENUM ('unknown','female','male','all') NOT NULL DEFAULT 'all' AFTER DegCod; +DROP INDEX DegCod ON sta_degrees; +CREATE UNIQUE INDEX DegCod_Gender ON sta_degrees (DegCod,Gender); + + +SELECT degrees.DegCod FROM degrees,sta_degrees WHERE sta_degrees.Gender='all' AND sta_degrees.NumStds>'0' AND degrees.DegCod=sta_degrees.DegCod ORDER BY degrees.ShortName; + +SELECT degrees.DegCod FROM degrees,sta_degrees WHERE sta_degrees.Gender='all' AND sta_degrees.NumStds>'0' AND degrees.DegCod=sta_degrees.DegCod ORDER BY sta_degrees.NumStdsWithPhoto DESC,sta_degrees.NumStds DESC,degrees.ShortName; + +---- + +CREATE TABLE centres (CtrCod INT NOT NULL AUTO_INCREMENT,ShortName VARCHAR(32) NOT NULL,FullName VARCHAR(255) NOT NULL,WWW VARCHAR(255) NOT NULL,UNIQUE INDEX(CtrCod)); + +---- + +INSERT INTO centres (ShortName,FullName,WWW) VALUES ('ETS Arquitectura' ,'E. T. S. de Arquitectura' ,'http://www.ugr.es/~etsarqui/' ),('ETSI Inf. y Teleco' ,'E. T. S. de Ingenier�as Inform�tica y de Telecomunicaci�n' ,'http://etsiit.ugr.es/' ),('ETSI Caminos...' ,'E. T. S. de Ingenieros de Caminos, Canales y Puertos' ,'http://www.ugr.es/~ecaminos/' ),('EU Arq. T�cnica' ,'E. U. de Arquitectura T�cnica' ,'http://arqtec.ugr.es/' ),('EU Ciencias Salud' ,'E. U. de Ciencias de la Salud' ,'http://www.ugr.es/~ccsalud/' ),('EU Enf.(Ceuta)' ,'E. U. de Enfermer�a (Cruz Roja) F. Gonz�lez Azcune (Ceuta)' ,'http://www.ugr.es/~eueceuta/eueceuta.html'),('EU Enf.(Mel.)' ,'E. U. de Enfermer�a (Cruz Roja) M. Olmedo Jim�nez (Melilla)','http://www.ugr.es/facultades.htm'),('EU Enf. V. Nieves' ,'E. U. de Enfermer�a (S.A.S.) Virgen de las Nieves' ,'http://www.ugr.es/facultades.htm'),('EU Empres. (Mel.)' ,'E. U. de Estudios Empresariales (Melilla)' ,'http://www.ugr.es/~eues/' ),('EU Trabajo Social' ,'E. U. de Trabajo Social' ,'http://www.ugr.es/~eutrasoc/' ),('EU EGB Inmac.' ,'E. U. de Profesorado de E.G.B. La Inmaculada' ,'http://www.eulainmaculada.com/' ),('F Bellas Artes' ,'Facultad de Bellas Artes' ,'http://www.ugr.es/~fbbaa/' ),('F Biblioteconom...' ,'Facultad de Biblioteconom�a y Documentaci�n' ,'http://www.ugr.es/~fbd/' ),('F Ciencias' ,'Facultad de Ciencias' ,'http://www.ugr.es/~decacien/' ),('F C. A. F�s. Depor.','Facultad de Ciencias de la Actividad F�sica y el Deporte' ,'http://deporte.ugr.es/' ),('F C. Educaci�n' ,'Facultad de Ciencias de la Educaci�n' ,'http://www.ugr.es/~dcceduc/' ),('F C. del Trabajo' ,'Facultad de Ciencias del Trabajo' ,'http://www.ugr.es/~citrab/' ),('F C. Eco. Empres.' ,'Facultad de Ciencias Econ�micas y Empresariales' ,'http://www.ugr.es/~fccee/' ),('F C. Pol�t. Sociol.','Facultad de Ciencias Pol�ticas y Sociolog�a' ,'http://www.ugr.es/~ccpolsoc/' ),('F Derecho' ,'Facultad de Derecho' ,'http://www.ugr.es/~wderecho/' ),('F Ed. Hum.(Ceuta)' ,'Facultad de Educaci�n y Humanidades (Ceuta)' ,'http://www.ugr.es/~w3ceuta/' ),('F Ed. Hum.(Mel.)' ,'Facultad de Educaci�n y Humanidades (Melilla)' ,'http://www.ugr.es/~faedumel/' ),('F Farmacia' ,'Facultad de Farmacia' ,'http://farmacia.ugr.es/' ),('F Filos. y Letras' ,'Facultad de Filosof�a y Letras' ,'http://www.ugr.es/~letras/' ),('F Medicina' ,'Facultad de Medicina' ,'http://www.ugr.es/~facmed/' ),('F Odontolog�a' ,'Facultad de Odontolog�a' ,'http://www.ugr.es/~odonto/' ),('F Psicolog�a' ,'Facultad de Psicolog�a' ,'http://www.ugr.es/~psicolo/' ),('F Traduc. Interp.' ,'Facultad de Traducci�n e Interpretaci�n' ,'http://www.ugr.es/~factrad/' ); + +ALTER TABLE usr_data ADD COLUMN CtrCod INT NOT NULL DEFAULT -1 AFTER Centre; +CREATE INDEX CtrCod ON usr_data (CtrCod); +UPDATE usr_data,centres SET usr_data.CtrCod=centres.CtrCod WHERE usr_data.UsrType>='3' AND usr_data.Centre=centres.FullName; +ALTER TABLE usr_data DROP COLUMN Centre; + +----- + +CREATE TABLE departments (DptCod INT NOT NULL AUTO_INCREMENT,ShortName VARCHAR(32) NOT NULL,FullName VARCHAR(255) NOT NULL,WWW VARCHAR(255) NOT NULL,UNIQUE INDEX(DptCod)); +INSERT INTO departments (ShortName,FullName,WWW) VALUES ('�lgebra','�lgebra' ,'http://www.ugr.es/~algebra/' ), ('An�lisis Geogr�...' ,'An�lisis Geogr�fico Regional y Geograf�a F�sica' ,'http://www.ugr.es/~geofireg/' ), ('An�lisis Mat.' ,'An�lisis Matem�tico' ,'http://www.ugr.es/~dpto_am/' ), ('Anat. Patol�gica...','Anatom�a Patol�gica e Historia de la Ciencia' ,'http://www.ugr.es/~hciencia/' ), ('Anat. y Embr...' ,'Anatom�a y Embriolog�a Humana' ,'http://www.ugr.es/~cmorfolo/' ), ('Antr. Social' ,'Antropolog�a Social' ,'http://www.ugr.es/~antrosoc/' ), ('Arq. Tec. Comp.' ,'Arquitectura y Tecnolog�a de Computadores' ,'http://atc.ugr.es/' ), ('Bibliot. y Docum.' ,'Biblioteconom�a y Documentaci�n' ,'http://www.ugr.es/~dbibliot/' ), ('Biolog�a Animal' ,'Biolog�a Animal' ,'http://www.ugr.es/~dptobae/' ), ('Biolog�a Celular' ,'Biolog�a Celular' ,'http://www.ugr.es/~celular/' ), ('Bioqu�mica I...' ,'Bioqu�mica y Biolog�a Molecular I (Fac. Ciencias)' ,'http://www.ugr.es/~bbm1/' ), ('Bioqu�mica II...' ,'Bioqu�mica y Biolog�a Molecular II (Fac. Farmacia)' ,'http://www.ugr.es/~gebqmed/' ), ('Bioqu�mica III...' ,'Bioqu�mica y Biolog�a Molecular III e Inmunolog�a (Fac. Medicina)' ,'http://www.ugr.es/~gebqmed/' ), ('Bot�nica' ,'Bot�nica' ,'http://www.ugr.es/~botanica/' ), ('Ciencia Pol�tica...','Ciencia Pol�tica y de la Administraci�n' ,'http://www.ugr.es/~webptca/' ), ('C. Comput. e I. A.' ,'Ciencias de la Computaci�n e Inteligencia Artificial' ,'http://decsai.ugr.es/' ), ('Cirug�a....' ,'Cirug�a y sus especialidades' ,'http://www.ugr.es/~cirugia/index.htm' ), ('Comerc. e Inv...' ,'Comercializaci�n e Investigaci�n de Mercados' ,'http://www.ugr.es/~fccee/doc/Departamentos/depComercializacion.htm'), ('Constr. Arquitect.' ,'Construcciones Arquitect�nicas' ,'http://www.ugr.es/~consarq/' ), ('Dcho. Administr.' ,'Derecho Administrativo' ,'http://www.ugr.es/~dereadmi/' ), ('Dcho. Civil' ,'Derecho Civil' ,'http://www.ugr.es/~dpto_dc/' ), ('Dcho. Constituc.' ,'Derecho Constitucional' ,'http://www.ugr.es/~pwdconst/' ), ('Dcho. Trabajo...' ,'Derecho del Trabajo y de la Seguridad Social' ,'http://www.ugr.es/~deretrab/' ), ('Dcho. Financ...' ,'Derecho Financiero y Tributario' ,'http://www.ugr.es/departamentos.htm' ), ('Dcho. I. Privado...','Derecho Internacional Privado e Historia del Derecho' ,'http://www.ugr.es/~dintpriv/' ), ('Dcho. I. P�blico...','Derecho Internacional P�blico y Relaciones Internacionales' ,'http://www.ugr.es/~deintpub/' ), ('Dcho. Mercantil...' ,'Derecho Mercantil y Derecho Romano' ,'http://www.ugr.es/~dmeroma/' ), ('Dcho. Penal' ,'Derecho Penal' ,'http://www.ugr.es/~deppenal/' ), ('Dcho. Procesal...' ,'Derecho Procesal y Eclesi�stico' ,'http://www.ugr.es/departamentos.htm' ), ('Dibujo' ,'Dibujo' ,'http://www.ugr.es/departamentos.htm' ), ('Did. Expresi�n...' ,'Did�ctica de la Expresi�n Musical, Pl�stica y Corporal' ,'http://www.ugr.es/~demuplac/' ), ('Did. Lengua Liter.' ,'Did�ctica de la Lengua y la Literatura' ,'http://www.ugr.es/~didlen/' ), ('Did. Matem�tica' ,'Did�ctica de la Matem�tica' ,'http://www.ugr.es/~dpto_did/' ), ('Did. Ciencias Exp.' ,'Did�ctica de las Ciencias Experimentales' ,'http://www.ugr.es/~diccexp/' ), ('Did. Ciencias Soc.' ,'Did�ctica de las Ciencias Sociales' ,'http://www.ugr.es/departamentos.htm' ), ('Did. Org. Escolar' ,'Did�ctica y Organizaci�n Escolar' ,'http://www.ugr.es/~didacoe/' ), ('Ecolog�a' ,'Ecolog�a' ,'http://www.ugr.es/ugr/index.php?page=departamentos_institutos/departamentos/fichas/ecologia'), ('Econ. Aplicada' ,'Econom�a Aplicada' ,'http://www.ugr.es/~ecoapli/' ), ('Econ. Financ...' ,'Econom�a Financiera y Contabilidad' ,'http://www.ugr.es/~aedem/aedem15.htm' ), ('Econ. Internac...' ,'Econom�a Internacional y de Espa�a' ,'http://www.ugr.es/departamentos.htm' ), ('Edafolog�a y Q.A.' ,'Edafolog�a y Qu�mica Agr�cola' ,'http://www.ugr.es/departamentos.htm' ), ('Edu. F�sica...' ,'Educaci�n F�sica y Deportiva' ,'http://www.ugr.es/departamentos.htm' ), ('Electromagnet...' ,'Electromagnetismo y F�sica de la Materia' ,'http://ergodic.ugr.es/efm/' ); +INSERT INTO departments (ShortName,FullName,WWW) VALUES ('Electr�nica y T.C.' ,'Electr�nica y Tecnolog�a de Computadores' ,'http://ceres.ugr.es/dpto/' ), ('Enfermer�a' ,'Enfermer�a' ,'http://www.ugr.es/~enfermer/' ), ('Escultura' ,'Escultura' ,'http://www.ugr.es/~escultura/' ), ('Estad�stica e IO' ,'Estad�stica e Investigaci�n Operativa' ,'http://www.ugr.es/~udocente/' ), ('Estomatolog�a' ,'Estomatolog�a' ,'http://www.ugr.es/~estomato/' ), ('Estratigr. y Pal.' ,'Estratigraf�a y Paleontolog�a' ,'http://www.ugr.es/~estratig/' ), ('Estudios Sem�t.' ,'Estudios Sem�ticos' ,'http://www.ugr.es/~estsemi/' ), ('Expr. Gr�f. Arq...' ,'Expresi�n Gr�fica Arquitect�nica y en la Ingenier�a' ,'http://www.ugr.es/~expregra/' ), ('Farmacia y T. F.' ,'Farmacia y Tecnolog�a Farmac�utica' ,'http://www.ugr.es/departamentos.htm' ), ('Farmacolog�a' ,'Farmacolog�a' ,'http://www.ugr.es/~farmaco/' ), ('Filol. Francesa' ,'Filolog�a Francesa' ,'http://www.ugr.es/departamentos.htm' ), ('Filol. Griega' ,'Filolog�a Griega' ,'http://www.ugr.es/~odiseo/' ), ('Filol. Ingl. Alem.' ,'Filolog�as Inglesa y Alemana' ,'http://dpingles.ugr.es/' ), ('Filol. Latina' ,'Filolog�a Latina' ,'http://www.ugr.es/~filatina/'), ('Filol. Rom�nica...' ,'Filolog�as Rom�nica, Italiana, Gallego-Portuguesa y Catalana' ,'http://www.ugr.es/~frigpc/' ), ('Filosof�a' ,'Filosof�a' ,'http://www.ugr.es/~filosofi/' ), ('Filosof�a Dcho.' ,'Filosof�a del Derecho' ,'http://www.ugr.es/~filode/' ), ('F�sica Aplicada' ,'F�sica Aplicada' ,'http://www.ugr.es/txt/es/fisiapli.html' ), ('F�sica At�mica...' ,'F�sica At�mica, Molecular y Nuclear','http://www.ugr.es/~amaro/depart.html' ), ('F�sica T. Cosmos' ,'F�sica Te�rica y del Cosmos' ,'http://www.ugr.es/~fteorica/' ), ('Fisiolog�a' ,'Fisiolog�a' ,'http://www.ugr.es/departamentos.htm' ), ('Fisiolog�a Vegetal' ,'Fisiolog�a Vegetal' ,'http://www.ugr.es/~fisioveg/' ), ('Fisioterapia' ,'Fisioterapia' ,'http://www.ugr.es/departamentos.htm' ), ('Gen�tica' ,'Gen�tica' ,'http://www.ugr.es/~dpto_gen/' ), ('Geodin�mica' ,'Geodin�mica' ,'http://www.ugr.es/~geodina/departamento/'), ('Geogr. Humana' ,'Geograf�a Humana' ,'http://www.ugr.es/~geohum/' ), ('Geometr�a y Top.' ,'Geometr�a y Topolog�a' ,'http://www.ugr.es/~geometry/' ), ('Histolog�a' ,'Histolog�a' ,'http://histolii.ugr.es/' ), ('Historia Antigua' ,'Historia Antigua' ,'http://www.ugr.es/~hantigua/' ), ('Historia Contemp.' ,'Historia Contempor�nea' ,'http://www.ugr.es/~histocon/' ); +INSERT INTO departments (ShortName,FullName,WWW) VALUES ('Historia del Arte' ,'Historia del Arte' ,'http://www.ugr.es/~histarte/' ), ('H. Medieval...' ,'Historia Medieval y Ciencias y T�cnicas Historiogr�ficas' ,'http://www.ugr.es/~medieval/' ), ('H. Moderna...' ,'Historia Moderna y de Am�rica' ,'http://www.ugr.es/~modeamer/' ), ('Ing. Civil' ,'Ingenier�a Civil' ,'http://www.ugr.es/~ingcivil/' ), ('Ing. Qu�mica' ,'Ingenier�a Qu�mica' ,'http://www.ugr.es/~iquimica/'), ('Lengua Espa�ola' ,'Lengua Espa�ola' ,'http://www.ugr.es/~lenguaes/' ), ('Leng. y Sis. Inf.' ,'Lenguajes y Sistemas Inform�ticos' ,'http://lsi.ugr.es/' ), ('Lin.Gen. Teo.Lit.' ,'Ling��stica General y Teor�a de la Literatura' ,'http://www.ugr.es/~teorial/' ), ('Literatura Espa�.' ,'Literatura Espa�ola' ,'http://www.ugr.es/~litespa/' ), ('Matem. Aplicada' ,'Matem�tica Aplicada' ,'http://www.ugr.es/~mateapli/' ), ('Medicina' ,'Medicina' ,'http://www.ugr.es/~medicina/' ), ('Med. Legal y Psiq.' ,'Medicina Legal y Psiquiatr�a' ,'http://www.ugr.es/~dpto_mlp/' ), ('Med.Pr. Salud Pbl.' ,'Medicina Preventiva y Salud P�blica' ,'http://www.ugr.es/~dpto_prev/' ), ('Mec�n. Medios...' ,'Mec�nica de Medios Continuos y Teor�a de Estructuras' ,'http://www.ugr.es/~estruct/' ), ('M�todos C. Eco...' ,'M�todos Cuantitativos para la Econom�a y la Empresa' ,'http://www.ugr.es/~metcuant/' ), ('M�todos Invest...' ,'M�todos de Investigaci�n y Diagn�stico en Educaci�n' ,'http://www.ugr.es/~mide/' ), ('Microbiolog�a' ,'Microbiolog�a' ,'http://www.ugr.es/~dptomic/' ), ('Mineralog�a y Petr.','Mineralog�a y Petrolog�a' ,'http://www.ugr.es/~minpet/' ); +INSERT INTO departments (ShortName,FullName,WWW) VALUES ('Nutrici�n y Brom.' ,'Nutrici�n y Bromatolog�a' ,'http://www.ugr.es/~mdruiz/' ), ('Obstetricia y Gin.' ,'Obstetricia y Ginecolog�a' ,'http://www.ugr.es/~obstetri/' ), ('�ptica' ,'�ptica' ,'http://www.ugr.es/~geoptica/' ), ('Org. Empresas' ,'Organizaci�n de Empresas' ,'http://www.ugr.es/~orgaemp/' ), ('Parasitolog�a' ,'Parasitolog�a' ,'http://www.ugr.es/~parasito/' ), ('Pedagog�a' ,'Pedagog�a' ,'http://www.ugr.es/~dpto_ped/' ), ('Pediatr�a' ,'Pediatr�a' ,'http://www.ugr.es/~pwpedia/' ), ('Person., Ev. y Tr.' ,'Personalidad, Evaluaci�n y Tratamiento' ,'http://www.ugr.es/departamentos.htm' ), ('Pintura' ,'Pintura' ,'http://www.ugr.es/~pwpint/' ), ('Prehistoria y Arq.' ,'Prehistoria y Arqueolog�a' ,'http://www.ugr.es/~arqueol/' ), ('Psi. Evolutiva...' ,'Psicolog�a Evolutiva y de la Educaci�n' ,'http://www.ugr.es/~psicoevo/' ), ('Psi. Experiment...' ,'Psicolog�a Experimental y Fisiolog�a' ,'http://www.ugr.es/departamentos.htm' ), ('Psi. Social...' ,'Psicolog�a Social y Metodolog�a de las Ciencias del Comportamiento','http://www.ugr.es/departamentos.htm' ), ('Qu�mica Anal�tica' ,'Qu�mica Anal�tica' ,'http://www.ugr.es/~qanaliti/' ), ('Qu�mica F�sica' ,'Qu�mica F�sica' ,'http://www.ugr.es/~qmfisica/' ), ('Qu�mica Inorg.' ,'Qu�mica Inorg�nica' ,'http://www.ugr.es/~mquiros/departa.htm' ), ('Qu�mica Far. y Org.','Qu�mica Farmac�utica y Org�nica' ,'http://www.ugr.es/departamentos.htm' ), ('Qu�mica Org�nica' ,'Qu�mica Org�nica' ,'http://www.ugr.es/~qorgani/' ), ('Radiolog. Med.F�s.' ,'Radiolog�a y Medicina F�sica' ,'http://www.ugr.es/~dptorad/' ), ('Sociolog�a' ,'Sociolog�a' ,'http://www.departamentosociologiagranada.org/'), ('Trabajo Social...' ,'Trabajo Social y Servicios Sociales' ,'http://www.ugr.es/~tsocial/' ), ('Traducci�n e Int.' ,'Traducci�n e Interpretaci�n' ,'http://www.ugr.es/~dpto_ti/' ), ('Teor�a Se�al,...' ,'Teor�a de la Se�al, Telem�tica y Comunicaciones' ,'http://www.ugr.es/~tstc/' ), ('Teor�a e H. Econ.' ,'Teor�a e Historia Econ�mica' ,'http://www.ugr.es/~fccee/doc/Departamentos/depHistEcon.htm'); + +---- + +ALTER TABLE usr_data ADD COLUMN DptCod INT NOT NULL DEFAULT -1 AFTER Dept; +CREATE INDEX DptCod ON usr_data (DptCod); +UPDATE usr_data,departments SET usr_data.DptCod=departments.DptCod WHERE usr_data.UsrType>='3' AND usr_data.Dept=departments.FullName; +ALTER TABLE usr_data DROP COLUMN Dept; + +---- + +CREATE INDEX DptCod ON usr_data (DptCod); + +CREATE UNIQUE INDEX FirstPstCod ON forum_thread (FirstPstCod); +CREATE UNIQUE INDEX LastPstCod ON forum_thread (LastPstCod); + +----- + +SELECT COUNT(DISTINCT forum_thread.ThrCod),COUNT(*) FROM forum_thread,forum_post WHERE forum_thread.ForumType='0' AND forum_thread.ThrCod=forum_post.ThrCod; + +SELECT COUNT(*) FROM forum_thread,forum_post WHERE forum_thread.ForumType='8' AND forum_thread.LastPstCod=forum_post.MsgCod AND forum_post.ModifTime>'20081000'; + +SELECT COUNT(UsrCod) FROM usr_data WHERE UsrCod NOT IN (SELECT DISTINCT UsrCod FROM crs_usr); +SELECT UsrCod FROM usr_data WHERE UsrCod NOT IN (SELECT DISTINCT UsrCod FROM crs_usr); + +SELECT UsrCod FROM usr_data WHERE DNI NOT IN (SELECT DISTINCT DNI FROM log WHERE UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-31104000) + +SELECT COUNT(*) FROM log WHERE DNI='24243620' AND (UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-31104000); + +SELECT column1 FROM t1 WHERE EXISTS (SELECT DNI FROM log WHERE UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-31104000); + +SELECT UsrCod FROM usr_data WHERE NOT EXISTS (SELECT * FROM log WHERE log.DNI = usr_data.DNI AND UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-20); +SELECT UsrCod FROM usr_data WHERE NOT EXISTS (SELECT * FROM log WHERE (UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-20) AND log.DNI = usr_data.DNI); + +SELECT * FROM log WHERE DNI = '24243619' AND (UNIX_TIMESTAMP(FechaHora) > UNIX_TIMESTAMP()-20); +---- + +ALTER TABLE usr_data ADD COLUMN LastTab2 TINYINT NOT NULL AFTER SideCols; +UPDATE usr_data SET LastTab2=LastTab; +ALTER TABLE usr_data DROP COLUMN LastTab; +ALTER TABLE usr_data CHANGE LastTab2 LastTab TINYINT NOT NULL; + +ALTER TABLE usr_data ADD COLUMN LastTime DATETIME NOT NULL AFTER LastTab; + +UPDATE usr_data,log SET usr_data.LastTime=MAX(log.FechaHora) WHERE usr_data.DNI=log.DNI; +UPDATE usr_data,log SET usr_data.LastTime=log.FechaHora WHERE log.DNI LIKE '242436%' AND log.FechaHora=(SELECT MAX(FechaHora) FROM log WHERE DNI='24243620') AND usr_data.DNI=log.DNI; + +SELECT DNI,MAX(FechaHora) FROM log WHERE DNI LIKE '242436%' GROUP BY DNI; + +SELECT DNI,MAX(FechaHora) AS FH FROM log WHERE DNI LIKE '242436%' GROUP BY DNI; + +DROP TABLE IF EXISTS log_tmp; +CREATE TEMPORARY TABLE log_tmp (DNI CHAR(16) NOT NULL,LastTime DATETIME NOT NULL,UNIQUE INDEX (DNI),INDEX(LastTime)) SELECT DNI,MAX(FechaHora) AS LastTime FROM log GROUP BY DNI; +UPDATE usr_data,log_tmp SET usr_data.LastTime=log_tmp.LastTime WHERE usr_data.DNI=log_tmp.DNI; + +CREATE INDEX LastTime ON usr_data (LastTime); + +SELECT DNI,LastTime FROM usr_data WHERE UNIX_TIMESTAMP(LastTime) < UNIX_TIMESTAMP()-(12*30*24*60*60) AND UsrCod NOT IN (SELECT DISTINCT UsrCod FROM crs_usr); + +------------------ + +(SELECT centres.CtrCod,centres.ShortName,centres.FullName,centres.WWW,COUNT(*) FROM centres,usr_data WHERE usr_data.UsrType='3' AND usr_data.CtrCod=centres.CtrCod GROUP BY usr_data.CtrCod UNION SELECT CtrCod,ShortName,FullName,WWW,'0' FROM centres WHERE CtrCod NOT IN (SELECT DISTINCT CtrCod FROM usr_data WHERE UsrType='3')) ORDER BY centres.FullName; + + +(SELECT centres.CtrCod,centres.ShortName,centres.FullName,centres.WWW,COUNT(*) AS NumTchs FROM centres,usr_data WHERE usr_data.UsrType='3' AND usr_data.CtrCod=centres.CtrCod GROUP BY centres.CtrCod) UNION (SELECT CtrCod,ShortName,FullName,WWW,'0' FROM centres WHERE CtrCod NOT IN (SELECT DISTINCT CtrCod FROM usr_data WHERE UsrType='3')) ORDER BY NumTchs DESC; + + +------ + +SELECT COUNT(*) FROM crs_usr WHERE UsrCod='24243619' AND CrsCod IN (SELECT courses.CrsCod FROM deg_admin,courses WHERE deg_admin.UsrCod='34853319' and (deg_admin.DegCod<0 or deg_admin.DegCod=courses.DegCod)); + +------- + +DROP TABLE institution; +CREATE TABLE institutions (InsCod INT NOT NULL AUTO_INCREMENT,ShortName VARCHAR(32) NOT NULL,FullName VARCHAR(255) NOT NULL,Logo VARCHAR(16) NOT NULL,WWW VARCHAR(255) NOT NULL,UNIQUE INDEX(InsCod)); + +ALTER TABLE usr_data ADD COLUMN InsCod INT NOT NULL DEFAULT -1 AFTER PublicPhoto; +CREATE INDEX InsCod ON usr_data (InsCod); + +update usr_data set CtrCod='30' where DNI='74660014' OR DNI='74648378' OR DNI='24259704' OR DNI='24181974' OR DNI='74641868' OR DNI='P74665785' OR DNI='X2402791' OR DNI='52565549' OR DNI='44283270'; +update usr_data set InsCod='1' where DNI='24219870' OR DNI='74660014' OR DNI='74648378' OR DNI='24259704' OR DNI='24181974' OR DNI='74641868' OR DNI='P74665785' OR DNI='X2402791' OR DNI='52565549' OR DNI='44283270'; + +ALTER TABLE centres ADD COLUMN InsCod INT NOT NULL AFTER CtrCod; +CREATE INDEX InsCod ON centres (InsCod); +ALTER TABLE departments ADD COLUMN InsCod INT NOT NULL AFTER DptCod; +CREATE INDEX InsCod ON departments (InsCod); + +---- + +SELECT centres.ShortName,centres.FullName,centres.WWW,COUNT(*) FROM centres,usr_data WHERE centres.CtrCod='%ld' AND usr_data.UsrType='%u' AND centres.CtrCod=usr_data.CtrCod GROUP BY centres.CtrCod; + +----- + + +ALTER TABLE degrees ADD COLUMN PlcCod INT NOT NULL AFTER CampusCod; +CREATE INDEX PlcCod ON degrees (PlcCod); + +CREATE TABLE places (PlcCod INT NOT NULL AUTO_INCREMENT,ShortName VARCHAR(32) NOT NULL,FullName VARCHAR(255) NOT NULL,UNIQUE INDEX(PlcCod)); + +------ + +CREATE TABLE holidays (HldCod INT NOT NULL AUTO_INCREMENT,PlcCod INT NOT NULL DEFAULT -1,Holiday DATE NOT NULL,Name VARCHAR(255) NOT NULL,UNIQUE INDEX (HldCod),INDEX(PlcCod)); + +------ + +ALTER TABLE degrees DROP COLUMN CampusCod; + +----- + +ALTER TABLE holidays CHANGE Holiday HldDate DATE NOT NULL; +ALTER TABLE holidays CHANGE HldDate StartDate DATE NOT NULL; + +ALTER TABLE holidays ADD COLUMN Type ENUM('holiday','non_school') NOT NULL AFTER PlcCod; +ALTER TABLE holidays ADD COLUMN EndDate DATE NOT NULL AFTER StartDate; +DESCRIBE holidays; + +ALTER TABLE holidays CHANGE HldDate StartDate DATE NOT NULL; + +ALTER TABLE holidays CHANGE Type Type TINYINT NOT NULL; +ALTER TABLE holidays CHANGE Type HldTyp TINYINT NOT NULL; + +------ + +SELECT institutions.InsCod,institutions.ShortName,institutions.FullName,institutions.Logo,institutions.WWW,COUNT(*) AS NumUsrs FROM institutions,usr_data WHERE usr_data.InsCod=institutions.InsCod GROUP BY institutions.InsCod; + + +SELECT T1.InsCod,institutions.ShortName,T1.NumStds,T2.NumTchs FROM +(SELECT institutions.InsCod,COUNT(*) AS NumStds FROM institutions,usr_data WHERE usr_data.UsrType='2' AND usr_data.InsCod=institutions.InsCod GROUP BY institutions.InsCod) AS T1, +(SELECT institutions.InsCod,COUNT(*) AS NumTchs FROM institutions,usr_data WHERE usr_data.UsrType='3' AND usr_data.InsCod=institutions.InsCod GROUP BY institutions.InsCod) AS T2, +institutions +WHERE T1.InsCod=T2.InsCod; + +) AS T +GROUP BY InsCod; + +SELECT institutions.InsCod,institutions.ShortName,institutions.FullName,institutions.Logo,institutions.WWW,COUNT(DISTINCT usr_data.UsrCod,usr_data.DNI) FROM institutions,usr_data WHERE usr_data.InsCod=institutions.InsCod GROUP BY institutions.InsCod; + + +SELECT institutions.InsCod,institutions.ShortName,COUNT(DISTINCT usr_data.UsrCod,usr_data.DNI) FROM institutions,usr_data WHERE usr_data.InsCod=institutions.InsCod GROUP BY institutions.InsCod; + +----- + + +ALTER TABLE crs_grp CHANGE MaxAlumnos MaxStudents INT NOT NULL; +ALTER TABLE crs_grp CHANGE NumAlumnos NumStudents INT NOT NULL; + +---- + +ALTER TABLE degrees ADD COLUMN InsCod INT NOT NULL AFTER DegTypCod; +CREATE INDEX InsCod ON degrees (InsCod); + +----- + +ALTER TABLE calls_for_exams CHANGE CodConv CalCod INT NOT NULL AUTO_INCREMENT; +ALTER TABLE calls_for_exams CHANGE Asignatura CrsFullName VARCHAR(255) NOT NULL; +ALTER TABLE calls_for_exams CHANGE Curso Year TINYINT NOT NULL; +ALTER TABLE calls_for_exams CHANGE Tipo CallType VARCHAR(255) NOT NULL; +ALTER TABLE calls_for_exams CHANGE FechaConv CallDate DATETIME NOT NULL; +ALTER TABLE calls_for_exams CHANGE FechaExamen ExamDate DATETIME NOT NULL; +ALTER TABLE calls_for_exams CHANGE Duracion ExamLength TIME NOT NULL; +ALTER TABLE calls_for_exams CHANGE Lugar Place TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE Modalidad Modality TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE Estructura Structure TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE DocExigida DocRequired TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE MatObligado MatRequired TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE MatPermitido MatAllowed TEXT NOT NULL; +ALTER TABLE calls_for_exams CHANGE Indicaciones Indications TEXT NOT NULL; + +----- + +/* +typedef enum {FORUM_COURSE_USRS = 0 --> 0, + FORUM_COURSE_TCHS = 1 --> 1, + FORUM_DEGREE_USRS = 2 --> 2, + FORUM_DEGREE_TCHS = 3 --> 3, + FORUM_CENTRE_USRS = 4 --> 4, // Not used + FORUM_CENTRE_TCHS = 5 --> 5, // Not used + FORUM_GLOBAL_USRS = 6 --> 8, + FORUM_GLOBAL_TCHS = 7 --> 9, + FORUM_SWAD_USRS = 8 --> 10, + FORUM_SWAD_TCHS = 9 --> 11} OLD_ForumType_t; // Don't change numbers (used in database) +typedef enum {FORUM_COURSE_USRS = 0, + FORUM_COURSE_TCHS = 1, + FORUM_DEGREE_USRS = 2, + FORUM_DEGREE_TCHS = 3, + FORUM_CENTRE_USRS = 4, // Not used + FORUM_CENTRE_TCHS = 5, // Not used + FORUM_INSTITUTION_USRS = 6, + FORUM_INSTITUTION_TCHS = 7, + FORUM_GLOBAL_USRS = 8, + FORUM_GLOBAL_TCHS = 9, + FORUM_SWAD_USRS = 10, + FORUM_SWAD_TCHS = 11} For_ForumType_t; // Don't change numbers (used in database) +*/ +UPDATE forum_thread SET ForumType='11' WHERE ForumType='9'; +UPDATE forum_thread SET ForumType='10' WHERE ForumType='8'; +UPDATE forum_thread SET ForumType='9' WHERE ForumType='7'; +UPDATE forum_thread SET ForumType='8' WHERE ForumType='6'; + +---- + +ALTER TABLE sta_degrees ADD COLUMN TimeAvgPhoto DATETIME NOT NULL AFTER NumStdsWithPhoto; +CREATE INDEX TimeAvgPhoto ON sta_degrees (TimeAvgPhoto); + +----- + +(SELECT DegCod,'0000-00-00' AS TimeAvgPhoto FROM degrees WHERE DegCod NOT IN (SELECT DISTINCT DegCod FROM sta_degrees)) UNION (SELECT DegCod,TimeAvgPhoto FROM sta_degrees WHERE UNIX_TIMESTAMP(TimeAvgPhoto)