GIF89a=( ' 7IAXKgNgYvYx\%wh&h}th%s%x}9R&0% (.5SD&a)x5;c*!&r)7<{43HKoTYaqqF ! ' !NETSCAPE2.0 , =( pH,$rl:x(tJZ,vzxL.:zn|N~& !0`9R}""a:S~xgEREB 8D"n HLDkDBDTH GA R |m&E8SkGApxaR2XBE8I6X:vT)~q"F~%x 4#Z0O|-4BsX:= Q SalyXJ`G&|shK3l7B|$'7J*0!Dn=P0`Rljv>5 .69dnlv9f{Pbxl5}p3aIO!>i9#)pa {)vm%D~6fs}RDW E`! &L8x {)x`X/>}mR*|`D=_ ^5!_&'aO7c`DCx`9YF`?" n@`} l@4>d S vxN"@~d=gs~Gud &p8Q)lXDA~HySunjk*DLH] C"JXb~wSt}6K,qS:9*:l@` .t9S[:=`9N{A !R:6x0_ ;^#!U;0L1p%AU,u%S!~`G =4np3uun|%2Ir#0J``8@S@5^`8E].S7 0j SD ziS!lw9*DInEX &AGoQfF;}JF5Q|XTy] o C=:PB@ DS(>Cx}`xJ,p+eE0`}`A/NE 9@ H7!%B0`l*!8 2% :10Eux%nP1!C)P81lxF#{B0>
Server IP : 217.18.85.50 / Your IP : 18.216.92.5 Web Server : LiteSpeed System : Linux server50.tr85.dhs.com.tr 3.10.0-962.3.2.lve1.5.85.el7.x86_64 #1 SMP Thu Apr 18 15:18:36 UTC 2024 x86_64 User : ferhatgenc ( ) PHP Version : 7.2.34 Disable Function : restore_ini,mail,openbasedir,f_open,system,dl,array_compare,array_user_key_compare,passthru,cat,exec,popen,proc_close,proc_get_status,proc_nice,proc_open,escapeshellcmd,escapeshellarg,show_source,posix_mkfifo,ini_restore,mysql_list_dbs,getmyuid,pconnect,link,symlink,fin,passthruexec,fileread,shell_exec,pcntl_exec,ini_alter,leak,apache_child_terminate,chown,posix_kill,posix_setpgid,posix_setsid,posix_setuid,proc_terminate,syslog,allow_url_fopen,fpassthru,execute,shell,chgrp,passthru,socket_select,socket_create,socket_create_listen,socket_create_pair,socket_listen,socket_accept,socket_bind,foreach,socket_strerror,pcntl_fork,pcntl_signal,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,openlog,apache_get_version,apache_getenv,apache_note,apache_setenv,virtualal MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /var/softaculous/efront/ |
Upload File : |
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!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 */; -- -- Database: `soft_efron25` -- -- -------------------------------------------------------- -- -- Table structure for table `benchmark` -- CREATE TABLE `benchmark` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `url` text, `init_time` float DEFAULT NULL, `script_time` float DEFAULT NULL, `database_time` float DEFAULT NULL, `smarty_time` float DEFAULT NULL, `total_time` float DEFAULT NULL, `memory_usage` float DEFAULT NULL, `total_queries` mediumint(8) unsigned DEFAULT NULL, `max_query` text, `timestamp` int(10) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `bookmarks` -- CREATE TABLE `bookmarks` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `lessons_ID` mediumint(8) unsigned DEFAULT NULL, `name` text, `url` text, PRIMARY KEY (`id`), KEY `users_LOGIN` (`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `cache` -- CREATE TABLE `cache` ( `cache_key` char(64) NOT NULL, `value` longtext, `timestamp` int(10) unsigned NOT NULL, `timeout` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`cache_key`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `cache` -- -- -------------------------------------------------------- -- -- Table structure for table `calendar` -- CREATE TABLE `calendar` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `data` text, `timestamp` int(10) unsigned NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', `users_LOGIN` varchar(100) NOT NULL, `foreign_ID` mediumint(8) unsigned DEFAULT '0', `type` varchar(50) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `cal_indx1` (`type`), KEY `cal_indx2` (`foreign_ID`,`type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `carts` -- CREATE TABLE `carts` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `timestamp` int(10) unsigned NOT NULL, `session_id` varchar(255) NOT NULL, `contents` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `comments` -- CREATE TABLE `comments` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `data` text NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `content_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '0', `private` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `com_indx2` (`content_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=393 ; -- -- Dumping data for table `comments` -- INSERT INTO `comments` VALUES (1, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (2, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (3, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (4, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (5, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (6, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (7, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (8, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (9, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (10, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (11, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (12, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (13, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (14, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (15, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (16, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (17, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (18, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (19, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (20, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (21, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (22, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (23, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (24, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (25, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (26, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (27, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (28, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (29, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (30, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (31, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (32, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (33, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (34, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (35, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (36, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (37, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (38, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (39, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (40, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (41, '<p>Don''t forget the examples!!!</p>', 'professor', 12, 1299577087, 1, 1), (42, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (43, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (44, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (45, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (46, '<p>This unit is really important. Pay attention!</p>', 'professor', 15, 1292856845, 1, 0), (47, '<p>I would like to see more examples!</p>', 'student', 12, 1299576964, 1, 0), (48, '<p>Ok, I will post some examples tomorrow... Until then you may look at the following website:</p>\r\n<p>www.examples.com...</p>', 'professor', 12, 1299577050, 1, 0), (49, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (50, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (51, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (52, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (53, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (54, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (55, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (56, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (57, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (58, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (59, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (60, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (61, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (62, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (63, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (64, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (65, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (66, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (67, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (68, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (69, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (70, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (71, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (72, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (73, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (74, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (75, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (76, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (77, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (78, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (79, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (80, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (81, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (82, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (83, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (84, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (85, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (86, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (87, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (88, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (89, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (90, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (91, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (92, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (93, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (94, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (95, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (96, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (97, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (98, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (99, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (100, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (101, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (102, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (103, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (104, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (105, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (106, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (107, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (108, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (109, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (110, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (111, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (112, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (113, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (114, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (115, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (116, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (117, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (118, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (119, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (120, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (121, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (122, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (123, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (124, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (125, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (126, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (127, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (128, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (129, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (130, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (131, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (132, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (133, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (134, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (135, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (136, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (137, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (138, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (139, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (140, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (141, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (142, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (143, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (144, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (145, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (146, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (147, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (148, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (149, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (150, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (151, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (152, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (153, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (154, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (155, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (156, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (157, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (158, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (159, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (160, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (161, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (162, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (163, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (164, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (165, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (166, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (167, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (168, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (169, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (170, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (171, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (172, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (173, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (174, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (175, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (176, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (177, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (178, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (179, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (180, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (181, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (182, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (183, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (184, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (185, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (186, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (187, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (188, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (189, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (190, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (191, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (192, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (193, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (194, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (195, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (196, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (197, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (198, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (199, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (200, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (201, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (202, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (203, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (204, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (205, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (206, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (207, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (208, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (209, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (210, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (211, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (212, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (213, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (214, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (215, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (216, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (217, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (218, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (219, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (220, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (221, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (222, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (223, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (224, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (225, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (226, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (227, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (228, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (229, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (230, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (231, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (232, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (233, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (234, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (235, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (236, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (237, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (238, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (239, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (240, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (241, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (242, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (243, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (244, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (245, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (246, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (247, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (248, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (249, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (250, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (251, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (252, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (253, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (254, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (255, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (256, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (257, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (258, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (259, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (260, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (261, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (262, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (263, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (264, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (265, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (266, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (267, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (268, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (269, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (270, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (271, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (272, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (273, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (274, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (275, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (276, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (277, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (278, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (279, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (280, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (281, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (282, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (283, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (284, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (285, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (286, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (287, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (288, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (289, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (290, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (291, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (292, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (293, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (294, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (295, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (296, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (297, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (298, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (299, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (300, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (301, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (302, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (303, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (304, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (305, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (306, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (307, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (308, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (309, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (310, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (311, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (312, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (313, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (314, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (315, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (316, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (317, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (318, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (319, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (320, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (321, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (322, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (323, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (324, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (325, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (326, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (327, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (328, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (329, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (330, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (331, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (332, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (333, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (334, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (335, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (336, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (337, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (338, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (339, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (340, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (341, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (342, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (343, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (344, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (345, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (346, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (347, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (348, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (349, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (350, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (351, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (352, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (353, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (354, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (355, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (356, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (357, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (358, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (359, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (360, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (361, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (362, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (363, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (364, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (365, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (366, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (367, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (368, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (369, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (370, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (371, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (372, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (373, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (374, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (375, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (376, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (377, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (378, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (379, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (380, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (381, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (382, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (383, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (384, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (385, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (386, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (387, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (388, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (389, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (390, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (391, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0), (392, '<p>ενα ενδιαφερον άρθρο ειναι το..</p>', 'student', 7, 1279102721, 1, 0); -- -------------------------------------------------------- -- -- Table structure for table `completed_tests` -- CREATE TABLE `completed_tests` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) DEFAULT NULL, `tests_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `status` varchar(255) DEFAULT NULL, `timestamp` int(10) unsigned NOT NULL DEFAULT '0', `archive` tinyint(1) NOT NULL DEFAULT '0', `time_start` int(10) unsigned DEFAULT NULL, `time_end` int(10) unsigned DEFAULT NULL, `time_spent` int(10) unsigned DEFAULT NULL, `score` float DEFAULT NULL, `pending` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `users_login` (`users_LOGIN`), KEY `tests_ID` (`tests_ID`), KEY `status` (`status`), KEY `timestamp` (`timestamp`), KEY `archive` (`archive`), KEY `score` (`score`), KEY `pending` (`pending`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `completed_tests_blob` -- CREATE TABLE `completed_tests_blob` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `completed_tests_ID` mediumint(8) unsigned NOT NULL, `test` longblob, PRIMARY KEY (`id`), KEY `ibfk_completed_tests_blob_1` (`completed_tests_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `configuration` -- CREATE TABLE `configuration` ( `name` varchar(100) NOT NULL, `value` text NOT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `configuration` -- INSERT INTO `configuration` VALUES ('activate_ldap', '0'), ('activation', '1'), ('allow_direct_login', '1'), ('api', '0'), ('api_ip', '127.0.0.1'), ('autologout_time', '5'), ('ban_failed_logins', '0'), ('cache_enabled', '1'), ('cms_page', ''), ('collapse_catalog', '0'), ('compress_tests', '0'), ('constrain_access', '1'), ('content_completion_terms', 'Do you accept the content above?'), ('css', ''), ('currency', 'EUR'), ('currency_order', '1'), ('database_version', '3.6.15'), ('date_format', 'DD/MM/YYYY'), ('debug_mode', ''), ('default_language', '[[language]]'), ('default_type', 'student'), ('discount_period', ''), ('discount_start', ''), ('display_empty_blocks', '1'), ('editor_type', 'tinymce_new'), ('eliminate_post_xss', '1'), ('enable_balance', '1'), ('enable_cart', '1'), ('encrypt_url', '0'), ('error_page', 'themes/default/external/default_error_page.html'), ('facebook_api_key', ''), ('facebook_secret', ''), ('favicon', ''), ('file_black_list', 'php,php3,jsp,asp,cgi,pl,exe,com,bat,sh,ph3,php4,ph4,php5,ph5,phtm,phtml'), ('file_encoding', 'UTF7-IMAP'), ('file_white_list', ''), ('force_change_password', '0'), ('gz_handler', '1'), ('help_url', 'http://docs.efrontlearning.net/index.php'), ('insert_group_key', '1'), ('ip_black_list', ''), ('ip_white_list', '*.*.*.*'), ('last_reset_certificate', '1434353129'), ('ldap_base_dn', ''), ('ldap_bind_dn', ''), ('ldap_cn', 'cn'), ('ldap_l', 'l'), ('ldap_mail', 'mail'), ('ldap_password', ''), ('ldap_port', '389'), ('ldap_postaladdress', 'postaladdress'), ('ldap_preferredlanguage', 'referredlanguage'), ('ldap_protocol', '3'), ('ldap_server', 'ldap://localhost'), ('ldap_telephonenumber', 'telephonenumber'), ('ldap_uid', 'uid'), ('lessons_directory', '1'), ('lesson_enroll', '1'), ('license_server', 'http://keys.efrontlearning.net/list.php?version=10'), ('load_videojs', '0'), ('location', 'Greece'), ('lock_down', '0'), ('login_redirect_page', 'lesson_catalog'), ('logo', ''), ('logout_redirect', ''), ('logo_max_height', '150'), ('logo_max_width', '200'), ('logo_timestamp', ''), ('mail_activation', '0'), ('mapped_accounts', '0'), ('math_content', '0'), ('math_images', '0'), ('math_server', 'http://www.imathas.com/cgi-bin/mimetex.cgi'), ('max_file_size', '50000'), ('max_online_users', '1'), ('max_online_users_threshold', ''), ('max_online_users_threshold_timestamp', ''), ('max_online_users_timestamp', '1365429302'), ('mode_allow_direct_login', '1'), ('mode_allow_users_to_delete_supervisor_files', '1'), ('mode_archive', '2'), ('mode_backup', '1'), ('mode_bookmarks', '1'), ('mode_calendar', '1'), ('mode_change_info', '1'), ('mode_change_pass', '1'), ('mode_comments', '1'), ('mode_configuration', '1'), ('mode_course_instances', '1'), ('mode_curriculum', '2'), ('mode_feedback', '1'), ('mode_forum', '1'), ('mode_func_comments', '0'), ('mode_func_people', '0'), ('mode_func_userstatus', '0'), ('mode_glossary', '1'), ('mode_groups', '1'), ('mode_help', '1'), ('mode_languages', '2'), ('mode_lessons_timeline', '0'), ('mode_logout_user', '2'), ('mode_maintenance', '2'), ('mode_messages', '1'), ('mode_messages_student', '1'), ('mode_mod_rewrite_bypass', '0'), ('mode_move_blocks', '1'), ('mode_news', '1'), ('mode_notifications', '1'), ('mode_online_users', '1'), ('mode_payments', '1'), ('mode_projects', '1'), ('mode_propagate_courses_to_branch_users', '1'), ('mode_questions_pool', ''), ('mode_search_user', '2'), ('mode_shared_glossary', ''), ('mode_show_complete_org_chart', '1'), ('mode_show_organization_chart', '1'), ('mode_show_unassigned_users_to_supervisors', '1'), ('mode_show_user_form', '0'), ('mode_simple_complete', '1'), ('mode_skillgaptests', '2'), ('mode_social_events', '0'), ('mode_statistics', '1'), ('mode_surveys', '1'), ('mode_system_timeline', '0'), ('mode_tests', '1'), ('mode_test_glossary', '0'), ('mode_themes', '1'), ('mode_tooltip', '1'), ('mode_user_profile', '1'), ('mode_user_types', '1'), ('mode_version_key', '1'), ('module_BBB_salt', '29ae87201c1d23f7099f3dfb92f63578'), ('module_BBB_server', 'http://yourserver.com/'), ('module_BBB_server_version', '1'), ('module_security_last_check', '1434353066'), ('mod_rewrite_bypass', '0'), ('motto_on_header', '0'), ('multiple_logins', ''), ('normalize_dimensions', '1'), ('notifications_lock', '0'), ('notifications_maximum_inter_time', '0'), ('notifications_max_sent_messages', '100'), ('notifications_messages_per_time', '5'), ('notifications_pageloads', '10'), ('notifications_send_mode', '0'), ('onelanguage', '0'), ('only_ldap', '0'), ('password_length', '6'), ('password_reminder', '1'), ('paypalbusiness', ''), ('paypaldebug', '0'), ('paypalmode', 'normal'), ('phplivedocx_password', ''), ('phplivedocx_server', 'https://api.livedocx.com/1.2/mailmerge.asmx?WSDL'), ('phplivedocx_username', ''), ('pm_space', ''), ('registration_file', 'includes/webserver_registration.php'), ('remember_login', ''), ('reports_inactive', '0'), ('saml_bool_redirect_sign', ''), ('saml_bool_redirect_validate', ''), ('saml_email', 'urn:oid:0.9.2342.19200300.100.1.3'), ('saml_enabled', '0'), ('saml_fingerprint', ''), ('saml_first_name', 'urn:oid:2.5.4.42'), ('saml_integration_type', '2'), ('saml_last_name', 'urn:oid:2.5.4.4'), ('saml_provider', ''), ('saml_sign_in', ''), ('saml_sign_out', ''), ('saml_targeted_id', 'urn:oid:1.3.6.1.4.1.5923.1.1.1.10'), ('show_footer', '1'), ('show_license_note', '0'), ('signup', '1'), ('simple_mode', '0'), ('site_logo', '0'), ('site_motto', 'Refreshing eLearning'), ('site_name', 'eFront'), ('smarty_cache', '1'), ('smarty_cache_timeout', '60'), ('smtp_auth', '0'), ('smtp_host', 'localhost'), ('smtp_pass', ''), ('smtp_port', '25'), ('smtp_timeout', ''), ('smtp_user', ''), ('social_modules_activated', '63'), ('supervisor_mail_activation', '0'), ('system_email', '[[admin_email]]'), ('theme', '2'), ('time_reports', '0'), ('time_zone', 'Europe/Helsinki'), ('total_discount', '0'), ('unauthorized_page', 'themes/default/external/default_unauthorized_page.html'), ('updater_period', '100000'), ('username_format', '#surname# #n#. (#login#)'), ('username_format_resolve', '1'), ('username_variable', '$_SERVER["REMOTE_USER"]'), ('use_logo', '2'), ('version_activated', ''), ('version_hosted', '0'), ('version_key', ''), ('version_type', 'community'), ('version_upgrades', ''), ('version_users', ''), ('virtual_keyboard', '1'), ('webserver_auth', '0'), ('webserver_registration', '0'), ('zip_method', 'php'); -- -------------------------------------------------------- -- -- Table structure for table `content` -- CREATE TABLE `content` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `data` longtext, `parent_content_ID` mediumint(8) unsigned DEFAULT '0', `lessons_ID` mediumint(8) unsigned DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, `ctg_type` varchar(255) NOT NULL, `active` tinyint(1) DEFAULT '1', `previous_content_ID` mediumint(8) unsigned DEFAULT '0', `options` text, `metadata` text, `scorm_version` varchar(50) DEFAULT NULL, `publish` tinyint(1) DEFAULT '1', `identifier` varchar(255) NOT NULL DEFAULT '', `linked_to` mediumint(8) unsigned DEFAULT NULL, PRIMARY KEY (`id`), KEY `con_index1` (`lessons_ID`), KEY `con_index2` (`ctg_type`), KEY `con_index3` (`parent_content_ID`), KEY `con_index4` (`previous_content_ID`), KEY `con_index5` (`active`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1040 ; -- -- Dumping data for table `content` -- INSERT INTO `content` VALUES (1, 'Floyd algorithm', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Floyd algorithm</h1>\r\n In this problem we want the minimum routes (m.r.) between all the pairs of the peaks of G. The Floyd algorithm solves this problem. This algorithm is an expansion of another algorithm, the Warshall algorithm, who was first defined for the solution of another problem:<br />\r\n <br />\r\n In a digraph G (whether there are costs or not, is of no importance) find whether there is a route from V(i) to V(j), for all pairs of (i,j), i<>j.<br />\r\n <br />\r\n To solve this problem we find an array A. The elements of this array are A(i,j)=1 if there is a route from i to j, otherwise A(i,j)=0. Because the cost is not important we define the Adjoining Array as if all the costs were 1 that means C(i,j)=1 if there is eij belonging to E and otherwise C(i,j)=0. The requested array A is called transitive closure of the Adjoining Array.<br />\r\n <br />\r\n We notice that the elements of the A array are Boolean variables(0 or 1), which means that the operations AND and OR are valid. The Warshall algorithm initializes the A array at the value of C:<br />\r\n <br />\r\n A(i,j)=C(i,j), i,j=1,...,n<br />\r\n <br />\r\n At this point the A array shows only the direct connections as existing routes. Then the algorithm goes through the A array n times, one time for every node k=1,....,n. For every node V(k) the main thinking is : Is there a route from V(i) to V(j), if it has already been found {that is A(i,j)=1] or if a route is found through V(k), that is if the routes from V(i) to V(k) and from V(k) to V(j)[that is if A(i,k)=1 and A(k,j)=1].\r\n <br />\r\n <br />\r\n <em><strong>\r\n If the BOOLEAN characteristics of the elements of A are taken under consideration, then the rule in the k pass is:<br />\r\n A(i,j)=A(i,j) OR {A(i,k) AND A(k,j) }.</strong></em><br />\r\n <br />\r\n We now come back to the m.r. problem for all pairs. This time we are talking about a graph, and the Adjoining Array is defined by the costs C(i,j)=c(eij). The A array will finally consist of all the costs of the minimum routes.<br />\r\n During the k pass the following formula is valid:<br />\r\n A(i,j)=min{A(i,j),A(i,k) + A(k,j) }<br />\r\n which means that if the route through V(k) is cheaper will be the winner. That gives us the Floyd algorithm.<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/floyd" code="floyd.class" width="485" height="330"/></applet><font size="2"><font size="4" style="font-weight: bold"></font><br />\r\n </font>\r\n <br />\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 7, 1, 1170252360, 'theory', 1, 6, 'a:2:{s:15:"hide_navigation";s:1:"0";s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (2, 'General concepts test', '', 0, 1, 1170259693, 'tests', 1, 5, 'b:0;', NULL, NULL, 1, '', NULL), (3, 'TSP (Travelling Salesman Problem)', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Traveling Salesman Problem (TSP)</h1><strong>\r\n EXAMPLE:</strong> Heuristic algorithm for the Traveling Salesman Problem (T.S.P) .<br />\r\n <br />\r\n This is one of the most known problems ,and is often called as a difficult problem. A salesman must visit n cities, passing through each city only once, beginning from one of them which is considered as his base, and returning to it. The cost of the transportation among the cities (whichever combination possible) is given. The program of the journey is requested, that is the order of visiting the cities in such a way that the cost is the minimum.<br />\r\n <br />\r\n Let's number the cities from 1 to n, and let city 1 be the city-base of the salesman. Also let's assume that c(i,j) is the visiting cost from i to j. There can be c(i,j)<>c(j,i). Apparently all the possible solutions are (n-1)! Someone could probably determine them systematically, find the cost for each and everyone of these solutions and finally keep the one with the minimum cost. These requires at least (n-1)! steps.<br />\r\n <br />\r\n If for example there were 21 cities the steps required are (n-1)!=(21-1)!=20! steps. If every step required a msec we would need about 770 centuries of calculations. Apparently, the exhausting examination of all possible solutions is out of the question. Since we are not aware of any other quick algorithm that finds a best solution we will use a heuristic algorithm. According to this algorithm whenever the salesman is in town i he chooses as his next city, the city j for which the c(i,j) cost is the minimum among all c(i,k) costs, where k are the pointers of the city the salesman has not visited yet. There is also a simple rule just in case more than one cities give the minimum cost, for example in such a case the city with the smaller k will be chosen. This is a greedy algorithm which selects in every step the cheapest visit and does not care whether this will lead to a wrong result or not. \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 8, 1, 1170259174, 'theory', 1, 8, 'b:0;', NULL, NULL, 1, '', NULL), (4, 'Adjoining Array', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Adjoining Array</h1>\r\n The adjoining array can be used as a "data structure" to represent graphs. So it is useful to see how the Prim Algorithm can be implemented using the adjoining array. This array is specified by the costs, which means A(i,j)=c(eij). When we don't use directed graphs this array is symmetrical.<br />\r\n <br />\r\n The Prim algorithm steps are now :<br />\r\n <br />\r\n 1. We put a mark beside the first line and we delete the first column.<br />\r\n 2. Between the elements that are not deleted and belongs to a line with a mark we choose the least A(j,k). If all elements are deleted the algorithm terminates.<br />\r\n 3. We put a mark beside the k line and we delete k column. We return to step 2<br />\r\n <br />\r\n In every step the Vk node become Vj 's child.<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/primArray" code="primArray.class" width="655" height="400"/></applet>\r\n </td>\r\n <br />\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 10, 1, 1170258970, 'theory', 1, 10, 'a:2:{s:15:"hide_navigation";s:1:"0";s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (5, 'Backtracking', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Backtracking</h1>\r\n The backtracking method is based on the systematically inquisition of the possible solutions where through the procedure, set of possible solutions are rejected before even examined so their number is getting a lot smaller.<br />\r\n <br />\r\n An important requirement which must be fulfilled is that there must be the proper hierarchy in the systematically produce of solutions so that sets of solutions that do not fulfill a certain requirement are rejected before the solutions are produced. For this reason the examination and produce of the solutions follows a model of non-cycle graph for which in this case we will consider as a tree. The root of the tree represents the set of all the solutions. Nodes in lower levels represent even smaller sets of solutions, based on their properties. Obviously, leaves will be isolated solutions. It is easily understood that the tree (or any other graph) is produced during the examination of the solutions so that no rejected solutions are produced. When a node is rejected, the whole sub-tree is rejected, and we backtrack to the ancestor of the node so that more children are produced and examined. Because this method is expected to produce subsets of solutions which are difficult to process, the method itself is not very popular.\r\n <br />\r\n <br />\r\n <h2>THE QUEENS PROBLEM</h2>\r\n We consider a grid of squares, dimensioned nXn, partly equivalent to a chessboard containing n2 places. A queen placed in any of the n2 squares controls all the squares that are on its row, its column and the 450 diagonals. The problem asked, is how to put n queens on the chessboard, so that the square of every queen is not controlled by any other queen. Obviously for n=2 there is no problem to the solution, while for n=4 a valid solution is given by the drawing below. <br />\r\n <br />\r\n <font size="2"><img src="content/lessons/1/kef5_81.jpg" border="0" hspace="0" align="middle" /></font><br />\r\n <br />\r\n A possible position on the grid is set by the pair of pointers (i,j) where 1(1),...V(n)]. All the solutions for which V(i)=V(j) are rejected because 2 queens can not be on the same row.Now the solutions are the permutes of n pointers, which is n!, still a forbiddingly big number. Out of all these solution the correct one is the one which satisfies the last requirement: 2 queens will not belong in the same diagonal, which is:<br />\r\n <br />\r\n V(j)-V(i)<>±(i-j) for i<>j. (5.8-1)<br />\r\n <br />\r\n A backtracking algorithm or this problem constructs the permutes [V(1),....V(n)] of the {1,...,n} pointers, and examines them as to the property (5.8-1). For example there are (n-2)! permutes in the shape of [3,4....]. These will not be produced and examined if the systematically construction of them has already ordered them in a sub-tree with root [3,4] which will be rejected by the 5.8-1 condition, and will also reject all the (n-2)! permutes. On the contrary, the same way of producing-examining will go even further to the examination of more permutes in the shape of p={1,4,2,...} since, so far the condition is satisfied. The next node to be inserted that is j:=V(4) must also satisfies these:j-1<>3,j-4<>2,j-4<>-2,j-2<>1,j-2<>-1. All the j pointers satisfying these requirements produce the following permutes: [1,4,2,j,...] which connect to the tree as children of p. Meanwhile large sets of permutes such as [1,4,2,6,...] have already been rejected.<br />\r\n <br />\r\n A typical declaration of this algorithm: The root of all solutions,has as children n nodes [1],...,[n],where [j] represents all the permutes starting with j(and whose number is (n-1)! for every j). Inductive if a node includes the k nodes {j1,...jk} we attempt to increase it with another node { j1,...,jk,jk+1} so that the condition (5.8-1) is fulfilled.<br />\r\n <br />\r\n For n=4 this method produces the indirect graph of the following picture, and does not produce the 4!=24 leaves of all the candidate solutions.<br />\r\n <br />\r\n <font size="2"><font size="2"><img src="content/lessons/1/kef5_82.jpg" border="0" hspace="0" align="bottom" /></font></font><br />\r\n <br />\r\n <strong>\r\n Solution to the queens problem using Backtracking (n=4)</strong>\r\n <p align="center">\r\n \r\n </p>\r\n <table border="2" cellspacing="4" cellpadding="4" style="border: 3px dotted ; vertical-align: top; width: 100%; color: #333333; height: 200px; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <strong><applet codebase="content/lessons/1/java/queens" code="queens.class" width="450" height="355"/></applet></strong>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170252941, 'theory', 1, 1, 'a:2:{s:15:"hide_navigation";s:1:"0";s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (6, 'Dijkstra algorithm', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Dijkstra Algorithm</h1>\r\n This algorithm finds the routes,by cost precedence. Let's assume that every cost is a positive number, and assume the same in the cost function c as in 5.4 paragraph. G may be a graph, a digraph, or even a combined one, which means that only some of its sides are directed.If we consider G as digraph, then every other case is fully covered as well since a no directed side can be considered a 2 directed sides of equal cost for every direction.<br />\r\n <br />\r\n The idea for this algorithm is based on the fact that every m.r containing more than one side is the expansion of another m.r. containing a side less. This happens because all costs are considered as positive numbers. In this way the first route D(1) found by the algorithm will be one arc route, that is from the starting point to one of the sides directly connected to this starting point. The next route D(2) will be a one arc route itself, or a two arc route, but in this case will be an expansion of D(1). The whole procedure is a systematically, as to the numbers of sides, appliance of dynamic programming.<br />\r\n <br />\r\n <u><strong>\r\n METHODOLOGY </strong></u><br />\r\n Let's call D(1),D(2) the routes (found by the Dijkstra Algorithm) for which { (cost of D(1) ) <= cost of D(2)<=...}. We will show that every m.r.j arcs maximum. <br />\r\n <br />\r\n On contrary to our previous symbolism, here we will name V(0) the starting point and V(1),...,V(n-1) the rest of the peaks of G. We assign 2 numbers in every peak with V(i)<>V(0) (as in the Prim Algorithm.) as follows.<br />\r\n e (i):=cost of the so far known to us minimum route.<br />\r\n p (i):=the pointer of the V(p(i)) peak for which the minimum route has already been found and the direct connection of the V(i) with the V(p(i)) gives us the so far best route for the V(i) peak, with cost e(i).<br />\r\n <br />\r\n When another terminal m.r. for V(m) is found, we examine whether the direct connection of V(i) to V(m) gives us less cost, that is smaller e(i). In such a case we must set: p(i)=m. For initialization we consider p(i)=0, that means direct connection of V(i) to V(0), (obviously e(i)=infinite if the e(0i) does not exist.<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/dijkstra" code="dijkstra.class" width="632" height="345"/></applet><br />\r\n <br />\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 7, 1, 1170252275, 'theory', 1, 7, 'b:0;', NULL, NULL, 1, '', NULL), (7, 'Minimoum routes', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Minimoum routes</h1>\r\n The cost of a route in the <strong>(di)graph G</strong> is the cost of the subgraph which is constructed by the route itself. Among all the routes from V(i) to V(j) in a graph, there is at least one with minimum cost.This route is called <strong>"minimum route"</strong>, (m.r.).<br />\r\n <br />\r\n The following algorithms are also examples of the greedy method or/and dynamic programming methods. \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170249837, 'theory', 1, 9, 'b:0;', NULL, NULL, 1, '', NULL), (8, 'Heuristic algorithms', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Heuristic algorithms</h1>\r\n The term heuristic is used for algorithms which find solutions among all possible ones, but they do not guarantee that the best will be found, therefore they may be considered as approximately and not accurate algorithms. These algorithms usually find a solution close to the best one and they find it fast and easily. Sometimes these algorithms can be accurate, that is they actually find the best solution, but the algorithm is still called heuristic until this best solution is proven to be the best. The method used from a heuristic algorithm is one of the known methods, such as greediness, but in order to be easy and fast the algorithm ignores or even suppresses some of the problem's demands. \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170249372, 'theory', 1, 11, 'b:0;', NULL, NULL, 1, '', NULL), (9, 'Dynamic programming', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Dynamic Programming</h1>\r\n The same general problem is faced here, as in the greedy method, that is the quest for a way to calculate the best solution without spending special time or effort for each and every one of the candidate solutions.<br />\r\n <br />\r\n <strong>\r\n Dynamic Programming (DP)</strong> tends to break the original problem to sub-problems and chooses the best solution in the sub-problems, beginning from the smaller in size. The best solution in the bigger sub-problems is found by using the best ones of the smaller sub-problems through a retroactive formula which connects the solutions. Up to this point (DP) is simply the method Divide And Conquer. What is special is that the retroactive formula is used to abort all the solutions that are candidates, but do not have a chance in giving a best solution. Furthermore the information about the choices who still have a possibility of leading to a best solution are stored and can be used.<br />\r\n <br />\r\n In finding this formula,we make a lot of use of what is called " principal of the best ", which roughly defined, says that if the possible solutions of a problem are a combination of possible solutions of sub-problems, then we must expect that the best solution of the problem will come by the combination of the best solutions of sub-problems.<br />\r\n <br />\r\n A typical example of applying the principal of the best is given by the problem of minimum routes (also in Chapter 5.7 ) between 2 points: Let's assume that all the possible routes between two points A and C must go through other points, which means that the choice of the minimum route must be done among the<strong> AB(1)C, AB(2)C,...., AB(k)C.\r\n <br />\r\n </strong>\r\n <br />\r\n Every route<strong> AB(i)C</strong> is divided in two parts: the <strong>AB(i) and the B(i)C</strong>, which must also go through other points. The choice of the minimum route from <strong>A to B(i)</strong> (sub-problem) can be done through a lot of routes,the same goes for the sub-problem of the minimum route from <strong>B(i) to C</strong>. It is easily understood that:<br />\r\n <br />\r\n <strong>\r\n Minimum route from A to C= {minimum route from A to B (i) + minimum route from B(i) to C} depending on i.</strong><br />\r\n <br />\r\n In a simple and restricted form,the principal of the best can be strictly defined and proofed as in the theorem below. We assume that all the pointers belong to a set, and that A+B means the set which consists of all the possible sums a+b with a belonging to the A set and bB set.<br />\r\n <br />\r\n We can now say that the main characteristics of a DP algorithm are: <br />\r\n <br />\r\n 1. The systematic appliance of the "principal of the best", so that in every step more and more choices are rejected, and only the ones that offer best solutions to the sub-problems remain.<br />\r\n 2. The storing of best solutions in internal steps for future use of them. \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170249710, 'theory', 1, 3, 'b:0;', NULL, NULL, 1, '', NULL), (10, 'Prim algorithm', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Prim algorithm</h1>\r\n At first a peak is chosen in random order, which for simplicity we accept it as V(1). This way two sets of pointers are initialized, the 0={1} and P={2...n}.<br />\r\n <br />\r\n The O set (the O is taken from the Greek word Oristiko which means Terminal), will always contain the pointers of those peaks which are terminally attached in the T tree. The V(1) peak has already been attached in the T tree. The P set( P is taken form the Greek word Prosorino Temporary) contains the rest of the pointers for the peaks, P={1...n}-O which are those pointers who have not been terminally connected with a node of T, that means they are not attached in the tree. <br />\r\n <br />\r\n In every execution of the Prim Algorithm a new peak will be connected to the T tree, not always with their numbering order, for example the V(4) peak can be connected to the tree before the V(2) peak. The corresponding pointer of the newly connected peak will be deleted from P set and will be inserted to the O set. When all peaks are connected there will be O={1,...n} and P=0. This of course means the end of the algorithm.<br />\r\n <br />\r\n The new peak every time will be chosen by using a greedy method. Among all sides of G which connect peaks already inserted in the T (pointers in the O set ) tree with the rest of the peaks (pointers in the P set ), we choose one with minimum cost. If the chosen one is e(ij) then i belongs in the O set, V(i) peak is already in the T tree, j belongs in the P set, and V(j) peak has not been attached in the T tree yet. We put V(j) in the T tree, we change the O set by putting the j pointer, and we also change the P set by removing the j pointer.<br />\r\n <br />\r\n This may seem to you extremely complicated but it is easily understood by the following animated applet:<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/prim" code="Prim.class" width="632" height="345"/></applet><font size="5"></font>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <p>\r\n \r\n </p>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 15, 1, 1170252003, 'theory', 1, 15, 'b:0;', NULL, NULL, 1, '', NULL), (11, 'Kruskal algorithm', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Kruskal Algorithm</h1>\r\n The Kruskal Algorithm starts with a forest which consists of n trees. Each and everyone tree, consists only by one node and nothing else. In every step of the algorithm, two different trees of this forest are connected to a bigger tree. Therefore, we keep having less and bigger trees in our forest until we end up in a tree which is the minimum genetic tree (m.g.t.). In every step we choose the side with the least cost, which means that we are still under greedy policy. If the chosen side connects nodes which belong in the same tree the side is rejected, and not examined again because it could produce a circle which will destroy our tree. Either this side or the next one in order of least cost will connect nodes of different trees, and this we insert connecting two small trees into a bigger one.<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/Kruskal" code="Kruskal.class" width="632" height="345"/></applet><span style="font-family: verdana,arial,helvetica,sans-serif"></span><br />\r\n <br />\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 15, 1, 1170252084, 'theory', 1, 4, 'a:2:{s:15:"hide_navigation";s:1:"0";s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (12, 'Introduction', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Introduction</h1>\r\n In this lesson we discuss general methods which often apply in many and important problems where the number of possible solutions is forbiddingly big, in a sense that it is not possible to create and/or examine all those solutions just to find the one which fulfills certain requirements. Forbiddingly large numbers are for example the exponent and fictional functions of a <strong>n </strong>quantity, such as <strong>2<sup>n</sup></strong> or <strong>n</strong>! in best cases, or maybe combinations of those quantities in even worst cases. Even in modern <em><strong>Parallel Computers</strong></em> the execution of 30! simple mathematical actions would require about 300 centuries of calculations!<br />\r\n <br />\r\n All possible solutions are acceptable for a problem, but the one we look for is the <em><strong>best</strong></em> meaning that there is no other better than the one we found. Of course, the comparison is made by certain criteria. Herein we accept that there is a number representing each solution, for example a cost, a profit, that is difficult to calculate, therefore we seek a solution in which this number is, for example, minimum. We will also consider problems, for which we do not want the <em><strong>best</strong></em> solution, but just any other acceptable one out of a forbiddingly number of potential solutions.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170248881, 'theory', 1, 0, 'b:0;', NULL, NULL, 1, '', NULL), (13, 'Greed (and hill elevation)', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Greed (and hill elevation)</h1>\r\n This method is applied in such cases where a best solution is sought in a forbiddingly number of candidates. Following this method, the profit in every separate step of a procedure is maximized, <strong>without checking the consequences this might have in the next steps and to the final result.<br />\r\n </strong><br />\r\n A large number of candidates is rejected in every step of a greedy method, which has as a result the drastic shrinking of their number. This happens because <em><strong>greedy methods</strong></em> try to get the maximum possible <em><strong>best </strong></em>in every step. Despite all that, this method is <em><strong>topical</strong></em>; it does not take in mind the whole problem, therefore it is shortsighted and doesn't always leads us to the correct result. It often produces, though, a solution which is "<em><strong>pretty near</strong></em>" to the <em><strong>best </strong></em>solution.<br />\r\n <br />\r\n This first example is simply an explanation of the part that the shortsighted choice leads to a not optimal final result.<br />\r\n <br />\r\n <table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; background-image: none; float: none; text-align: left; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4">Here we have the walls of a city, different points inside and outside of it and the time for moving \r\n between points. Those times depends on a variety of reasons. We ask for the path with the least \r\n cost to move from point A1 to the center K of the city. The greedy one would try to reach the \r\n nearer point to A1 inside the city, which is A5 with 6 time units. After that there is no way to find \r\n the less cost path.<br />\r\n </td>\r\n </tr>\r\n <tr>\r\n <td colspan="4" align="center"><br />\r\n <applet codebase="content/lessons/1/java/badgreed" code="badgreed.class" width="350" height="380"/></applet></td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <br />\r\n <font size="2"> </font>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170251518, 'theory', 1, 12, 'b:0;', NULL, NULL, 1, '', NULL), (14, 'Order projects by deadlines', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Order projects by deadlines</h1>\r\n We are about to examine a situation in which greedy methods give the best solution to a very important problem.<br />\r\n <br />\r\n Suppose n projects E(1),....E(n) are given. For each and everyone of those projects there is a deadline d(i)>0 which is an integer number of time units and a profit p(i)>0 which is gained only if the project is fulfilled before the exceeded of the deadline. The execution of a project (any of them) requires a time unit. Which projects and in what order should be constructed in order to maximize the total profit?<br />\r\n <br />\r\n An expectable or possible solution for this problem is a set of projects which can all be constructed before their deadline in a certain order, but not necessarily with their order of appearance in the set. If for example we consider n=3, (d(1),d(2),d(3)=2,2,1) and (p(1),p(2),p(3))=(50,100,60) a possible solution is the following set:L={E(1),E(2)} with a total profit of 150, whereas another possible solution(which happens to be the best) is the : L{E(2),E(3)}, with order of construction E(3) first, followed by E(2). This solution has a profit which adds up to 160.<br />\r\n <br />\r\n If L is a possible solution then the whole profit k is:<br />\r\n k =Sum( p(i) ) (Presuming that E(i) belongs to the L set).<br />\r\n <br />\r\n Let's accept a greedy algorithm which starts with L=0 and who in every step selects a project with the maximum possible profit (out of the remaining projects). This algorithm will add the project to the L set, if it still gives us a possible solution. To check whether the overadded solution still is possible the algorithm should logically check all the possible transpositions of the elements of the solution. If in the present step there are k elements in the candidate possible solution, the algorithm would have to check k! cases in the worst case, a number forbiddingly big. However, there is a way out of this problem because we must only try to transfer projects with inclining deadline order. If this execution order aborts our deadlines we do not add this new project in our solution, and a new project (one with the maximum profit) is selected out of the remaining projects. The algorithm ends when there are no more projects left.<br />\r\n <br />\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n<table border="2" cellspacing="4" cellpadding="4" style="border-style: dotted; border-width: 3px; width: 100%; height: 200px; vertical-align: top; color: #333333; background-color: #ccff99">\r\n <tbody>\r\n <tr>\r\n <td colspan="4" align="center"><applet codebase="content/lessons/1/java/greeding" code="greeding.class" width="374" height="300"/></applet> \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170259047, 'theory', 1, 13, 'b:0;', NULL, NULL, 1, '', NULL), (15, 'Minimum genetic tree', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Minimum genetic tree</h1>\r\n Let's assume a network G with cost function for its sides c. That means that c[e(ij)] is a real number and represents the cost for the e(ij) arc.<br />\r\n <br />\r\n * There are no arcs for a peak to itself, therefore e(ii) does not belong to the E set for i=1..n. As usually, n is the number of the peaks of G.<br />\r\n * All costs are positive, therefore c[e(ij)]>0 for i<>j.<br />\r\n * We expand the c function to the non existing sides( e(ii) not belonging to the E set for i=1..n) assuming that :<br />\r\n * The cost of the direct access of one peak to itself is zero, c[e(ii)]=0;<br />\r\n * If there is no side connecting V(i) to V(j) that is e(ij) does not belong to the E set, then the direct access from one peak to another costs infinite. The final conclusion is:<br />\r\n <br />\r\n <table border="0">\r\n <tbody>\r\n <tr>\r\n <td rowspan="2"><strong><em> \r\n c[e(ij)] </em>={</strong></td>\r\n <td><strong> 0 , if i=j.</strong></td>\r\n </tr>\r\n <tr>\r\n <td><strong> \r\n infinite , if i<>j.</strong></td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n <br />\r\n We can easily assume that G is connective.<br />\r\n <br />\r\n As cost of a G's undergraph is set the total cost of its sides. We are extremely concerned in the cost of a genetic tree T=(V',E'), where V'=V, that is the positive number:<br />\r\n cost(T)= Sum( c[e(ij)] ) for e(ij) belonging to E'.<br />\r\n <br />\r\n We will examine two algorithms, which solve the problem of finding the minimum genetic tree (m.g.t.) that is a genetic tree T which satisfies the following: cost(T)<=cost(T') for every genetic tree T' of G.<br />\r\n They are the PRIM and the KRUSKAL algorithm. \r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 1, 1170248860, 'theory', 1, 14, 'b:0;', NULL, NULL, 1, '', NULL), (16, 'Religion', '<font size="2"><font size="3"><strong>Religion<br />\r\n<br />\r\n</strong></font></font>\r\n<table border="1" cellspacing="3" cellpadding="3" align="right">\r\n <tbody>\r\n <tr>\r\n <td> \r\n <div style="text-align: center">\r\n <img src="content/lessons/2/ChacDresden.jpg" border="0" alt="Chaac" title="Chaac" width="167" height="224" />\r\n </div>\r\n </td>\r\n </tr>\r\n <tr>\r\n <td> <font size="2"><strong>Chaac, the god of Rain and thunder</strong></font></td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n<font size="2">Like the Aztec and Inca who came to power later, the Maya believed in a cyclical nature of time. The rituals and ceremonies were very closely associated with celestial/terrestrial cycles which they observed and inscribed as separate calendars. The Maya priest had the job of interpreting these cycles and giving a prophetic outlook on the future or past based on the number relations of all their calendars. They also had to determine if the "heavens" or celestial matters were appropriate for performing certain religious ceremonies.<br />\r\n<br />\r\nThe Maya practiced human sacrifice. In some Maya rituals people were killed by having their arms and legs held while a priest cut the person's chest open and tore out his heart as an offering. This is depicted on ancient objects such as pictorial texts, known as codecs. It is believed that children were often offered as sacrificial victims because they were believed to be pure.<br />\r\n<br />\r\nMuch of the Maya religious tradition is still not understood by scholars, but it is known that the Maya, like most pre-modern societies, believed that the cosmos has three major planes, the underworld, the sky, and the earth.<br />\r\n<br />\r\nThe Maya Underworld is reached through caves and ball courts. It was thought to be dominated by the aged Maya gods of death and putrefaction. The Sun and Itzamna, both aged gods, dominated the Maya idea of the sky. The night sky was considered a window showing all supernatural doings. The Maya configured constellations of gods and places, saw the unfolding of narratives in their seasonal movements, and believed that the intersection of all possible worlds was in the night sky.<br />\r\n<br />\r\nMaya gods were not discrete, separate entities like Greek gods. The gods had affinities and aspects that caused them to merge with one another in ways that seem unbounded. There is a massive array of supernatural characters in the Maya religious tradition, only some of which recur with regularity. Good and evil traits are not permanent characteristics of Maya gods, nor is only "good" admirable. What is inappropriate during one season might come to pass in another since much of the Mayan religious tradition is based on cycles and not permanence.<br />\r\n<br />\r\nThe life-cycle of maize lies at the heart of Maya belief. This philosophy is demonstrated on the Maya belief in the Maize God as a central religious figure. The Maya bodily ideal is also based on the form of the young Maize God, which is demonstrated in their artwork. The Maize God was also a model of courtly life for the Classical Maya.<br />\r\n<br />\r\nThe Maya believed that the universe was flat and square, but infinite in area. They also worshiped the circle, which symbolized perfection or the balancing of forces.<br />\r\n<br />\r\nIt is sometimes believed that the multiple "gods" represented nothing more than a mathematical explanation of what they observed. Each god was literally just a number or an explanation of the effects observed by a combination of numbers from multiple calendars. Among the many types of Maya calendars which were maintained, the most important included a 260-day cycle, a 365-day cycle which approximated the solar year, a cycle which recorded lunation periods of the Moon, and a cycle which tracked the synodic period of Venus.<br />\r\n<br />\r\nPhilosophically, the Maya believed that knowing the past meant knowing the cyclical influences that create the present, and by knowing the influences of the present one can see the cyclical influences of the future.<br />\r\n<br />\r\nEven in the 19th century, there was Maya influence in the local branch of Christianity followed in Chan Santa Cruz. Among the K'iche's in the western highlands of Guatemala these same nine months are replicated, until this very day, in the training of the ajk'ij, the keeper of the 260-day-calendar called ch'olk'ij.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<br />\r\n</div>\r\n<div align="center">\r\n<br />\r\n</div>\r\n', 29, 2, 1189971471, 'theory', 1, 18, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (17, 'Astronomy', '<div align="justify">\r\n<font size="2"><font size="3"><strong>Astronomy</strong></font></font><br />\r\n<br />\r\n<font size="2">Uniquely, there is some evidence to suggest the Maya appear to be the only pre-telescopic civilization to demonstrate knowledge of the Orion Nebula as being fuzzy, i.e. not a stellar pin-point. The information which supports this theory comes from a folk tale that deals with the Orion constellation's area of the sky. Their traditional hearths include in their middle a smudge of glowing fire that corresponds with the Orion Nebula. This is a significant clue to support the idea that the Maya detected a diffuse area of the sky contrary to the pin points of stars before the telescope was invented. Many preclassic sites are oriented with the Pleiades and Eta draconnis, as seen in La Blanca, Ujuxte, Monte Alto, and Takalik Abaj.</font><br />\r\n<br />\r\n<font size="2">The Maya were very interested in zenial passages, the time when the sun passes directly overhead. The latitude of most of their cities being below the Tropic of Cancer, these zenial passages would occur twice a year equidistant from the solstice. To represent this position of the sun overhead, the Maya had a god named Diving God.</font><br />\r\n<br />\r\n<font size="2">The Dresden Codex contains the highest concentration of astronomical phenomena observations and calculations of any of the surviving texts (it appears that the data in this codex is primarily or exclusively of an astronomical nature). Examination and analysis of this codex reveals that Venus was the most important astronomical object to the Maya, even more important to them than the sun.</font>\r\n</div>\r\n', 29, 2, 1189971399, 'theory', 1, 20, 'b:0;', NULL, NULL, 1, '', NULL), (18, 'Mathematics', '<font size="2"><font size="3"><strong>Mathematics<br />\r\n<br />\r\n</strong></font></font>\r\n<table border="0" cellspacing="3" cellpadding="3" align="right">\r\n <tbody>\r\n <tr>\r\n <td> <img src="content/lessons/2/Maya_numbers.png" border="0" alt="Maya Numbers" title="Maya Numbers" width="248" height="286" /></td>\r\n </tr>\r\n <tr align="center">\r\n <td> \r\n <strong><font size="2">Maya Numbers</font></strong></td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n<font size="2">In common with the other Mesoamerican civilizations, the Maya used a base 20 (vigesimal) and base 5 numbering system. Also, the preclassic Maya and their neighbors independently developed the concept of zero by 36 BC. Inscriptions show them on occasion working with sums up to the hundreds of millions and dates so large it would take several lines just to represent it. They produced extremely accurate astronomical observations; their charts of the movements of the moon and planets are equal or superior to those of any other civilization working from naked eye observation.<br />\r\n<br />\r\nAlso in common with the other Mesoamerican civilizations, the Maya utilized a highly accurate measure of the length of the solar year, far more accurate than that used in Europe as the basis of the Gregorian Calendar. They did not use this figure for the length of year in their calendar, however. Instead, the Maya calendar(s) were based on a year length of exactly 365 days, which means that the calendar falls out of step with the seasons by one day every four years. By comparison, the Julian calendar, used in Europe from Roman times until about the 16th Century, accumulated an error of one day every 128 years. The modern Gregorian calendar accumulates a day's error in approximately 3257 years.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<br />\r\n<br />\r\n<strong><font size="2"></font></strong><br />\r\n</div>\r\n<br />\r\n', 29, 2, 1189971314, 'theory', 1, 17, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL); INSERT INTO `content` VALUES (19, 'Writing', '<div align="justify">\r\n<font size="2"><font size="3"><strong>Writing</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font>The Maya writing system (often called hieroglyphs from a superficial resemblance to the Ancient Egyptian writing) was a combination of phonetic symbols and logograms. It is most often classified as a logographic or (more properly) a logosyllabic writing system, in which syllabic signs play a significant role. It is the only writing system of the Pre-Columbian New World which is known to completely represent the spoken language of its community. In total, the script has more than a thousand different glyphs, although a few are variations of the same sign or meaning, and many appear only rarely or are confined to particular localities. At any one time, no more than around 500 glyphs were in use, some 200 of which (including variations) had a phonetic or syllabic interpretation.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThe earliest inscriptions in an identifiably-Maya script date back to 200–300 BC. However, this is preceded by several other writing systems which had developed in Mesoamerica, most notably that of the Zapotecs, and (following the 2006 publication of research on the recently-discovered Cascajal Block), the Olmecs. There is a pre-Maya writing known as "Epi-Olmec script" (post Olmec) which some researchers believe may represent a transitional script between Olmec and Maya writing, but the relationships between these remain unclear and the matter is unsettled. On January 5, 2006, National Geographic published the findings of Maya writings that could be as old as 400 BCE, suggesting that the Maya writing system is nearly as old as the oldest Mesoamerican writing known at that time, Zapotec. In the succeeding centuries the Maya developed their script into a form which was far more complete and complex than any other that has yet been found in the Americas.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nSince its inception, the Maya script was in use up to the arrival of the Europeans, peaking during the Maya Classical Period (c. 200 to 900). Although many Maya centers went into decline (or were completely abandoned) during or after this period, the skill and knowledge of Maya writing persisted amongst segments of the population, and the early Spanish conquistadors knew of individuals who could still read and write the script. Unfortunately, the Spanish displayed little interest in it, and as a result of the dire impacts the conquest had on Maya societies, the knowledge was subsequently lost, probably within only a few generations.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAt a rough estimate, in excess of 10,000 individual texts have so far been recovered, mostly inscribed on stone monuments, lintels, stelae and ceramic pottery. The Maya also produced texts painted on a form of paper manufactured from processed tree-bark, in particular from several species of strangler fig trees such as Ficus cotinifolia and Ficus padifolia. This paper, common throughout Mesoamerica and generally now known by its Nahuatl-language name amatl, was typically bound as a single continuous sheet that was folded into pages of equal width, concertina-style, to produce a codex (book) that could be written on both sides. Shortly after the conquest, all of the codices which could be found were ordered to be burnt and destroyed by zealous Spanish priests, notably Bishop Diego de Landa. Only three reasonably intact examples of Maya codices are known to have survived through to the present day. These are now known as the Madrid, Dresden, and Paris codices. A few pages survive from a fourth, the Grolier codex, whose authenticity is sometimes disputed, but mostly is held to be genuine. Further archaeology conducted at Mayan sites often reveals other fragments, rectangular lumps of plaster and paint chips which formerly were codices; these tantalizing remains are, however, too severely damaged for any inscriptions to have survived, most of the organic material having decayed.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThe decipherment and recovery of the now-lost knowledge of Maya writing has been a long and laborious process. Some elements were first deciphered in the late 19th and early 20th century, mostly the parts having to do with numbers, the Maya calendar, and astronomy. Major breakthroughs came starting in the 1950s to 1970s, and accelerated rapidly thereafter. By the end of the 20th century, scholars were able to read the majority of Maya texts to a large extent, and recent field work continues to further illuminate the content.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nIn reference to the few extant Maya writings, Michael D. Coe, a prominent linguist and epigrapher at Yale University stated:</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n"Our knowledge of ancient Maya thought must represent only a tiny fraction of the whole picture, for of the thousands of books in which the full extent of their learning and ritual was recorded, only four have survived to modern times (as though all that posterity knew of ourselves were to be based upon three prayer books and 'Pilgrim's Progress')." (Michael D. Coe, The Maya, London: Thames and Hudson, 4th ed., 1987, p. 161.)</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nMost surviving pre-Columbian Maya writing is from stelae and other stone inscriptions from Maya sites, many of which were already abandoned before the Spanish arrived. The inscriptions on the stelae mainly record the dynasties and wars of the sites' rulers. Also of note are the inscriptions that reveal information about the lives of ancient Maya women. Much of the remainder of Maya hieroglyphics has been found on funeral pottery, most of which describes the afterlife.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n<strong>Writing tools</strong></font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAlthough the archaeological record does not provide examples, Maya art shows that writing was done with brushes made with animal hair and quills. Codex-style writing was usually done in black ink with red highlights, giving rise to the Aztec name for the Maya territory as the "land of red and black".</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n<strong>Scribes and Literacy</strong></font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nScribes held a prominent position in Maya courts. Maya art often depicts rulers with trappings indicating they were scribes or at least able to write, such as having pen bundles in their headdresses. Additionally, many rulers have been found in conjunction with writing tools such as shell or clay inkpots.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAlthough the number of logograms and syllabic symbols required to fully write the language numbered in the hundreds, literacy was not necessarily widespread beyond the elite classes. Graffiti uncovered in various contexts, including on fired bricks, shows nonsensical attempts to imitate the writing system.</font>\r\n</div>\r\n', 29, 2, 1189971216, 'theory', 1, 24, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (20, 'Architecture', '<div align="justify">\r\n<font size="2"><font size="3"><strong>Architecture</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font>As unique and spectacular as Greek or Roman architecture, Maya architecture spans many thousands of years; yet, often the most dramatic and easily recognizable as Maya are the fantastic stepped pyramids from the Terminal Pre-classic period and beyond.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThere are also cave sites that are important to the Maya. These cave sites include Jolja Cave, the cave site at Naj Tunich, the Candelaria Caves, and the Cave of the Witch. There are also cave-origin myths among the Maya. Some cave sites are still used by the modern Maya in the Chiapas highlands.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nIt has been suggested that, in conjunction to the Maya Long Count Calendar, every fifty-two years, or cycle, temples and pyramids were remodeled and rebuilt. It appears now that the rebuilding process was often instigated by a new ruler or for political matters, as opposed to matching the calendar cycle. However, the process of rebuilding on top of old structures is indeed a common one. Most notably, the North Acropolis at Tikal seems to be the sum total of 1,500 years of architectural modifications. In Tikal and Yaxhá, there are the Twin Pyramid complexes (7 in Tikal and 1 in Yaxhá, that commemorate the end of a Baktún</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThrough observation of the numerous consistent elements and stylistic distinctions, remnants of Maya architecture have become an important key to understanding the evolution of their ancient civilization.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n<strong>Urban design</strong></font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAs Maya cities spread throughout the varied geography of Mesoamerica, site planning appears to have been minimal. Maya architecture tended to integrate a great degree of natural features, and their cities were built somewhat haphazardly as dictated by the topography of each independent location. For instance, some cities on the flat limestone plains of the northern Yucatán grew into great sprawling municipalities, while others built in the hills of Usumacinta utilized the natural loft of the topography to raise their towers and temples to impressive heights. However, some semblance of order, as required by any large city, still prevailed.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nClassic Era Maya urban design could easily be described as the division of space by great monuments and causeways. Open public plazas were the gathering places for people and the focus of urban design, while interior space was entirely secondary. Only in the Late Post-Classic era did the great Maya cities develop into more fortress-like defensive structures that lacked, for the most part, the large and numerous plazas of the Classic.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAt the onset of large-scale construction during the Classic Era, a predetermined axis was typically established in a cardinal direction. Depending on the location of natural resources such as fresh-water wells, or cenotes, the city grew by using sacbeob (causeways), (singular: Sacbé) to connect great plazas with the numerous platforms that created the sub-structure for nearly all Maya buildings. As more structures were added and existing structures re-built or remodeled, the great Maya cities seemed to take on an almost random identity that contrasted sharply with other great Mesoamerican cities such as Teotihuacan and its rigid grid-like construction.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nAt the heart of the Maya city were large plazas surrounded by the most important governmental and religious buildings, such as the royal acropolis, great pyramid temples and occasionally ball-courts. Though city layouts evolved as nature dictated, careful attention was placed on the directional orientation of temples and observatories so that they were constructed in accordance with Maya interpretation of the orbits of the heavenly bodies. Immediately outside of this ritual center were the structures of lesser nobles, smaller temples, and individual shrines; the less sacred and less important structures had a greater degree of privacy. Outside of the constantly evolving urban core were the less permanent and more modest homes of the common people.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n<strong>Building materials</strong></font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nA surprising aspect of the great Maya structures is their lack of many advanced technologies seemingly necessary for such constructions. Lacking draft animals necessary for wheel-based modes of transportation, metal tools and even pulleys, Maya architecture required abundant manpower. Yet, beyond this enormous requirement, the remaining materials seem to have been readily available. All stone for Maya structures appears to have been taken from local quarries. They most often used limestone which remained pliable enough to be worked with stone tools while being quarried and only hardened once removed from its bed. In addition to the structural use of limestone, much of their mortar consisted of crushed, burnt and mixed limestone that mimicked the properties of cement and was used as widely for stucco finishing as it was for mortar. Later improvements in quarrying techniques reduced the necessity for this limestone-stucco as the stones began to fit quite perfectly, yet it remained a crucial element in some post and lintel roofs. In the case of the common Maya houses, wooden poles, adobe and thatch were the primary materials; however, instances of what appear to be common houses of limestone have been discovered as well. Also notable throughout Maya architecture is the corbel arch (also known as a "false arch"), whose limitations kept their structures generally weighty rather than airy.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n<strong>Notable constructions</strong></font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\n* Ceremonial platforms were commonly limestone platforms of typically less than four meters in height where public ceremonies and religious rites were performed. Constructed in the fashion of a typical foundation platform, these were often accented by carved figures, altars and perhaps tzompantli, a stake used to display the heads of victims or defeated Mesoamerican ballgame opponents.</font><br />\r\n<font size="2">\r\n* Palaces were large and often highly decorated, and usually sat close to the center of a city and housed the population's elite. Any exceedingly large royal palace, or one consisting of many chambers on different levels might be referred to as an acropolis. However, often these were one-story and consisted of many small chambers and typically at least one interior courtyard; these structures appear to take into account the needed functionality required of a residence, as well as the decoration required for their inhabitants stature.</font><br />\r\n<font size="2">\r\n* E-Groups are specific structural configurations present at a number of centers in the Maya area. These complexes are oriented and aligned according to specific astronomical events (primarily the sun’s solstices and equinoxes) and are thought to have been observatories. These structures are usually accompanied by iconographic reliefs that tie astronomical observation into general Maya mythology. The structural complex is named for Group E at Uaxactun, the first documented in Mesoamerica.</font><br />\r\n<font size="2">\r\n* Pyramids and temples. Often the most important religious temples sat atop the towering Maya pyramids, presumably as the closest place to the heavens. While recent discoveries point toward the extensive use of pyramids as tombs, the temples themselves seem to rarely, if ever, contain burials. Residing atop the pyramids, some of over two-hundred feet, such as that at El Mirador, the temples were impressive and decorated structures themselves. Commonly topped with a roof comb, or superficial grandiose wall, these temples might have served as a type of propaganda. As they were often the only structure in a Maya city to exceed the height of the surrounding jungle, the roof combs atop the temples were often carved with representations of rulers that could be seen from vast distances.</font><br />\r\n<font size="2">\r\n* Observatories. The Maya were keen astronomers and had mapped out the phases of celestial objects, especially the Moon and Venus. Many temples have doorways and other features aligning to celestial events. Round temples, often dedicated to Kukulcan, are perhaps those most often described as "observatories" by modern ruin tour-guides, but there is no evidence that they were so used exclusively, and temple pyramids of other shapes may well have been used for observation as well.</font><br />\r\n<font size="2">\r\n* Ball courts. As an integral aspect of the Mesoamerican lifestyle, the courts for their ritual ball-game were constructed throughout the Maya realm and often on a grand scale. Enclosed on two sides by stepped ramps that led to ceremonial platforms or small temples, the ball court itself was of a capital "I" shape and could be found in all but the smallest of Maya cities.</font><br />\r\n<font size="2">\r\n</font><br />\r\n</div>\r\n<font size="2">\r\n</font>\r\n', 29, 2, 1189970952, 'theory', 1, 19, 'b:0;', NULL, NULL, 1, '', NULL), (21, 'Postclassic', '<div align="justify">\r\n<font size="2"><font size="3"><strong>Postclassic History</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font></font><br />\r\n<font size="2">\r\nDuring the succeeding Postclassic period (from the 10th to the early 16th century), development in the northern centers persisted, characterized by an increasing diversity of external influences. The Maya cities of the northern lowlands in Yucatán continued to flourish for centuries more; some of the important sites in this era were Chichen Itza, Uxmal, Edzná, and Coba. After the decline of the ruling dynasties of Chichen and Uxmal, Mayapan ruled all of Yucatán until a revolt in 1450. (This city's name may be the source of the word "Maya", which had a more geographically restricted meaning in Yucatec and colonial Spanish and only grew to its current meaning in the 19th and 20th centuries). The area then degenerated into competing city-states until the Yucatán was conquered by the Spanish.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThe Itza Maya, Ko'woj, and Yalain groups of Central Peten survived the "Classic Period Collapse" in small numbers and by 1250 reconstituted themselves to form competing city-states. The Itza maintained their capital at Tayasal (also known as Noh Petén), an archaeological site thought to underlay the modern city of Flores, Guatemala on Lake Petén Itzá. It ruled over an area extending across the Peten Lakes region, encompassing the community of Eckixil on Lake Quexil. The Ko'woj had their capital at Zacpeten. Postclassic Maya states also continued to survive in the southern highlands. One of the Maya kingdoms in this area, the Quiché, is responsible for the best-known Maya work of historiography and mythology, the Popol Vuh.<br />\r\n<br />\r\n</font>\r\n<div align="center">\r\n<img src="content/lessons/2/Topoxte.jpg" border="0" alt="Topoxte" title="Topoxte" width="600" height="450" /><br />\r\n<font size="2"><strong><br />\r\nEarly Postclassic Temple ruins of Topoxte<br />\r\n<br />\r\n</strong></font>\r\n</div>\r\n</div>\r\n', 27, 2, 1189970311, 'theory', 1, 25, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (22, 'Colonial Period', '<font size="2"><font size="3"><strong>Colonial Period</strong></font></font><br />\r\n<div align="justify">\r\n<font size="2"><font size="3"><strong>\r\n</strong></font></font><br />\r\n<font size="2"><font size="3"><strong>\r\n</strong></font>Shortly after their first expeditions to the region, the Spanish initiated a number of attempts to subjugate the Maya and establish a colonial presence in the Maya territories of the Yucatán Peninsula and the Guatemalan highlands. This campaign, sometimes termed "The Spanish Conquest of Yucatán," would prove to be a lengthy and dangerous exercise for the conquistadores from the outset, and it would take some 170 years before the Spanish established substantive control over all Maya lands.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nUnlike the Spanish campaigns against the Aztec and Inca Empires, there was no single Maya political center which once overthrown would hasten the end of collective resistance from the indigenous peoples. Instead, the conquistador forces needed to subdue the numerous independent Maya polities almost one by one, many of which kept up a fierce resistance. Most of the conquistadores were motivated by the prospects of the great wealth to be had from the seizure of precious metal resources such as gold or silver, however the Maya lands themselves were poor in these resources. This would become another factor in forestalling Spanish designs of conquest, as they instead were initially attracted to the reports of great riches in central Mexico or Peru.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nThe last Maya states, the Itza polity of Tayasal and the Ko'woj city of Zacpeten, were continuously occupied and remained independent of the Spanish until late in the 17th century. They were finally subdued by the Spanish in 1697.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<div align="justify">\r\n<div style="text-align: center">\r\n<img src="content/lessons/2/Spanish_Empire-World_Map.png" border="0" alt="Spanish Empire" title="Spanish Empire" />\r\n</div>\r\n<br />\r\n</div>\r\n<br />\r\n<font size="2"><strong>The full extend of Spanish Empire<br />\r\n<br />\r\n</strong></font>\r\n</div>\r\n<br />\r\n</div>\r\n', 27, 2, 1189970541, 'theory', 1, 21, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (23, 'Political Structures', '<font size="2"><font size="3"><strong>Political Structures<br />\r\n</strong></font><br />\r\n</font>\r\n<div align="justify">\r\n<font size="2">\r\nA typical Classic Maya polity was a small hierarchical state (ajawil, ajawlel, or ajawlil) headed by a hereditary ruler known as an ajaw (later k’uhul ajaw). Such kingdoms were usually no more than a capital city with its neighborhood and several lesser towns, although there were greater kingdoms, which controlled larger territories and extended patronage over smaller polities.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nEach kingdom had a name that did not necessarily correspond to any locality within its territory. Its identity was that of a political unit associated with a particular ruling dynasty. For instance, the archaeological site of Naranjo was the capital of the kingdom of Saal. The land (chan ch’e’n) of the kingdom and its capital were called Wakab’nal or Maxam and were part of a larger geographical entity known as Huk Tsuk. Interestingly, despite constant warfare and eventual shifts in regional power, most kingdoms never disappeared from the political landscape until the collapse of the whole system in the 9th century AD. In this respect, Classic Maya kingdoms are highly similar to late Post Classic polities encountered by the Spaniards in Yucatán and Central Mexico: some polities could be subordinated to hegemonic rulers through conquests or dynastic unions and yet even then they persisted as distinct entities.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nMayanists have been increasingly accepting a "court paradigm" of Classic Maya societies which puts the emphasis on the centrality of the royal household and especially the person of the king. This approach focuses on Maya monumental spaces as the embodiment of the diverse activities of the royal household. It considers the role of places and spaces (including dwellings of royalty and nobles, throne rooms, temples, halls and plazas for public ceremonies) in establishing power and social hierarchy, and also in projecting aesthetic and moral values to define the wider social realm.</font><br />\r\n<font size="2">\r\n</font><br />\r\n<font size="2">\r\nSpanish sources invariably describe even the largest Maya settlements as dispersed collections of dwellings grouped around the temples and palaces of the ruling dynasty and lesser nobles. None of the Classic Maya cities shows evidence of economic specialization and commerce of the scale of Mexican Tenochtitlan. Instead, Maya cities could be seen as enormous royal households, the locales of the administrative and ritual activities of the royal court. They were the places where privileged nobles could approach the holy ruler, where aesthetic values of the high culture were formulated and disseminated, where aesthetic items were consumed. They were the self-proclaimed centers and the sources of social, moral, and cosmic order. The fall of a royal court as in the well-documented cases of Piedras Negras or Copan would cause the inevitable "death" of the associated settlement.</font><br />\r\n</div>\r\n<font size="2">\r\n<br />\r\n</font>\r\n', 29, 2, 1189970644, 'theory', 1, 22, 'b:0;', NULL, NULL, 1, '', NULL), (24, 'Art', '<div align="justify">\r\n<font size="2"><font size="3"><strong>Art</strong></font></font><br />\r\n<br />\r\n<font size="2">A typical Classic <strong>Maya </strong>polity was a small hierarchical state (ajawil, ajawlel, or ajawlil) headed by a hereditary ruler known as an ajaw (later k’uhul ajaw). Such kingdoms were usually no more than a capital city with its neighborhood and several lesser towns, although there were greater kingdoms, which controlled larger territories and extended patronage over smaller polities.</font><br />\r\n<br />\r\n<font size="2">Each kingdom had a name that did not necessarily correspond to any locality within its territory. Its identity was that of a political unit associated with a particular ruling dynasty. For instance, the archaeological site of Naranjo was the capital of the kingdom of Saal. The land (chan ch’e’n) of the kingdom and its capital were called Wakab’nal or Maxam and were part of a larger geographical entity known as Huk Tsuk. Interestingly, despite constant warfare and eventual shifts in regional power, most kingdoms never disappeared from the political landscape until the collapse of the whole system in the 9th century AD. In this respect, Classic Maya kingdoms are highly similar to late Post Classic polities encountered by the Spaniards in Yucatán and Central Mexico: some polities could be subordinated to hegemonic rulers through conquests or dynastic unions and yet even then they persisted as distinct entities.</font><br />\r\n<br />\r\n<font size="2">Mayanists have been increasingly accepting a "court paradigm" of Classic Maya societies which puts the emphasis on the centrality of the royal household and especially the person of the king. This approach focuses on Maya monumental spaces as the embodiment of the diverse activities of the royal household. It considers the role of places and spaces (including dwellings of royalty and nobles, throne rooms, temples, halls and plazas for public ceremonies) in establishing power and social hierarchy, and also in projecting aesthetic and moral values to define the wider social realm.</font><br />\r\n<br />\r\n<font size="2">Spanish sources invariably describe even the largest Maya settlements as dispersed collections of dwellings grouped around the temples and palaces of the ruling dynasty and lesser nobles. None of the Classic Maya cities shows evidence of economic specialization and commerce of the scale of Mexican Tenochtitlan. Instead, Maya cities could be seen as enormous royal households, the locales of the administrative and ritual activities of the royal court. They were the places where privileged nobles could approach the holy ruler, where aesthetic values of the high culture were formulated and disseminated, where aesthetic items were consumed. They were the self-proclaimed centers and the sources of social, moral, and cosmic order. The fall of a royal court as in the well-documented cases of Piedras Negras or Copan would cause the inevitable "death" of the associated settlement.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<img src="content/lessons/2/Palenque_Relief.jpg" border="0" alt="Palenque_Relief" title="Palenque_Relief" width="391" height="796" /><br />\r\n<br />\r\n<font size="2"><strong>\r\nA stucco relief from Palenque depicting Upakal K'inich</strong></font><br />\r\n</div>\r\n<br />\r\n<br />\r\n</div>\r\n', 29, 2, 1189970786, 'theory', 1, 23, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (25, 'Classic', '<font size="2"><strong><font size="3">Classic History</font></strong><br />\r\n<br />\r\nThe Classic period (c. 250–900) witnessed the peak of large-scale construction and urbanism, the recording of monumental inscriptions, and a period of significant intellectual and artistic development, particularly in the southern lowland regions. They developed an agriculturally intensive, city-centered empire consisting of numerous independent city-states. This includes the well-known cities of Tikal, Palenque, Copán and Calakmul, but also the lesser known Dos Pilas, Uaxactun, Altun Ha, and Bonampak, among others. The Early Classic settlement distribution in the northern Maya lowlands is not as clearly known as the southern zone, but does include a number of population centers, such as Oxkintok, Chunchucmil, and the early occupation of Uxmal.<br />\r\n<br />\r\nThe most notable monuments are the pyramids they built in their religious centers and the accompanying palaces of their rulers. The palace at Cancuen is the largest in the Maya area, though the site, interestingly, lacks pyramids. Other important archaeological remains include the carved stone slabs usually called stelae (the Maya called them tetun, or "tree-stones"), which depict rulers along with hieroglyphic texts describing their genealogy, military victories, and other accomplishments.<br />\r\n<br />\r\nThe Maya participated in long distance trade with many of the other Mesoamerican cultures, including Teotihuacan, the Zapotec, and other groups in central and gulf-coast Mexico, as well as with more distant, non-Mesoamerican groups. For example, archaeologists found gold from Panama in the Sacred Cenote of Chichen Itza. Important trade goods included cacao, salt, sea shells, jade and obsidian.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<img src="content/lessons/2/Palenque_Ruins.jpg" border="0" alt="The Palenqua Ruins" title="The Palenqua Ruins" width="629" height="472" />\r\n</div>\r\n<br />\r\n<div align="center">\r\n<strong><font size="2">The Palenqua Ruins<br />\r\n<br />\r\n<br />\r\n</font></strong>\r\n</div>\r\n', 27, 2, 1189970195, 'theory', 1, 28, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (26, 'Geographical Position', '<font size="2"><font size="3"><strong>Geographical Position<br />\r\n</strong></font><br />\r\nThe geographic extent of the Maya civilization, known as the Maya area, extended throughout the northern Central American region, including the present-day nations of Guatemala, Belize, El Salvador, western Honduras , and the southern Mexican states of Chiapas, Tabasco, and the Yucatán Peninsula states of Quintana Roo, Campeche and Yucatán.<br />\r\n<br />\r\nAs the largest sub-region in Mesoamerica, it encompassed a vast and varied landscape, from the mountainous regions of the Sierra Madre to the semi-arid plains of northern Yucatán. Climate in the Maya region can vary tremendously, as the low-lying areas are particularly susceptible to the hurricanes and tropical storms that frequent the Caribbean.<br />\r\n<br />\r\nThe Maya area is generally divided into three loosely defined zones: the southern Maya highlands, the southern (or central) Maya lowlands, and the northern Maya lowlands. The southern Maya highlands include all of elevated terrain in Guatemala and the Chiapas highlands. The southern lowlands lie just north of the highlands, and incorporate the Petén of northern Guatemala, Belize, El Salvador, and the southern portions of the Mexican states of Campeche and Quintana Roo. The northern lowlands cover the remainder of the Yucatán Peninsula, including the Puuc hills.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<img src="content/lessons/2/mayamap.jpg" border="0" alt="Maya Map" title="Maya Map" /><br />\r\n<br />\r\n<font size="2"><strong>Geographical Position of Maya's<br />\r\n<br />\r\n</strong></font>\r\n</div>\r\n<br />\r\n', 29, 2, 1189969299, 'theory', 1, 29, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (27, 'History', '', 29, 2, 1189970002, 'theory', 1, 26, 'b:0;', NULL, NULL, 1, '', NULL), (28, 'Preclassic', '<font size="2"><font size="3"><strong>Preclassic History<br />\r\n</strong></font><br />\r\nWhile the Maya area was initially inhabited around the 10th millennium BC, the first clearly “Maya” settlements were established in approximately 1800 BC in Soconusco region of the Pacific Coast. This point in time, known as the Early Preclassic, was characterized by sedentary communities and the introduction of pottery and fired clay figurines.<br />\r\n<br />\r\nArchaeological evidence suggests the construction of ceremonial architecture in Maya area by approximately 1000 BC. The earliest configurations of such architecture consist of simple burial mounds, which would be the precursors to the stepped pyramids subsequently erected in the Late Preclassic. Prominent Middle and Late Preclassic settlement zones are located in the southern Maya lowlands, specifically in the Mirador and Petén Basins. Important sites in the southern Maya lowlands include Nakbe, El Mirador, Cival, and San Bartolo. Mid-sized Maya communities also began to develop in the northern Maya lowlands during the Middle and Late Preclassic, though these lacked the size, scale, and influence of the large centers of the southern lowlands. Two important Preclassic northern sites include Komchen and Dzibilchaltun.<br />\r\n<br />\r\nThere is some disagreement about the boundaries which differentiate the physical and cultural extent of the early Maya and neighboring Preclassic Mesoamerican civilizations, such as the Olmec culture of the Tabasco lowlands and the Mixe-Zoque– and Zapotec–speaking peoples of Chiapas and southern Oaxaca, respectively. Many of the earliest significant inscriptions and buildings appeared in this overlapping zone, and evidence suggests that these cultures and the formative Maya influenced one another</font>\r\n', 27, 2, 1189970081, 'theory', 1, 27, 'b:0;', NULL, NULL, 1, '', NULL), (29, 'The Maya Civilization', '<font face="verdana,geneva" size="2"><font size="3"><strong>The Maya Civilization<br />\r\n</strong></font><br />\r\nThe Maya civilization is a Mesoamerican civilization, noted for the only known fully developed written language of the pre-Columbian Americas, as well as its spectacular art, monumental architecture, and sophisticated mathematical and astronomical systems. Initially established during the Preclassic period, many of these reached their apogee of development during the Classic period (c. 250 to 900), and continued throughout the Postclassic period until the arrival of the Spanish. At its peak, it was one of the most densely populated and culturally dynamic societies in the world.<br />\r\n<br />\r\nThe Maya civilization shares many features with other Mesoamerican civilizations due to the high degree of interaction and cultural diffusion that characterized the region. Advances such as writing, epigraphy, and the calendar did not originate with the Maya; however, their civilization fully developed them. Maya influence can be detected as far as central Mexico, more than 1000 km (625 miles) from the Maya area. Many outside influences are found in Maya art and architecture, which are thought to result from trade and cultural exchange rather than direct external conquest.<br />\r\n<br />\r\nThe Maya peoples never disappeared, neither at the time of the Classic period decline nor with the arrival of the Spanish conquistadores and the subsequent Spanish colonization of the Americas. Today, the Maya and their descendants form sizable populations throughout the Maya area and maintain a distinctive set of traditions and beliefs that are the result of the merger of pre-Columbian and post-Conquest ideologies (and structured by the almost total adoption of Roman Catholicism). Many different Mayan languages continue to be spoken as primary languages today; the Rabinal Achí, a play written in the Q'eqchi' language, was declared a Masterpiece of the Oral and Intangible Heritage of Humanity by UNESCO in 2005.<br />\r\n<br />\r\n</font>\r\n<div style="text-align: center">\r\n<br />\r\n<img src="content/lessons/2/Bonampak_painting+contrast.jpg" border="0" alt="Bonampak_painting" width="642" height="374" /><br />\r\n<font size="2"><strong><br />\r\nBonampak Painting showing Ancient Mayas<br />\r\n</strong></font>\r\n<br />\r\n</div>\r\n<br />\r\n', 0, 2, 1189969097, 'theory', 1, 0, 'a:6:{s:13:"show_headline";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";i:0;}', NULL, NULL, 1, '', NULL), (30, 'Maya History Test', '', 29, 2, 1189973338, 'tests', 1, 16, 'b:0;', NULL, NULL, 1, '', NULL), (31, '1. Learn to Debug', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Learn to Debug</h1>\r\n Debugging is the cornerstone of being a programmer. The first meaning of the verb to debug is to\r\n remove errors, but the meaning that really matters is to see into the execution of a program by examining\r\n it. A programmer that cannot debug effectively is blind.<br />\r\n <br />\r\n Idealists that think design, or analysis, or complexity theory, or whatnot, are more fundamental are\r\n not working programmers. The working programmer does not live in an ideal world. Even if you\r\n are perfect, your are surrounded by and must interact with code written by major software companies,\r\n organizations like GNU, and your colleagues. Most of this code is imperfect and imperfectly\r\n documented. Without the ability to gain visibility into the execution of this code the slightest\r\n bump will throw you permanently. Often this visibility can only be gained by experimentation,\r\n that is, debugging.<br />\r\n <br />\r\n Debugging is about the running of programs, not programs themselves. If you buy something from\r\n a major software company, you usually don't get to see the program. But there will still arise\r\n places where the code does not conform to the documentation (crashing your entire machine is a\r\n common and spectacular example), or where the documentation is mute. More commonly, you\r\n create an error, examine the code you wrote and have no clue how the error can be occurring. Inevitably,\r\n this means some assumption you are making is not quite correct, or some condition arises\r\n that you did not anticipate. Sometimes the magic trick of staring into the source code works. When\r\n it doesn't, you must debug.<br />\r\n <br />\r\n To get visibility into the execution of a program you must be able to execute the code and observe\r\n something about it. Sometimes this is visible, like what is being displayed on a screen, or the delay\r\n between two events. In many other cases, it involves things that are not meant to be visible, like\r\n the state of some variables inside the code, which lines of code are actually being executed, or\r\n whether certain assertions hold across a complicated data structure. These hidden things must be\r\n revealed.<br />\r\n <br />\r\n The common ways of looking into the ‘innards’ of an executing program can be categorized as:<br />\r\n <br />\r\n • Using a debugging tool,<br />\r\n • Printlining --- Making a temporary modification to the program, typically adding lines that\r\n print information out, and<br />\r\n • Logging --- Creating a permanent window into the programs execution in the form of a log.<br />\r\n <br />\r\n Debugging tools are wonderful when they are stable and available, but the printlining and logging\r\n are even more important. Debugging tools often lag behind language development, so at any point\r\n in time they may not be available. In addition, because the debugging tool may subtly change the\r\n way the program executes it may not always be practical. Finally, there are some kinds of debugging,\r\n such as checking an assertion against a large data structure, that require writing code and\r\n changing the execution of the program. It is good to know how to use debugging tools when they\r\n are stable, but it is critical to be able to employ the other two methods.\r\n <br />\r\n <br />\r\n Some beginners fear debugging when it requires modifying code. This is understandable---it is a\r\n little like exploratory surgery. But you have to learn to poke at the code and make it jump; you\r\n have to learn to experiment on it, and understand that nothing that you temporarily do to it will\r\n make it worse. If you feel this fear, seek out a mentor---we lose a lot of good programmers at the\r\n delicate onset of their learning to this fear.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681063, 'theory', 1, 0, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:17:"1. Learn to Debug";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (32, '2. How to Debug by Splitting the Problem Space', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Debug by Splitting the Problem Space</h1>\r\n Debugging is fun, because it begins with a mystery. You think it should do something, but instead\r\n it does something else. It is not always quite so simple---any examples I can give will be contrived\r\n compared to what sometimes happens in practice. Debugging requires creativity and ingenuity. If\r\n there is a single key to debugging is to use the divide and conquer technique on the mystery.<br />\r\n <br />\r\n Suppose, for example, you created a program that should do ten things in a sequence. When you\r\n run it, it crashes. Since you didn't program it to crash, you now have a mystery. When out look at\r\n the output, you see that the first seven things in the sequence were run successfully. The last three\r\n are not visible from the output, so now your mystery is smaller: ‘It crashed on thing #8, #9, or\r\n #10.’<br />\r\n <br />\r\n Can you design an experiment to see which thing it crashed on? Sure. You can use a debugger or\r\n we can add printline statements (or the equivalent in whatever language you are working in) after\r\n #8 and #9. When we run it again, our mystery will be smaller, such as ‘It crashed on thing #9.’ I\r\n find that bearing in mind exactly what the mystery is at any point in time helps keep one focused.\r\n When several people are working together under pressure on a problem it is easy to forget what\r\n the most important mystery is.<br />\r\n <br />\r\n The key to divide and conquer as a debugging technique is the same as it is for algorithm design:\r\n as long as you do a good job splitting the mystery in the middle, you won't have to split it too\r\n many times, and you will be debugging quickly. But what is the middle of a mystery? There is\r\n where true creativity and experience comes in.<br />\r\n <br />\r\n To a true beginner, the space of all possible errors looks like every line in the source code. You\r\n don't have the vision you will later develop to see the other dimensions of the program, such as the\r\n space of executed lines, the data structure, the memory management, the interaction with foreign\r\n code, the code that is risky, and the code that is simple. For the experience programmer, these\r\n other dimensions form an imperfect but very useful mental model of all the things that can go\r\n wrong. Having that mental model is what helps one find the middle of the mystery effectively.<br />\r\n <br />\r\n Once you have evenly subdivided the space of all that can go wrong, you must try to decide in\r\n which space the error lies. In the simple case where the mystery is: ‘Which single unknown line\r\n makes my program crash?’, you can ask yourself: ‘Is the unknown line executed before or after\r\n this line that I judge to be executed in the about the middle of the running program?’ Usually you\r\n will not be so lucky as to know that the error exists in a single line, or even a single block. Often\r\n the mystery will be more like: ‘Either there is a pointer in that graph that points to the wrong node,\r\n or my algorithm that adds up the variables in that graph doesn't work.’ In that case you may have\r\n to write a small program to check that the pointers in the graph are all correct in order to decide\r\n which part of the subdivided mystery can be eliminated.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681105, 'theory', 1, 31, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:45:"2.How to Debug by Splitting the Problem Space";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (33, '3. How to Remove an Error', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Remove an Error</h1>\r\n I've intentionally separated the act of examining a program's execution from the act of fixing an\r\n error. But of course, debugging does also mean removing the bug. Ideally you will have perfect\r\n understanding of the code and will reach an ‘A-Ha!’ moment where you perfectly see the error and\r\n how to fix it. But since your program will often use insufficiently documented systems into which\r\n you have no visibility, this is not always possible. In other cases the code is so complicated that\r\n your understanding cannot be perfect.<br />\r\n <br />\r\n In fixing a bug, you want to make the smallest change that fixes the bug. You may see other things\r\n that need improvement; but don't fix those at the same time. Attempt to employ the scientific\r\n method of changing one thing and only one thing at a time. The best process for this is to be able\r\n to easily reproduce the bug, then put your fix in place, and then rerun the program and observe\r\n that the bug no longer exists. Of course, sometimes more than one line must be changed, but you\r\n should still conceptually apply a single atomic change to fix the bug.<br />\r\n <br />\r\n Sometimes, there are really several bugs that look like one. It is up to you to define the bugs and\r\n fix them one at a time. Sometimes it is unclear what the program should do or what the original\r\n author intended. In this case, you must exercise your experience and judgment and assign your\r\n own meaning to the code. Decide what it should do, and comment it or clarify it in some way and\r\n then make the code conform to your meaning. This is an intermediate or advanced skill that is\r\n sometimes harder than writing the original function in the first place, but the real world is often\r\n messy. You may have to fix a system you cannot rewrite.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681155, 'theory', 1, 32, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:25:"3. How to Remove an Error";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL); INSERT INTO `content` VALUES (34, '4. How to Debug Using a Log', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Debug Using a Log</h1>\r\n Logging is the practice of writing a system so that it produces a sequence of informative records,\r\n called a log. Printlining is just producing a simple, usually temporary, log. Absolute beginners\r\n must understand and use logs because their knowledge of the programming is limited; system architects\r\n must understand and use logs because of the complexity of the system. The amount of information\r\n that is provided by the log should be configurable, ideally while the program is running.<br />\r\n <br />\r\n In general, logs offer three basic advantages:<br />\r\n <br />\r\n • Logs can provide useful information about bugs that are hard to reproduce (such as those that\r\n occur in the production environment but that cannot be reproduced in the test environment).<br />\r\n • Logs can provide statistics and data relevant to performance, such as the time passing between\r\n statements.<br />\r\n • When configurable, logs allow general information to be captured in order to debug unanticipated\r\n specific problems without having to modify and/or redeploy the code just to deal with\r\n those specific problems.<br />\r\n <br />\r\n The amount to output into the log is always a compromise between information and brevity. Too\r\n much information makes the log expensive and produces scroll blindness, making it hard to find\r\n the information you need. Too little information and it may not contain what you need. For this\r\n reason, making what is output configurable is very useful. Typically, each record in the log will\r\n identify its position in the source code, the thread that executed it if applicable, the precise time of\r\n execution, and, commonly, an additional useful piece of information, such as the value of some\r\n variable, the amount of free memory, the number of data objects, etc. These log statements are\r\n sprinkled throughout the source code but are particularly at major functionality points and around\r\n risky code. Each statement can be assigned a level and will only output a record if the system is\r\n currently configured to output that level. You should design the log statements to address problems\r\n that you anticipate. Anticipate the need to measure performance.<br />\r\n <br />\r\n If you have a permanent log, printlining can now be done in terms of the log records, and some of\r\n the debugging statements will probably be permanently added to the logging system.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681200, 'theory', 1, 33, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:27:"4. How to Debug Using a Log";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (35, '5. How to Understand Performance Problems', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Understand Performance Problems</h1>\r\n Learning to understand the performance of a running system is unavoidable for the same reason\r\n that learning debugging is. Even if you understand perfectly and precisely the cost of the code you\r\n write, your code will make calls into other software systems that you have little control over or\r\n visibility into. However, in practice performance problems are a little different and a little easier\r\n than debugging in general.<br />\r\n <br />\r\n Suppose that you or your customers consider a system or a subsystem to be too slow. Before you\r\n try to make it faster, you must build a mental model of why it is slow. To do this you can use a\r\n profiling tool or a good log to figure out where the time or other resources are really being spent.\r\n There is a famous dictum that 90% of the time will be spent in 10% of the code. I would add to\r\n that the importance of input/output expense (I/O) to performance issues. Often most of the time is\r\n spent in I/O in one way or another. Finding the expensive I/O and the expensive 10% of the code\r\n is a good first step to building your mental model.<br />\r\n <br />\r\n There are many dimensions to the performance of a computer system, and many resources consumed.\r\n The first resource to measure is wall--clock time, the total time that passes for the computation.\r\n Logging wall-clock time is particularly valuable because it can inform about unpredictable\r\n circumstance that arise in situations where other profiling is impractical. However, this may not\r\n always represent the whole picture. Sometimes something that takes a little longer but doesn't burn\r\n up so many processor seconds will be much better in computing environment you actually have to\r\n deal with. Similarly, memory, network bandwidth, database or other server accesses may, in the\r\n end, be far more expensive than processor seconds.<br />\r\n <br />\r\n Contention for shared resources that are synchronized can cause deadlock and starvation. Deadlock\r\n is the inability to proceed because of improper synchronization or resource demands. Starvation\r\n is the failure to schedule a component properly. If it can be at all anticipated, it is best to have\r\n a way of measuring this contention from the start of your project. Even if this contention does not\r\n occur, it is very helpful to be able to assert that with confidence.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681240, 'theory', 1, 34, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:41:"5. How to Understand Performance Problems";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (36, '6. How to Fix Performance Problems', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Fix Performance Problems</h1>\r\n Most software projects can be made 10 to 100 times faster than they are at the time that they are\r\n first released with relatively little effort. Under time-to-market pressure, it is both wise and effective\r\n to choose a solution that gets the job done simply and quickly, but less efficiently than some\r\n other solution. However, performance is a part of usability, and often it must eventually be considered\r\n more carefully.<br />\r\n <br />\r\n The key to improving the performance of a very complicated system is to analyze it well enough\r\n to find the bottlenecks, or places where most of the resources are consumed. There is not much\r\n sense in optimizing a function that accounts for only 1% of the computation time. As a rule of\r\n thumb you should think carefully before doing anything unless you think it is going to make the\r\n system or a significant part of it at least twice as fast. There is usually a way to do this. Consider\r\n the test and quality assurance effort that your change will require. Each change brings a test burden\r\n with it, so it is much better to have a few big changes.<br />\r\n <br />\r\n After you've made a two-fold improvement in something, you need to at least rethink and perhaps\r\n reanalyze to discover the next-most-expensive bottleneck in the system, and attack that to get another\r\n two-fold improvement.<br />\r\n <br />\r\n Often, the bottlenecks in performance will be an example of counting cows by counting legs and\r\n dividing by four, instead of counting heads. For example, I've made errors such as failing to provide\r\n a relational database system with a proper index on a column I look up a lot, which probably\r\n made it at least 20 times slower. Other examples include doing unnecessary I/O in inner loops,\r\n leaving in debugging statements that are no longer needed, unnecessary memory allocation, and,\r\n in particular, inexpert use of libraries and other subsystems that are often poorly documented with\r\n respect to performance. This kind of improvement is sometimes called low-hanging fruit, meaning\r\n that it can be easily picked to provide some benefit.<br />\r\n <br />\r\n What do you do when you start to run out of low-hanging fruit? Well, you can reach higher, or\r\n chop the tree down. You can continue making small improvements or you can seriously redesign a\r\n system or a subsystem. (This is a great opportunity to use your skills as a good programmer, not\r\n only in the new design but also in convincing your boss that this is a good idea.) However, before\r\n you argue for the redesign of a subsystem, you should ask yourself whether or not your proposal\r\n will make it five to ten time better.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681340, 'theory', 1, 35, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:34:"6. How to Fix Performance Problems";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (37, '7. How to Optimize Loops', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Optimize Loops</h1>\r\n Sometimes you'll encounter loops, or recursive functions, that take a long time to execute and are\r\n bottlenecks in your product. Before you try to make the loop a little faster, spend a few minutes\r\n considering if there is a way to remove it entirely. Would a different algorithm do? Could you\r\n compute that while computing something else? If you can't find away around it, then you can optimize\r\n the loop. This is simple; move stuff out. In the end, this will require not only ingenuity but\r\n also an understanding of the expense of each kind of statement and expression. Here are some suggestions:<br />\r\n <br />\r\n • Remove floating point operations.<br />\r\n • Don't allocate new memory blocks unnecessarily.<br />\r\n • Fold constants together.<br />\r\n • Move I/O into a buffer.<br />\r\n • Try not to divide.<br />\r\n • Try not to do expensive typecasts.<br />\r\n • Move a pointer rather than recomputing indices.<br />\r\n <br />\r\n The cost of each of these operations depends on your specific system. On some systems compilers\r\n and hardware do these things for you. Clear, efficient code is better than code that requires an understanding\r\n of a particular platform.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681394, 'theory', 1, 36, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:24:"7. How to Optimize Loops";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (38, '8. How to Deal with I-O Expense', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Deal with I/O Expense</h1>\r\n For a lot of problems, processors are fast compared to the cost of communicating with a hardware\r\n device. This cost is usually abbreviated I/O, and can include network cost, disk I/O, database\r\n queries, file I/O, and other use of some hardware not very close to the processor. Therefore building\r\n a fast system is often more a question of improving I/O than improving the code in some tight\r\n loop, or even improving an algorithm.<br />\r\n <br />\r\n There are two very fundamental techniques to improving I/O: caching and representation. Caching\r\n is avoiding I/O (generally avoiding the reading of some abstract value) by storing a copy of that\r\n value locally so no I/O is performed to get the value. The first key to caching is to make it crystal\r\n clear which data is the master and which are copies. There is only one master---period. Caching\r\n brings with it the danger that the copy is sometimes can't reflect changes to the master instantaneously.\r\n Representation is the approach of making I/O cheaper by representing data more efficiently. This\r\n is often in tension with other demands, like human readability and portability.<br />\r\n <br />\r\n Representations can often be improved by a factor of two or three from their first implementation.\r\n Techniques for doing this include using a binary representation instead of one that is human readable,\r\n transmitting a dictionary of symbols along with the data so that long symbols don't have to\r\n be encoded, and, at the extreme, things like Huffman encoding.<br />\r\n <br />\r\n A third technique that is sometimes possible is to improve the locality of reference by pushing the\r\n computation closer to the data. For instance, if you are reading some data from a database and\r\n computing something simple from it, such as a summation, try to get the database server to do it\r\n for you. This is highly dependent on the kind of system you're working with, but you should explore\r\n it.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681441, 'theory', 1, 37, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:31:"8. How to Deal with I-O Expense";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (39, '9. How to Manage Memory', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Manage Memory</h1>\r\n Memory is a precious resource that you can't afford to run out of. You can ignore it for a while but\r\n eventually you will have to decide how to manage memory.<br />\r\n <br />\r\n Space that needs to persist beyond the scope of a single subroutine is often called heap allocated.\r\n A chunk of memory is useless, hence garbage, when nothing refers to it. Depending on the system\r\n you use, you may have to explicitly deallocate memory yourself when it is about to become\r\n garbage. More often you may be able to use a system that provides a garbage collector. A garbage\r\n collector notices garbage and frees its space without any action required by the programmer.\r\n Garbage collection is wonderful: it lessens errors and increases code brevity and concision\r\n cheaply. Use it when you can.<br />\r\n <br />\r\n But even with garbage collection, you can fill up all memory with garbage. A classic mistake is to\r\n use a hash table as a cache and forget to remove the references in the hash table. Since the reference\r\n remains, the referent is noncollectable but useless. This is called a memory leak. You should\r\n look for and fix memory leaks early. If you have long running systems memory may never be exhausted\r\n in testing but will be exhausted by the user.<br />\r\n <br />\r\n The creation of new objects is moderately expensive on any system. Memory allocated directly in\r\n the local variables of a subroutine, however, is usually cheap because the policy for freeing it can\r\n be very simple. You should avoid unnecessary object creation.<br />\r\n <br />\r\n An important case occurs when you can define an upper bound on the number of objects you will\r\n need at one time. If these objects all take up the same amount of memory, you may be able to allocate\r\n a single block of memory, or a buffer, to hold them all. The objects you need can be allocated\r\n and released inside this buffer in a set rotation pattern, so it is sometimes called a ring buffer. This\r\n is usually faster than heap allocation.<br />\r\n <br />\r\n Sometimes you have to explicitly free allocated space so it can be reallocated rather than rely on\r\n garbage collection. Then you must apply careful intelligence to each chunk of allocated memory\r\n and design a way for it to be deallocated at the appropriate time. The method may differ for each\r\n kind of object you create. You must make sure that every execution of a memory allocating operation\r\n is matched by a memory deallocating operation eventually. This is so difficult that programmers\r\n often simply implement a rudimentary form or garbage collection, such as reference counting,\r\n to do this for them.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681483, 'theory', 1, 38, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:23:"9. How to Manage Memory";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (40, '10. How to Deal with Intermittent Bugs', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Deal with Intermittent Bugs</h1>\r\n The intermittent bug is a cousin of the 50-foot-invisible-scorpion-from-outer-space kind of bug.\r\n This nightmare occurs so rarely that it is hard to observe, yet often enough that it can't be ignored.\r\n You can't debug it because you can't find it.<br />\r\n <br />\r\n Although after eight hours you will start to doubt it, the intermittent bug has to obey the same laws\r\n of logic everything else does. What makes it hard is that it occurs only under unknown conditions.\r\n Try to record the circumstances under which the bug does occur, so that you can guess at what the\r\n variability really is. The condition may be related to data values, such as ‘This only happens when\r\n we enter Wyoming as a value.’ If that is not the source of variability, the next suspect should be\r\n improperly synchronized concurrency.<br />\r\n <br />\r\n Try, try, try to reproduce the bug in a controlled way. If you can't reproduce it, set a trap for it by\r\n building a logging system, a special one if you have to, that can log what you guess you need\r\n when it really does occur. Resign yourself to that if the bug only occurs in production and not at\r\n your whim, this is may be a long process. The hints that you get from the log may not provide the\r\n solution but may give you enough information to improve the logging. The improved logging system\r\n may take a long time to be put into production. Then, you have to wait for the bug to reoccur\r\n to get more information. This cycle can go on for some time.<br />\r\n <br />\r\n The stupidest intermittent bug I ever created was in a multi-threaded implementation of a functional\r\n programming language for a class project. I had very carefully insured correct concurrent\r\n evaluation of the functional program, good utilization of all the CPUs available (eight, in this\r\n case). I simply forgot to synchronize the garbage collector. The system could run a long time, often\r\n finishing whatever task I began, before anything noticeable went wrong. I'm ashamed to admit\r\n I had begun to question the hardware before my mistake dawned on me.<br />\r\n <br />\r\n At work we recently had an intermittent bug that took us several weeks to find. We have multithreaded\r\n application servers in Java™ behind Apache™ web servers. To maintain fast page turns,\r\n we do all I/O in small set of four separate threads that are different than the page-turning threads.\r\n Every once in a while these would apparently get ‘stuck’ and cease doing anything useful, so far\r\n as our logging allowed us to tell, for hours. Since we had four threads, this was not in itself a giant\r\n problem---unless all four got stuck. Then the queues emptied by these threads would quickly fill\r\n up all available memory and crash our server. It took us about a week to figure this much out, and\r\n we still didn't know what caused it, when it would happen, or even what the threads where doing\r\n when they got ‘stuck’.<br />\r\n <br />\r\n This illustrates some risk associated with third-party software. We were using a licensed piece of\r\n code that removed HTML tags from text. Due to its place of origin we affectionately referred to\r\n this as ‘the French stripper.’ Although we had the source code (thank goodness!) we had not studied\r\n it carefully until by turning up the logging on our servers we finally realized that the email\r\n threads were getting stuck in the French stripper.<br />\r\n <br />\r\n The stripper performed well except on some long and unusual kinds of texts. On these texts, the\r\n code was quadratic or worse. This means that the processing time was proportional to the square\r\n of the length of the text. Had these texts occurred commonly, we would have found the bug right\r\n away. If they had never occurred at all, we would never have had a problem. As it happens, it took\r\n us weeks to finally understand and resolve the problem.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681628, 'theory', 1, 39, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:38:"10. How to Deal with Intermittent Bugs";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (41, '11. How to Learn Design Skills', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Learn Design Skills</h1>\r\n To learn how to design software, study the action of a mentor by being physically present when\r\n they are designing. Then study well-written pieces of software. After that, you can read some\r\n books on the latest design techniques.<br />\r\n <br />\r\n Then you must do it yourself. Start with a small project. When you are finally done, consider how\r\n the design failed or succeeded and how you diverged from your original conception. They move\r\n on to larger projects, hopefully in conjunction with other people. Design is a matter of judgment\r\n that takes years to acquire. A smart programmer can learn the basics adequately in two months and\r\n can improve from there.<br />\r\n <br />\r\n It is natural and helpful to develop your own style, but remember that design is an art, not a science.\r\n People who write books on the subject have a vested interest in making it seem scientific.<br />\r\n Don't become dogmatic about particular design styles.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681748, 'theory', 1, 40, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:30:"11. How to Learn Design Skills";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (42, '12. How to Conduct Experiments', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Conduct Experiments</h1>\r\n The late, great Edsger Dijkstra has eloquently explained that Computer Science is not an experimental\r\n science[ExpCS] and doesn't depend on electronic computers. As he puts it referring to the\r\n 1960s[Knife],<br />\r\n <br />\r\n ...the harm was done: the topic became known as ‘computer science’---which,\r\n actually, is like referring to surgery as ‘knife science’ --- and it was firmly implanted\r\n in people's minds that computing science is about machines and their peripheral\r\n equipment.<br />\r\n <br />\r\n Programming ought not to be an experimental science, but most working programmers do not\r\n have the luxury of engaging in what Dijkstra means by computing science. We must work in the\r\n realm of experimentation, just as some, but not all, physicists do. If thirty years from now programming\r\n can be performed without experimentation, it will be a great accomplishment of Computer\r\n Science.<br />\r\n <br />\r\n The kinds of experiments you will have to perform include:<br />\r\n <br />\r\n • Testing systems with small examples to verify that they conform to the documentation or to\r\n understand their response when there is no documentation,<br />\r\n • Testing small code changes to see if they actually fix a bug,<br />\r\n • Measuring the performance of a system under two different conditions due to imperfect\r\n knowledge of there performance characteristics,<br />\r\n • Checking the integrity of data, and<br />\r\n • Collecting statistics that may hint at the solution to difficult or hard-to-repeat bugs.<br />\r\n <br />\r\n I don't think in this essay I can explain the design of experiments; you will have to study and practice.\r\n However, I can offer two bits of advice.\r\n First, try to be very clear about your hypothesis, or the assertion that you are trying to test. It also\r\n helps to write the hypothesis down, especially if you find yourself confused or are working with\r\n others.<br />\r\n <br />\r\n You will often find yourself having to design a series of experiments, each of which is based on\r\n the knowledge gained from the last experiment. Therefore, you should design your experiments to\r\n provide the most information possible. Unfortunately, this is in tension with keeping each experiment\r\n simple---you will have to develop this judgment through experience.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681780, 'theory', 1, 41, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:30:"12. How to Conduct Experiments";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (43, '13. Why Estimation is Important', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Why Estimation is Important</h1>\r\n To get a working software system in active use as quickly as possible requires not only planning\r\n the development, but also planning the documentation, deployment, marketing. In a commercial\r\n project it also requires sales and finance. Without predictability of the development time, it is impossible\r\n to plan these effectively.<br />\r\n <br />\r\n Good estimation provides predictability. Managers love it, as well they should. The fact that it is\r\n impossible, both theoretically and practically, to predict accurately how long it will take to develop\r\n software is often lost on managers. We are asked to do this impossible thing all the time,\r\n and we must face up to it honestly. However, it would be dishonest not to admit the impossibility\r\n of this task, and when necessary, explain it. There is a lot of room for miscommunication about estimates,\r\n as people have a startling tendency to think wishfully that the sentence:<br />\r\n <br />\r\n I estimate that, if I really understand the problem, it is about 50% likely that we\r\n will be done in five weeks (if no one bothers us during that time).<br />\r\n <br />\r\n really means:<br />\r\n <br />\r\n I promise to have it all done five weeks from now.<br />\r\n <br />\r\n This common interpretation problem requires that you explicitly discuss what the estimate means\r\n with your boss or customer as if they were a simpleton. Restate your assumptions, no matter how\r\n obvious they seem to you.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681844, 'theory', 1, 42, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:31:"13. Why Estimation is Important";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (44, '14. How to Estimate Programming Time', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Estimate Programming Time</h1>\r\n Estimation takes practice. It also takes labor. It takes so much labor it may be a good idea to estimate\r\n the time it will take to make the estimate, especially if you are asked to estimate something\r\n big.<br />\r\n <br />\r\n When asked to provide an estimate of something big, the most honest thing to do is to stall. Most\r\n engineers are enthusiastic and eager to please, and stalling certainly will displease the stalled. But\r\n an on-the-spot estimate probably won't be accurate and honest.<br />\r\n <br />\r\n While stalling, it may be possible to consider doing or prototyping the task. If political pressure\r\n permits, this is the most accurate way of producing the estimate, and it makes real progress.<br />\r\n <br />\r\n When not possible to take the time for some investigation, you should first establish the meaning\r\n of the estimate very clearly. Restate that meaning as the first and last part of your written estimate.\r\n Prepare a written estimate by deconstructing the task into progressively smaller subtasks until each\r\n small task is no more than a day; ideally at most in length. The most important thing is not to leave\r\n anything out. For instance, documentation, testing, time for planning, time for communicating\r\n with other groups, and vacation time are all very important. If you spend part of each day dealing\r\n with knuckleheads, put a line item for that in the estimate. This gives your boss visibility into what\r\n is using up your time at a minimum, and might get you more time.<br />\r\n <br />\r\n I know good engineers who pad estimates implicitly, but I recommend that you do not. One of the\r\n results of padding is trust in you may be depleted. For instance, an engineer might estimate three\r\n days for a task that she truly thinks will take one day. The engineer may plan to spend two days\r\n documenting it, or two days working on some other useful project. But it will be detectable that\r\n the task was done in only one day (if it turns out that way), and the appearance of slacking or overestimating\r\n is born. It's far better to give proper visibility into what you are actually doing. If documentation\r\n takes twice as long as coding and the estimate says so, tremendous advantage is gained\r\n by making this visible to the manager.<br />\r\n <br />\r\n Pad explicitly instead. If a task will probably take one day---but might take ten days if your approach\r\n doesn't work---note this somehow in the estimate if you can; if not, at least do an average\r\n weighted by your estimates of the probabilities. Any risk factor that you can identify and assign an\r\n estimate to should go into the schedule. One person is unlikely to be sick in any given week. But a\r\n large project with many engineers will have some sick time; likewise vacation time. And what is\r\n the probability of a mandatory company-wide training seminar? If it can be estimated, stick it in.\r\n There are of course, unknown unknowns, or unk-unks. Unk-unks by definition cannot be estimated\r\n individually. You can try to create a global line item for all unk-unks, or handle them in some\r\n other way that you communicate to your boss. You cannot, however, let your boss forget that they\r\n exist, and it is devilishly easy for an estimate to become a schedule without the unk-unks considered.\r\n <br />\r\n <br />\r\n In a team environment, you should try to have the people who will do the work do the estimate,\r\n and you should try to have team-wide consensus on estimates. People vary widely in skill, experience,\r\n preparedness, and confidence. Calamity strikes when a strong programmer estimates for herself\r\n and then weak programmers are held to this estimate. The act of having the whole team agree\r\n on a line-by-line basis to the estimate clarifies the team understanding, as well as allowing the opportunity\r\n for tactical reassignment of resources (for instance, shifting burden away from weaker\r\n team members to stronger).<br />\r\n <br />\r\n If there are big risks that cannot be evaluated, it is your duty to state so forcefully enough that your\r\n manager does not commit to them and then become embarrassed when the risk occurs. Hopefully\r\n in such a case whatever is needed will be done to decrease the risk.<br />\r\n <br />\r\n If you can convince your company to use Extreme Programming, you will only have to estimate\r\n relatively small things, and this is both more fun and more productive.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222681915, 'theory', 1, 43, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:36:"14. How to Estimate Programming Time";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (45, '15. How to Find Out Information', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Estimate Programming Time</h1>\r\n The nature of what you need to know determines how you should find it.<br />\r\n <br />\r\n If you need information about concrete things that are objective and easy to verify, for example\r\n the latest patch level of a software product, ask a large number of people politely by searching the\r\n internet for it or by posting on a discussion group. Don't search on the internet for anything that\r\n smacks of either opinion or subjective interpretation: the ratio of drivel to truth is too high.<br />\r\n <br />\r\n If you need general knowledge about something subjective the history of what people have\r\n thought about it, go to the library (the physical building in which books are stored). For example,\r\n to learn about math or mushrooms or mysticism, go to the library.<br />\r\n <br />\r\n If you need to know how to do something that is not trivial get two or three books on the subject\r\n and read them. You might learn how to do something trivial, like install a software package, from\r\n the Internet. You can even learn important things, like good programming technique, but you can\r\n easily spend more time searching and sorting the results and attempting to divine the authority of\r\n the results than it would take to read the pertinent part of a solid book.<br />\r\n <br />\r\n If you need information that no one else could be expected to know for example, ‘does this software\r\n that is brand new work on gigantic data sets?’, you must still search the internet and the library.\r\n After those options are completely exhausted, you may design an experiment to ascertain it.<br />\r\n <br />\r\n If you want an opinion or a value judgment that takes into account some unique circumstance, talk\r\n to an expert. For instance, if you want to know whether or not it is a good idea to build a modern\r\n database management system in LISP, you should talk to a LISP expert and a database expert.<br />\r\n <br />\r\n If you want to know how likely it is that a faster algorithm for a particular application exists that\r\n has not yet been published, talk to someone working in that field.<br />\r\n <br />\r\n If you want to make a personal decision that only you can make like whether or not you should\r\n start a business, try putting into writing a list of arguments for and against the idea. If that fails,\r\n consider divination. Suppose you have studied the idea from all angles, have done all your homework,\r\n and worked out all the consequences and pros and cons in your mind, and yet still remain\r\n indecisive. You now must follow your heart and tell your brain to shut up. The multitude of available\r\n divination techniques are very useful for determining your own semi-conscious desires, as\r\n they each present a complete ambiguous and random pattern that your own subconscious will assign\r\n meaning to.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682006, 'theory', 1, 44, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:31:"15. How to Find Out Information";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (46, '16. How to Utilize People as Information Sour...', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Utilize People as Information\r\n Sources</h1>\r\n Respect every person's time and balance it against your own. Asking someone a question accomplishes\r\n far more than just receiving the answer. The person learns about you, both by enjoying\r\n your presence and hearing the particular question. You learn about the person in the same way,\r\n and you may learn the answer you seek. This is usually far more important than your question.<br />\r\n <br />\r\n However, the value of this diminishes the more you do it. You are, after all, using the most precious\r\n commodity a person has: their time. The benefits of communication must be weighed\r\n against the costs. Furthermore, the particular costs and benefits derived differ from person to person.\r\n I strongly believe that an executive of 100 people should spend five minutes a month talking\r\n to each person in her organization, which would be about 5% of their time. But ten minutes might\r\n be too much, and five minutes is too much if they have one thousand employees. The amount of\r\n time you spend talking to each person in your organization depends on their role (more than their\r\n position). You should talk to your boss more than your boss's boss, but you should talk to your\r\n boss's boss a little. It may be uncomfortable, but I believe you have a duty to talk a little bit to all\r\n your superiors, each month, no matter what.<br />\r\n <br />\r\n The basic rule is that everyone benefits from talking to you a little bit, and the more they talk to\r\n you, the less benefit they derive. It is your job to provide them this benefit, and to get the benefit\r\n of communicating with them, keeping the benefit in balance with the time spent.<br />\r\n <br />\r\n It is important to respect your own time. If talking to someone, even if it will cost them time, will\r\n save you a great deal of time, then you should do it unless you think their time is more valuable\r\n than yours, to the tribe, by that factor.<br />\r\n <br />\r\n A strange example of this is the summer intern. A summer intern in a highly technical position\r\n can't be expected to accomplish too much; they can be expected to pester the hell out of everybody\r\n there. So why is this tolerated? Because the pestered are receiving something important from the\r\n intern. They get a chance to showoff a little. They get a chance to hear some new ideas, maybe;\r\n they get a chance to see things from a different perspective. They may also be trying to recruit the\r\n intern, but even if this is not the case there is much to gain.<br />\r\n <br />\r\n You should ask people for a little bit of their wisdom and judgment whenever you honestly believe\r\n they have something to say. This flatters them and you will learn something and teach them\r\n something. A good programmer does not often need the advice of a Vice President of Sales, but if\r\n you ever do, you be sure to ask for it. I once asked to listen in on a few sales calls to better understand\r\n the job of our sales staff. This took no more than 30 minutes but I think that small effort\r\n made an impression on the sales force.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682040, 'theory', 1, 45, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:53:"16. 2.4. How to Utilize People as Information Sources";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (47, '17. How to Document Wisely', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Document Wisely</h1>\r\n Life is too short to write crap nobody will read; if you write crap, nobody will read it. Therefore a\r\n little good documentation is best. Managers often don't understand this, because even bad documentation\r\n gives them a false sense of security that they are not dependent on their programmers. If\r\n someone absolutely insists that you write truly useless documentation, say ``yes'' and quietly begin\r\n looking for a better job.<br />\r\n <br />\r\n There's nothing quite as effective as putting an accurate estimate of the amount of time it will take\r\n to produce good documentation into an estimate to slacken the demand for documentation. The\r\n truth is cold and hard: documentation, like testing, can take many times longer than developing\r\n code.<br />\r\n <br />\r\n Writing good documentation is, first of all, good writing. I suggest you find books on writing,\r\n study them, and practice. But even if you are a lousy writer or have poor command of the language\r\n in which you must document, the Golden Rule is all you really need: ``Do unto others as\r\n you would have them do unto you.'' Take time to really think about who will be reading your documentation,\r\n what they need to get out of it, and how you can teach that to them. If you do that, you will be an above average documentation writer, and a good programmer.<br />\r\n <br />\r\n When it comes to actually documenting code itself, as opposed to producing documents that can\r\n actually be read by non-programmers, the best programmers I've ever known hold a universal sentiment:\r\n write self-explanatory code and only document code in the places that you cannot make it\r\n clear by writing the code itself. There are two good reasons for this. First, anyone who needs to\r\n see code-level documentation will in most cases be able to and prefer to read the code anyway.\r\n Admittedly, this seems easier to the experienced programmer than to the beginner. More importantly\r\n however, is that the code and the documentation cannot be inconsistent if there is no documentation.\r\n The source code can at worst be wrong and confusing. The documentation, if not written\r\n perfectly, can lie, and that is a thousand times worse.<br />\r\n <br />\r\n This does not make it easier on the responsible programmer. How does one write self-explanatory\r\n code? What does that even mean? It means:<br />\r\n <br />\r\n • Writing code knowing that someone will have to read it;<br />\r\n • Applying the golden rule;<br />\r\n • Choosing a solution that is straightforward, even if you could get by with another solution\r\n faster;<br />\r\n • Sacrificing small optimizations that obfuscate the code;<br />\r\n • Thinking about the reader and spending some of your precious time to make it easier on her;\r\n and<br />\r\n • Not ever using a function name like ``foo'',``bar'', or ``doIt''!\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682065, 'theory', 1, 46, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:27:"17. How to Document Wisely";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (48, '18. How to Work with Poor Code', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Work with Poor Code</h1>\r\n It is very common to have to work with poor quality code that someone else has written. Don't\r\n think too poorly of them, however, until you have walked in their shoes. They may have been\r\n asked very consciously to get something done quickly to meet schedule pressure. Regardless, in\r\n order to work with unclear code you must understand it. To understand it takes learning time, and\r\n that time will have to come out of some schedule, somewhere, and you must insist on it. To understand\r\n it, you will have to read the source code. You will probably have to experiment with it.<br />\r\n <br />\r\n This is a good time to document, even if it is only for yourself, because the act of trying to document\r\n the code will force you to consider angles you might not have considered, and the resulting\r\n document may be useful. While you're doing this, consider what it would take to rewrite some or\r\n all of the code. Would it actually save time to rewrite some of it? Could you trust it better if you\r\n rewrote it? Be careful of arrogance here. If you rewrite it, it will be easier for you to deal with, but\r\n will it really be easier for the next person who has to read it? If you rewrite it, what will the test\r\n burden be? Will the need to re-test it outweigh any benefits that might be gained?<br />\r\n <br />\r\n In any estimate that you make for work against code you didn't write, the quality of that code\r\n should affect your perception of the risk of problems and unk-unks.<br />\r\n <br />\r\n It is important to remember that abstraction and encapsulation, two of a programmer's best tools,are particularly applicable to lousy code. You may not be able to redesign a large block of code,\r\n but if you can add a certain amount of abstraction to it you can obtain some of the benefits of a\r\n good design without reworking the whole mess. In particular, you can try to wall off the parts that\r\n are particularly bad so that they may be redesigned independently.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682093, 'theory', 1, 47, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:30:"18. How to Work with Poor Code";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL); INSERT INTO `content` VALUES (49, '19. How to Use Source Code Control', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Use Source Code Control</h1>\r\n Source code control systems let you manage projects effectively. They're very useful for one person\r\n and essential for a group. They track all changes in different versions so that no code is ever\r\n lost and meaning can be assigned to changes. One can create throw-away and debugging code\r\n with confidence with a source code control system, since the code you modify is kept carefully\r\n separate from committed, official code that will be shared with the team or released.<br />\r\n <br />\r\n I was late to appreciate the benefits of source code control systems but now I wouldn't live without\r\n one even on a one-person project. Generally they are necessary when you have team working on\r\n the same code base. However, they have another great advantage: they encourage thinking about\r\n the code as a growing, organic system. Since each change is marked as a new revision with a new\r\n name or number, one begins to think of the software as a visibly progressive series of improvements.\r\n I think this is especially useful for beginners.<br />\r\n <br />\r\n A good technique for using a source code control system is to stay within a few days of being upto-\r\n date at all time. Code that can't be finished in a few days is checked in, but in a way that it is inactive\r\n and will not be called, or in a branch of its own, and therefore not create any problems for\r\n anybody else. Committing a mistake that slows down your teammates is a serious error; it is often\r\n taboo.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682222, 'theory', 1, 48, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:34:"19. How to Use Source Code Control";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (50, '20. How to Unit Test', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Unit Test</h1>\r\n Unit testing, the testing of an individual piece of coded functionality by the team that wrote it, is a\r\n part of coding, not something different from it. Part of designing the code is designing how it will\r\n be tested. You should write down a test plan, even if it is only one sentence. Sometimes the test\r\n will be simple: ``Does the button look good?'' Sometimes it will be complex: ``Did this matching\r\n algorithm return precisely the correct matches?''<br />\r\n <br />\r\n Use assertion checking and test drivers whenever possible. This not only catches bugs early, but is\r\n very useful later on and lets you eliminate mysteries that you would otherwise have to worry\r\n about.<br />\r\n <br />\r\n The Extreme Programming developers are writing extensively on unit testing effectively; I can do\r\n no better than to recommend their writings.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682250, 'theory', 1, 49, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:20:"20. How to Unit Test";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (51, '21. Take Breaks when Stumped', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Take Breaks when Stumped</h1>\r\n When stumped, take a break. I sometimes meditate for 15 minutes when stumped and the problem\r\n magically unravels when I come back to it. A night's sleep sometimes does the same thing on a\r\n larger scale. It's possible that temporarily switching to any other activity may work.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682295, 'theory', 1, 50, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:28:"21. Take Breaks when Stumped";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (52, '22. How to Recognize When to Go Home', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Recognize When to Go Home</h1>\r\n Computer programming is an activity that is also a culture. The unfortunate fact is that it is not a culture that values mental or physical health very much. For both cultural/historical reasons (the\r\n need to work at night on unloaded computers, for example) and because of overwhelming timeto-\r\n market pressure and the scarcity of programmers, computer programmers are traditionally overworked.\r\n I don't think you can trust all the stories you hear, but I think 60 hours a week is common,\r\n and 50 is pretty much a minimum. This means that often much more than that is required. This is\r\n serious problem for a good programmer, who is responsible not only for themselves but their\r\n teammates as well. You have to recognize when to go home, and sometimes when to suggest that\r\n other people go home. There can't be any fixed rules for solving this problem, anymore than there\r\n can be fixed rules for raising a child, for the same reason---every human being is different.<br />\r\n <br />\r\n Beyond 60 hours a week is an extraordinary effort for me, which I can apply for short periods of\r\n time (about one week), and that is sometimes expected of me. I don't know if it is fair to expect 60\r\n hours of work from a person; I don't even know if 40 is fair. I am sure, however, that it is stupid to\r\n work so much that you are getting little out of that extra hour you work. For me personally, that's\r\n any more than 60 hours a week. I personally think a programmer should exercise noblesse oblige\r\n and shoulder a heavy burden. However, it is not a programmer's duty to be a patsy. The sad fact is\r\n programmers are often asked to be patsies in order to put on a show for somebody, for example a\r\n manager trying to impress an executive. Programmers often succumb to this because they are eager\r\n to please and not very good at saying no. There are four defenses against this:<br />\r\n <br />\r\n • Communicate as much as possible with everyone in the company so that no one can mislead\r\n the executives about what is going on,<br />\r\n • Learn to estimate and schedule defensively and explicitly and give everyone visibility into\r\n what the schedule is and where it stands,<br />\r\n • Learn to say no, and say no as a team when necessary, and<br />\r\n • Quit if you have to.<br />\r\n <br />\r\n Most programmers are good programmers, and good programmers want to get a lot done. To do\r\n that, they have to manage their time effectively. There is a certain amount of mental inertia associated\r\n with getting warmed-up to a problem and deeply involved in it. Many programmers find they\r\n work best when they have long, uninterrupted blocks of time in which to get warmed-up and concentrate.\r\n However, people must sleep and perform other duties. Each person needs to find a way to\r\n satisfy both their human rhythm and their work rhythm. Each programmer needs to do whatever it\r\n takes to procure efficient work periods, such as reserving certain days in which you will attend\r\n only the most critical meetings.<br />\r\n <br />\r\n Since I have children, I try to spend evenings with them sometimes. The rhythm that works best\r\n for me is to work a very long day, sleep in the office or near the office (I have a long commute\r\n from home to work) then go home early enough the next day to spend time with my children before\r\n they go to bed. I am not comfortable with this, but it is the best compromise I have been able\r\n to work out. Go home if you have a contagious disease. You should go home if you are thinking\r\n suicidal thoughts. You should take a break or go home if you think homicidal thoughts for more\r\n than a few seconds. You should send someone home if they show serious mental malfunctioning\r\n or signs of mental illness beyond mild depression. If you are tempted to be dishonest or deceptive\r\n in a way that you normally are not due to fatigue, you should take a break. Don't use cocaine or\r\n amphetamines to combat fatigue. Don't abuse caffeine.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682309, 'theory', 1, 51, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:36:"22. How to Recognize When to Go Home";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (53, '23. How to Deal with Difficult People', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Deal with Difficult People</h1>\r\n You will probably have to deal with difficult people. You may even be a difficult person yourself.\r\n If you are the kind of person who has a lot of conflicts with coworkers and authority figures, you\r\n should cherish the independence this implies, but work on your interpersonal skills without sacrificing\r\n your intelligence or principles.<br />\r\n <br />\r\n This can be very disturbing to some programmers who have no experience in this sort of thing and\r\n whose previous life experience has taught them patterns of behavior that are not useful in the\r\n workplace. Difficult people are often inured to disagreement and they are less affected by social\r\n pressure to compromise than others. The key is to respect them appropriately, which is more than\r\n you will want to but not as much as they might want.<br />\r\n <br />\r\n Programmers have to work together as a team. When disagreement arises, it must be resolved\r\n somehow, it cannot be ducked for long. Difficult people are often extremely intelligent and have\r\n something very useful to say. It is critical that you listen and understand the difficult person without\r\n prejudice caused by the person. A failure to communicate is often the basis of disagreement\r\n but it can sometimes be removed with great patience. Try to keep this communication cool and\r\n cordial, and don't accept any baits for greater conflict that may be offered. After a reasonable period\r\n of trying to understand, make a decision.<br />\r\n <br />\r\n Don't let a bully force you to do something you don't agree with. If you are the leader, do what you\r\n think is best. Don't make a decision for any personal reasons, and be prepared to explain the reasons\r\n for your decision. If you are a teammate with a difficult person, don't let the leader's decision\r\n have any personal impact. If it doesn't go your way, do it the other way whole-heartedly.<br />\r\n <br />\r\n Difficult people do change and improve. I've seen it with my own eyes, but it is very rare. However,\r\n everyone has transitory ups and downs.<br />\r\n <br />\r\n One of the challenges that every programmer but especially leaders face is keeping the difficult\r\n person fully engaged. They are more prone to duck work and resist passively than others.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 3, 1222682322, 'theory', 1, 52, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:37:"23. How to Deal with Difficult People";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (54, 'Small self-assesment test', '', 0, 3, 1224024300, 'tests', 1, 53, 'b:0;', 'a:5:{s:5:"title";s:22:"Small programming test";s:7:"creator";s:16:"Professor eFront";s:9:"publisher";s:16:"Professor eFront";s:11:"contributor";s:16:"Professor eFront";s:4:"date";s:10:"2008/10/15";}', NULL, 1, '', NULL), (55, 'How to Know When to Apply Fancy Computer Science', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Know When to Apply Fancy Computer\r\n Science</h1>\r\n There is a body of knowledge about algorithms, data structures, mathematics, and other gee-whiz\r\n stuff that most programmers know about but rarely use. In practice, this wonderful stuff is too\r\n complicated and generally unnecessary. There is no point in improving an algorithm when most of\r\n your time is spent making inefficient database calls, for instance. An unfortunate amount of programming\r\n consists of getting systems to talk to each other and using very simple data structures to\r\n build a nice user interface.<br />\r\n <br />\r\n When is high technology the appropriate technology? When should you crack a book to get something\r\n other than a run-of-the-mill algorithm? It is sometimes useful to do this but it should be evaluated\r\n carefully.<br />\r\n <br />\r\n The three most important considerations for the potential computer science technique are:<br />\r\n <br />\r\n • Is it well encapsulated so that the risk to other systems is low and the overall increase in complexity\r\n and maintenance cost is low?<br />\r\n <br />\r\n • Is the benefit startling (for example, a factor of two in a mature system or a factor of ten in a\r\n new system)?<br />\r\n <br />\r\n • Will you be able to test and evaluate it effectively?<br />\r\n <br />\r\n If a well-isolated algorithm that uses a slightly fancy algorithm can decrease hardware cost or increase\r\n performance by a factor of two across an entire system, then it would be criminal not to\r\n consider it. One of the keys to arguing for such an approach is to show that the risk is really quite\r\n low, since the proposed technology has probably been well studied, the only issue is the risk of integration.\r\n Here a programmer's experience and judgment can truly synergize with the fancy technology\r\n to make integration easy.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222701030, 'theory', 1, 57, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:48:"How to Know When to Apply Fancy Computer Science";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (56, 'How to Talk to Non-Engineers', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Talk to Non-Engineers</h1>\r\n Engineers and programmers in particular are generally recognized by popular culture as being different\r\n from other people. This implies that other people are different from us. This is worth bearing\r\n in mind when communicating with non-engineers; you should always understand the audience.<br />\r\n <br />\r\n Non-engineers are smart, but not as grounded in creating technical things as we are. We make\r\n things. They sell things and handle things and count things and manage things, but they are not experts\r\n on making things. They are not as good at working together on teams as engineers are (there\r\n are no doubt exceptions.) Their social skills are generally as good as or better than engineers in non-team environments, but their work does not always demand that they practice the kind of intimate,\r\n precise communication and careful subdivisions of tasks that we do.<br />\r\n <br />\r\n Non-engineers may be too eager to please and they may be intimidated by you. Just like us, they\r\n may say ‘yes’ without really meaning it to please you or because they are a little scared of you,\r\n and then not stand behind their words.<br />\r\n <br />\r\n Non-programmers can understand technical things but they do not have the thing that is so hard\r\n even for us---technical judgment. They do understand how technology works, but they cannot understand\r\n why a certain approach would take three months and another one three days. (After all,\r\n programmers are anecdotally horrible at this kind of estimation as well.) This represents a great\r\n opportunity to synergize with them.<br />\r\n <br />\r\n When talking to your team you will, without thinking, use a sort of shorthand, an abbreviated language\r\n that is effective because you will have much shared experience about technology in general\r\n and your product in particular. It takes some effort not to use this shorthand with those that don't\r\n have that shared experience, especially when members of your own team are present. This vocabulary\r\n create a wall between you and those that do not share it, and, even worse, wastes their time.<br />\r\n <br />\r\n With your team, the basic assumptions and goals do not need to be restated often, and most conversation\r\n focuses on the details. With outsiders, it must be the other way around. They may not\r\n understand things you take for granted. Since you take them for granted and don't repeat them, you\r\n can leave a conversation with an outsider thinking that you understand each other when really\r\n there is a large misunderstanding. You should assume that you will miscommunicate and watch\r\n carefully to find this miscommunication. Try to get them to summarize or paraphrase what you are\r\n saying to make sure they understand. If you have the opportunity to meet with them often, spend a\r\n little bit of time asking if you you are communicating effectively, and how you can do it better. If\r\n there is a problem in communication, seek to alter your own practices before becoming frustrated\r\n with theirs.<br />\r\n <br />\r\n I love working with non-engineers. It provides great opportunities to learn and to teach. You can\r\n often lead by example, in terms of the clarity of your communication. Engineers are trained to\r\n bring order out of chaos, to bring clarity out of confusion, and non-engineers like this about us.\r\n Because we have technical judgment and can usually understand business issues, we can often\r\n find a simple solution to a problem.<br />\r\n <br />\r\n Often non-engineers propose solutions that they think will make it easier on us out of kindness and\r\n a desire to do the right thing, when in fact a much better overall solution exists which can only be\r\n seen by synergizing the outsiders view with your technical judgment. I personally like Extreme\r\n Programming because it addresses this inefficiency; by marrying the estimation quickly to the\r\n idea, it makes it easier to find the idea that is the best combination of cost and benefit.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222701139, 'theory', 1, 55, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:28:"How to Talk to Non-Engineers";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (57, 'How to Evaluate Interviewees', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Evaluate Interviewees</h1>\r\n Evaluating potential employees is not given the energy it deserves. A bad hire, like a bad marriage,\r\n is terrible. A significant portion of everyone's energy should be devoted to recruitment,\r\n though this is rarely done.<br />\r\n <br />\r\n There are different interviewing styles. Some are torturous, designed to put the candidate under a\r\n great deal of stress. This serves a very valuable purpose of possibly revealing character flaws and\r\n weaknesses under stress. Candidates are no more honest with interviewers than they are with\r\n themselves, and the human capacity for self-deception is astonishing.<br />\r\n <br />\r\n You should, at a minimum, give the candidate the equivalent of an oral examination on the technical\r\n skills for two hours. With practice, you will be able to quickly cover what they know and\r\n quickly retract from what they don't know to mark out the boundary. Interviewees will respect\r\n this. I have several times heard interviewees say that the quality of the examination was one of\r\n their motivations for choosing a company. Good people want to be hired for their skills, not where\r\n they worked last or what school they went to or some other inessential characteristic.<br />\r\n <br />\r\n In doing this, you should also evaluate their ability to learn, which is far more important than what\r\n they know. You should also watch for the whiff of brimstone that is given off by difficult people.\r\n You may be able to recognize it by comparing notes after the interview, but in the heat of the interview\r\n it is hard to recognize. How well people communicate and work with people is more important\r\n than being up on the latest programming language.<br />\r\n <br />\r\n A reader has had good luck using a ‘take-home’ test for interviewees. This has the advantage that\r\n can uncover the interviewee that can present themselves well but can't really code---and there are\r\n many such people. I personally have not tried this technique, but it sounds sensible.<br />\r\n <br />\r\n Finally, interviewing is also a process of selling. You should be selling your company or project to\r\n the candidate. However, you are talking to a programmer, so don't try to color the truth. Start off\r\n with the bad stuff, then finish strong with the good stuff.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700979, 'theory', 1, 58, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:28:"How to Evaluate Interviewees";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (58, 'How to Grow Professionally', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Grow Professionally</h1>\r\n Assume responsibility in excess of your authority. Play the role that you desire. Express appreciation\r\n for people's contribution to the success of the larger organization, as well as things as that\r\n help you personally.<br />\r\n <br />\r\n If you want to become a team leader, instigate the formation of consensus. If you want to become\r\n a manager, take responsibility for the schedule. You can usually do this comfortably while working\r\n with a leader or a manager, since this frees them up to take greater responsibility. If that is too\r\n much to try, do it a little at a time.<br />\r\n <br />\r\n Evaluate yourself. If you want to become a better programmer, ask someone you admire how you\r\n can become like them. You can also ask your boss, who will know less but have a greater impact\r\n on your career.<br />\r\n <br />\r\n Plan ways to learn new skills, both the trivial technical kind, like learning a new software system,\r\n and the hard social kind, like writing well, by integrating them into your work.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700901, 'theory', 1, 59, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:26:"How to Grow Professionally";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (59, 'How to Make a Buy vs. Build Decision', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Make a Buy vs. Build Decision</h1>\r\n An entrepreneurial company or project that is trying to accomplish something with software has to\r\n constantly make so-called buy vs. build decisions. This turn of phrase is unfortunate in two ways:<br />\r\n <br />\r\n it seems to ignore open-source and free software which is not necessarily bought. Even more importantly,\r\n it should perhaps be called an obtain and integrate vs. build here and integrate decision\r\n because the cost of integration must be considered. This requires a great combination of business,\r\n management, and engineering savvy.<br />\r\n <br />\r\n • How well do your needs match those for which it was designed?<br />\r\n • What portion of what you buy will you need?<br />\r\n • What is the cost of evaluating the integration?<br />\r\n • What is the cost of integration?<br />\r\n • What is the cost of evaluating the integration?<br />\r\n • Will buying increase or decrease long term maintenance costs?<br />\r\n • Will building it put you in a business position you don't want to be in?<br />\r\n <br />\r\n You should think twice before building something that is big enough to serve as the basis for an\r\n entire other business. Such ideas are often proposed by bright and optimistic people that will have\r\n a lot to contribute to your team. If their idea is compelling, you may wish to change your business\r\n plan; but do not invest in a solution bigger than your own project without conscious thought.<br />\r\n <br />\r\n After considering these questions, you should perhaps prepare two draft project plans, one for\r\n building and one for buying. This will force you to consider the integration costs. You should also consider the long term maintenance costs of both solutions. To estimate the integration costs, you\r\n will have to do a thorough evaluation of the software before you buy it. If you can't evaluate it,\r\n you will assume an unreasonable risk in buying it and you should decide against buying that particular\r\n product. If there are several buy decisions under consideration, some energy will have to be\r\n spent evaluating each.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700827, 'theory', 1, 61, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:36:"How to Make a Buy vs. Build Decision";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (60, 'How to Manage Software System Dependence', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Manage Software System Dependence</h1>\r\n Modern software systems tend to depend on a large number of components that may not be directly\r\n under your control. This increases productivity through synergy and reuse. However, each\r\n component brings with it some problems:<br />\r\n <br />\r\n • How will you fix bugs in the component?<br />\r\n <br />\r\n • Does the component restrict you to particular hardware or software systems?<br />\r\n <br />\r\n • What will you do if the component fails completely?<br />\r\n <br />\r\n It is always best to encapsulate the component in some way so that it is isolated and so that it can\r\n be swapped out. If the component proves to be completely unworkable, you may be able to get a\r\n different one, but you may have to write your own. Encapsulation is not portability, but it makes\r\n porting easier, which is almost as good.<br />\r\n <br />\r\n Having the source code for a component decreases the risk by a factor of four. With source code,\r\n you can evaluate it easier, debug it easier, find workarounds easier, and make fixes easier. If you\r\n make fixes, you should give them to the owner of the component and get the fixes incorporated\r\n into an official release; otherwise you will uncomfortably have to maintain an unofficial version .\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700632, 'theory', 1, 62, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:40:"How to Manage Software System Dependence";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (61, 'How to Decide if Software is Too Immature', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Decide if Software is Too Immature</h1>\r\n Using software other people wrote is one of the most effective ways to quickly build a solid system.\r\n It should not be discouraged, but the risks associated with it must be examined. One of the\r\n biggest risks is the period of bugginess and near inoperability that is often associated with software\r\n before it matures, through usage, into a usable product. Before you consider integrating with\r\n a software system, whether created in house or by a third party, it is very important to consider if it\r\n is really mature enough to be used. Here are ten questions you should ask yourself about it:<br />\r\n <br />\r\n 1. Is it vapor? (Promises are very immature).<br />\r\n <br />\r\n 2. Is there an accessible body of lore about the software?<br />\r\n <br />\r\n 3. Are you the first user?<br />\r\n <br />\r\n 4. Is there a strong incentive for continuation?<br />\r\n <br />\r\n 5. Has it had a maintenance effort?<br />\r\n <br />\r\n 6. Will it survive defection of the current maintainers?<br />\r\n <br />\r\n 7. Is there a seasoned alternative at least half as good?<br />\r\n <br />\r\n 8. Is it known to your tribe or company?<br />\r\n <br />\r\n 9. Is it desirable to your tribe or company?<br />\r\n <br />\r\n 10. Can you hire people to work on it even if it is bad?<br />\r\n <br />\r\n A little consideration of these criteria demonstrates the great value of well-established free software\r\n and open-source software in reducing risk to the entrepreneur.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700729, 'theory', 1, 60, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:41:"How to Decide if Software is Too Immature";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (62, 'How to Tradeoff Quality Against Development Time', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Tradeoff Quality Against Development\r\n Time</h1>\r\n Software development is always a compromise between what the project does and getting the\r\n project done. But you may be asked to tradeoff quality to speed the deployment of a project in a\r\n way that offends your engineering sensibilities or business sensibilities. For example, you may be\r\n asked to do something that is a poor software engineering practice and that will lead to a lot of\r\n maintenance problems.<br />\r\n <br />\r\n If this happens your first responsibility is to inform your team and to clearly explain the cost of the\r\n decrease in quality. After all, your understanding of it should be much better than your boss's understanding.\r\n Make it clear what is being lost and what is being gained, and at what cost the lost ground will be regained in the next cycle. In this, the visibility provided by a good project plan\r\n should be helpful. If the quality tradeoff affects the quality assurance effort, point that out (both to\r\n your boss and quality assurance people). If the quality tradeoff will lead to more bugs being reported\r\n after the quality assurance period, point that out.<br />\r\n <br />\r\n If she still insists you should try to isolate the shoddiness into particular components that you can\r\n plan to rewrite or improve in the next cycle. Explain this to your team so that they can plan for it.\r\n NinjaProgrammer at Slashdot sent in this gem:<br />\r\n <br />\r\n Remember that a good design will be resillient against poor code implementations.<br />\r\n If good interfaces and abstractions exist throughout the code, then the\r\n eventual rewrites will be far more painless. If it is hard to write clear code that is\r\n hard to fix, consider what is wrong with the core design that is causing this.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700451, 'theory', 1, 63, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:48:"How to Tradeoff Quality Against Development Time";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (63, 'How to Disagree Honestly and Get Away with It', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Disagree Honestly and Get Away\r\n with It</h1>\r\n Disagreement is a great opportunity to make a good decision, but it should be handled delicately.\r\n Hopefully you feel that you have expressed your thoughts adequately and been heard before the\r\n decision is made. In that case there is nothing more to say, and you should decide whether you\r\n will stand behind the decision even though you disagree with it. If you can support this decision\r\n even though you disagree, say so. This shows how valuable you are because you are independent\r\n and are not a yes-man, but respectful of the decision and a team player.<br />\r\n <br />\r\n Sometimes a decision that you disagree with will be made when the decision makers did not have\r\n the full benefit of you opinion. You should then evaluate whether to raise the issue on the basis of\r\n the benefit to the company or tribe. If it is a small mistake in your opinion, it may not be worth reconsidering.\r\n If it is a large mistake in you opinion, then of course you must present an argument.<br />\r\n <br />\r\n Usually, this is not a problem. In some stressful circumstances and with some personality types\r\n this can lead to things being taken personally. For instance, some very good programmers lack the\r\n confidence needed to challenge a decision even when they have good reason to believe it is wrong.\r\n In the worst of circumstances the decision maker is insecure and takes it as a personal challenge to\r\n their authority. It is best to remember that in such circumstances people react with the reptilian\r\n part of their brains. You should present your argument in private, and try to show how new knowledge\r\n changes the basis on which the decision was made.<br />\r\n <br />\r\n Whether the decision is reversed or not, you must remember that you will never be able to say ‘I\r\n told you so!’ since the alternate decision was never fully explored.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222700055, 'theory', 1, 64, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:45:"How to Disagree Honestly and Get Away with It";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (64, 'How to Communicate the Right Amount', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Communicate the Right Amount</h1>\r\n Carefully consider the cost of a meeting; it costs its duration multiplied by the number of participants. Meetings are sometimes necessary, but smaller is usually better. The quality of communication\r\n in small meetings is better, and less time overall is wasted. If any one person is bored at a\r\n meeting, take this as a sign that the meeting should be smaller.<br />\r\n <br />\r\n Everything possible should be done to encourage informal communication. More useful work is\r\n done during lunches with colleagues than during any other time. It is a shame that more companies\r\n do not recognize nor support this fact.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222699559, 'theory', 1, 65, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:35:"How to Communicate the Right Amount";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (65, '12. How to Manage Consultants', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Manage Consultants</h1>\r\n Use consultants, but don't rely on them. They are wonderful people and deserve a great deal of respect.\r\n Since they get to see a lot of different projects, they often know more about specific technologies\r\n and even programming techniques than you will. The best way to use them is as educators\r\n in-house that can teach by example.<br />\r\n <br />\r\n However, they usually cannot become part of the team in the same sense that regular employees\r\n are, if only because you may not have enough time to learn their strengths and weaknesses. Their\r\n financial commitment is much lower. They can move more easily. They may have less to gain if\r\n the company does well. Some will be good, some will be average, and some will be bad, but hopefully\r\n your selection of consultants will not be as careful as your selection of employees, so you\r\n will get more bad ones.<br />\r\n <br />\r\n If consultants are going to write code, you must review it carefully as you go along. You cannot\r\n get to the end of the a project with the risk of a large block of code that has not been reviewed.\r\n This is true of all team members, really, but you will usually have more knowledge of the team\r\n members closer to you.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222699469, 'theory', 1, 66, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:29:"12. How to Manage Consultants";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (66, '11. How to Manage Third-Party Software Risks', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Manage Third-Party Software Risks</h1>\r\n A project often depends on software produced by organizations that it does not control. There are\r\n great risks associated with third party software that must be recognized by everyone involved.\r\n Never, ever, rest any hopes on vapor. Vapor is any alleged software that has been promised but is\r\n not yet available. This is the surest way to go out of business. It is unwise to be merely skeptical of\r\n a software company's promise to release a certain product with a certain feature at a certain date; it\r\n is far wiser to ignore it completely and forget you ever heard it. Never let it be written down in any\r\n documents used by your company.<br />\r\n <br />\r\n If third-party software is not vapor, it is still risky, but at least it is a risk that can be tackled. If you\r\n are considering using third-party software, you should devote energy early on to evaluating it.People might not like to hear that it will take two weeks or two months to evaluate each of three\r\n products for suitability, but it has to be done as early as possible. The cost of integrating cannot be\r\n accurately estimated without a proper evaluation.<br />\r\n <br />\r\n Understanding the suitability of existing third party software for a particular purpose is very tribal\r\n knowledge. It is very subjective and generally resides in experts. You can save a lot of time if you\r\n can find those experts. Often times a project will depend on a third-party software system so completely\r\n that if the integration fails the project will fail. Express risks like that clearly in writing in\r\n the schedule. Try to have a contingency plan, such as another system that can be used or the ability\r\n to write the functionality yourself if the risk can't be removed early. Never let a schedule depend\r\n on vapor.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222699347, 'theory', 1, 67, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:44:"11. How to Manage Third-Party Software Risks";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (67, '10. How to Manage Development Time', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Manage Development Time</h1>\r\n To manage development time, maintain a concise and up-to-date project plan. A project plan is an\r\n estimate, a schedule, a set of milestones for marking progress, and an assignment of your team or\r\n your own time to each task on the estimate. It should also include other things you have to remember\r\n to do, such as meeting with the quality assurance people, preparing documentation, or ordering\r\n equipment. If you are on a team, the project plan should be a consensual agreement, both at the\r\n start and as you go.<br />\r\n <br />\r\n The project plan exists to help make decisions, not to show how organized you are. If the project\r\n plan is either too long or not up-to-date, it will be useless for making decisions. In reality, these\r\n decisions are about individual persons. The plan and your judgment let you decide if you should\r\n shift tasks from one person to another. The milestones mark your progress. If you use a fancy\r\n project planning tool, do not be seduced into creating a Big Design Up Front (BDUF) for the\r\n project, but use it maintain concision and up-to-dateness.<br />\r\n <br />\r\n If you miss a milestone, you should take immediate action such as informing your boss that the\r\n scheduled completion of that project has slipped by that amount. The estimate and schedule could\r\n never have been perfect to begin with; this creates the illusion that you might be able to make up\r\n the days you missed in the latter part of the project. You might. But it is just as likely that you\r\n have underestimated that part as that you have overestimated it. Therefore the scheduled completion\r\n of the project has already slipped, whether you like it or not.<br />\r\n <br />\r\n Make sure your plan includes time for: internal team meetings, demos, documentation, scheduled\r\n periodic activities, integration testing, dealing with outsiders, sickness, vacations, maintenance of\r\n existing products, and maintenance of the development environment. The project plan can serve as a way to give outsiders or your boss a view into what you or your team is doing. For this reason it\r\n should be short and up-to-date.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222699272, 'theory', 1, 69, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:34:"10. How to Manage Development Time";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (68, '8. How to Do Integration Testing', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Do Integration Testing</h1>\r\n Integration testing is the testing of the integration of various components that have been unit\r\n tested. Integration is expensive and it comes out in the testing. You must include time for this in\r\n your estimates and your schedule.<br />\r\n <br />\r\n Ideally you should organize a project so that there is not a phase at the end where integration must\r\n explicitly take place. It is far better to gradually integrate things as they are completed over the\r\n course of the project. If it is unavoidable estimate it carefully.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222698651, 'theory', 1, 70, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:32:"8. How to Do Integration Testing";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (69, '9. Communication Languages', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Communication Languages</h1>\r\n There are some languages, that is, formally defined syntactic systems, that are not programming\r\n languages but communication languages---they are designed specifically to facillitate communication through standardization. In 2003 the most important of these are UML, XML, and SQL. You\r\n should have some familiarity with all of these so that you can communicate well and decide when\r\n to use them.<br />\r\n <br />\r\n UML is a rich formal system for making drawings that describe designs. It's beauty lines in that is\r\n both visual and formal, capable of conveying a great deal of information if both the author and the\r\n audience know UML. You need to know about it because designs are sometimes communicated in\r\n it. There are very helpful tools for making UML drawings that look very professional. In a lot of\r\n cases UML is too formal, and I find myself using a simpler boxes and arrows style for design\r\n drawings. But I'm fairly sure UML is at least as good for you as studying Latin.<br />\r\n <br />\r\n XML is a standard for defining new standards. It is not a solution to data interchange problems,\r\n though you sometimes see it presented as if it was. Rather, it is a welcome automation of the most\r\n boring part of data interchange, namely, structuring the representation into a linear sequence and\r\n parsing back into a structure. It provides some nice type- and correctness-checking, though again\r\n only a fraction of what you are likely to need in practice.<br />\r\n <br />\r\n SQL is a very powerful and rich data query and manipulation language that is not quite a programming\r\n language. It has many variations, typically quite product-dependent, which are less important\r\n than the standardized core. SQL is the lingua franca of relational databases. You may or may not\r\n work in any field that can benefit from an understanding of relational databases, but you should\r\n have a basic understanding of them and they syntax and meaning of SQL.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222699001, 'theory', 1, 68, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:26:"9. Communication Languages";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL); INSERT INTO `content` VALUES (70, '7. Learn to Type', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Learn to Type</h1>\r\n Learn to touch-type. This is an intermediate skill because writing code is so hard that the speed at\r\n which you can type is irrelevant and can't put much of a dent in the time it takes to write code, no\r\n matter how good you are. However, by the time you are an intermediate programmer you will\r\n probably spend a lot of time writing natural language to your colleagues and others. This is a fun\r\n test of your commitment; it takes dedicated time that is not much fun to learn something like that.\r\n Legend has it that when Michael Tiemann2 was at MCC people would stand outside his door to\r\n listen to the hum generated by his keystrokes which were so rapid as to be indistinguishable.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222698543, 'theory', 1, 72, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:16:"7. Learn to Type";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (72, '6. How to Learn New Skills', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Learn New Skills</h1>\r\n Learning new skills, especially non-technical ones, is the greatest fun of all. Most companies\r\n would have better morale if they understood how much this motivates programmers.<br />\r\n <br />\r\n Humans learn by doing. Book-reading and class-taking are useful. But could you have any respect\r\n for a programmer who had never written a program? To learn any skill, you have to put yourself in\r\n a forgiving position where you can exercise that skill. When learning a new programming language,\r\n try to do a small project it in before you have to do a large project. When learning to manage\r\n a software project, try to manage a small one first.<br />\r\n <br />\r\n A good mentor is no replacement for doing things yourself, but is a lot better than a book. What\r\n can you offer a potential mentor in exchange for their knowledge? At a minimum, you should offer\r\n to study hard so their time won't be wasted.<br />\r\n <br />\r\n Try to get your boss to let you have formal training, but understand that it often not much better\r\n than the same amount of time spent simply playing with the new skill you want to learn. It is,\r\n however, easier to ask for training than playtime in our imperfect world, even though a lot of formal\r\n training is just sleeping through lectures waiting for the dinner party.<br />\r\n <br />\r\n If you lead people, understand how they learn and assist them by assigning them projects that are\r\n the right size and that exercise skills they are interested in. Don't forget that the most important\r\n skills for a programmer are not the technical ones. Give your people a chance to play and practice\r\n courage, honesty, and communication.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222698397, 'theory', 1, 73, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:26:"6. How to Learn New Skills";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (73, '5. How to Balance Brevity and Abstraction', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Balance Brevity and Abstraction</h1>\r\n Abstraction is key to programming. You should carefully choose how abstract you need to be. Beginning\r\n programmers in their enthusiasm often create more abstraction than is really useful. One\r\n sign of this is if you create classes that don't really contain any code and don't really do anything\r\n except serve to abstract something. The attraction of this is understandable but the value of code\r\n brevity must be measured against the value of abstraction. Occasionally, one sees a mistake made\r\n by enthusiastic idealists: at the start of the project a lot of classes are defined that seem wonderfully\r\n abstract and one may speculate that they will handle every eventuality that may arise. As the\r\n project progresses and fatigue sets in, the code itself becomes messy. Function bodies become\r\n longer than they should be. The empty classes are a burden to document that is ignored when under\r\n pressure. The final result would have been better if the energy spent on abstraction had been\r\n spent on keeping things short and simple. This is a form of speculative programming. I strongly\r\n recommend the article ``Succinctness is Power'' by Paul Graham[PGSite].<br />\r\n <br />\r\n There is a certain dogma associated with useful techniques such as information hiding and object\r\n oriented programming that are sometimes taken too far. These techniques let one code abstractly\r\n and anticipate change. I personally think, however, that you should not produce much speculative\r\n code. For example, it is an accepted style to hide an integer variable on an object behind mutators\r\n and accessors, so that the variable itself is not exposed, only the little interface to it. This does allow\r\n the implementation of that variable to be changed without affecting the calling code, and is\r\n perhaps appropriate to a library writer who must publish a very stable API. But I don't think the\r\n benefit of this outweighs the cost of the wordiness of it when my team owns the calling code and\r\n hence can recode the caller as easily as the called. Four or five extra lines of code is a heavy price\r\n to pay for this speculative benefit.<br />\r\n <br />\r\n Portability poses a similar problem. Should code be portable to a different computer, compiler,\r\n software system or platform, or simply easily ported? I think a non-portable, shortand-\r\n easily-ported piece of code is better than a long portable one. It is relatively easy and certainly\r\n a good idea to confine non-portable code to designated areas, such as a class that makes database\r\n queries that are specific to a given DBMS.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222697772, 'theory', 1, 74, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:41:"5. How to Balance Brevity and Abstraction";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (74, '4. How to Stress Test', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Stress Test</h1>\r\n Stress testing is fun. At first it appears that the purpose of stress testing is to find out if the system\r\n works under a load. In reality, it is common that the system does work under a load but fails to\r\n work in some way when the load is heavy enough. I call this hitting the wall or bonking. There\r\n may be some exceptions, but there is almost always a ‘wall’. The purpose of stress testing is to\r\n figure out where the wall is, and then figure out how to move the wall further out.<br />\r\n <br />\r\n A plan for stress testing should be developed early in the project, because it often helps to clarify\r\n exactly what is expected. Is two seconds for a web page request a miserable failure or a smashing\r\n success? Is 500 concurrent users enough? That, of course, depends, but one must know the answer\r\n when designing the system that answers the request. The stress test needs to model reality well\r\n enough to be useful. It isn't really possible to simulate 500 erratic and unpredictable humans using\r\n a system concurrently very easily, but one can at least create 500 simulations and try to model\r\n some part of what they might do.<br />\r\n <br />\r\n In stress testing, start out with a light load and load the system along some dimension---such as input\r\n rate or input size---until you hit the wall. If the wall is too close to satisfy your needs, figure\r\n out which resource is the bottleneck (there is usually a dominant one.) Is it memory, processor, Input/\r\n Output, network bandwidth, or data contention? Then figure out how you can move the wall.<br />\r\n <br />\r\n Note that moving the wall, that is, increasing the maximum load the system can handle, might not\r\n help or might actually hurt the performance of a lightly loaded system. Usually performance under\r\n heavy load is more important than performance under a light load.<br />\r\n <br />\r\n You may have to get visibility into several different dimensions to build up a mental model of it;\r\n no single technique is sufficient. For instance, logging often gives a good idea of the wall-clock\r\n time between two events in the system, but unless carefully constructed, doesn't give visibility into\r\n memory utilization or even data structure size. Similarly, in a modern system, a number of computers\r\n and many software systems may be cooperating. Particularly when you are hitting the wall\r\n (that is, the performance is non-linear in the size of the input) these other software systems may be\r\n a bottleneck. Visibility into these systems, even if only measuring the processor load on all participating\r\n machines, can be very helpful.<br />\r\n <br />\r\n Knowing where the wall is is essential not only to moving the wall, but also to providing predictability\r\n so that the business can be managed effectively.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222697575, 'theory', 1, 77, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:21:"4. How to Stress Test";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (75, '1. How to Stay Motivated', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Stay Motivated</h1>\r\n It is a wonderful and surprising fact that programmers are highly motivated by the desire to create\r\n artifacts that are beautiful, useful, or nifty. This desire is not unique to programmers nor universal\r\n but it is so strong and common among programmers that it separates them from others in other\r\n roles.<br />\r\n <br />\r\n This has practical and important consequences. If programmers are asked to do something that is\r\n not beautiful, useful, or nifty, they will have low morale. There's a lot of money to be made doing\r\n ugly, stupid, and boring stuff; but in the end, fun will make the most money for the company.<br />\r\n <br />\r\n Obviously, there are entire industries organized around motivational techniques some of which apply\r\n here. The things that are specific to programming that I can identify are:<br />\r\n <br />\r\n • Use the best language for the job.<br />\r\n • Look for opportunities to apply new techniques, languages, and technologies.<br />\r\n • Try to either learn or teach something, however small, in each project.<br />\r\n <br />\r\n Finally, if possible, measure the impact of your work in terms of something that will be personally\r\n motivating. For example, when fixing bugs, counting the number of bugs that I have fixed is not at\r\n all motivational to me, because it is independent of the number that may still exist, and is also affects\r\n the total value I'm adding to my company's customers in only the smallest possible way. Relating\r\n each bug to a happy customer, however, is personally motivating to me.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222692506, 'theory', 1, 0, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:24:"1. How to Stay Motivated";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (76, '2. How to be Widely Trusted', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to be Widely Trusted</h1>\r\n To be trusted you must be trustworthy. You must also be visible. If know one knows about you, no\r\n trust will be invested in you. With those close to you, such as your teammates, this should not be\r\n an issue. You establish trust by being responsive and informative to those outside your department\r\n or team. Occasionally someone will abuse this trust, and ask for unreasonable favors. Don't be\r\n afraid of this, just explain what you would have to give up doing to perform the favor.<br />\r\n <br />\r\n Don't pretend to know something that you don't. With people that are not teammates, you may\r\n have to make a clear distinction between ``not knowing right off the top of my head'' and ``not being\r\n able to figure it out, ever.''\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222697057, 'theory', 1, 75, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:27:"2. How to be Widely Trusted";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (77, '3. How to Tradeoff Time vs. Space', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Tradeoff Time vs. Space</h1>\r\n You can be a good programmer without going to college, but you can't be a good intermediate\r\n programmer without knowing basic computational complexity theory. You don't need to know'``big O'' notation, but I personally think you should be able to understand the difference between\r\n ``constant-time'',``n log n'' and ``n squared''. You might be able to intuit how to tradeoff time\r\n against space without this knowledge, but in its absence you will not have a firm basis for communicating\r\n with your colleagues.<br />\r\n <br />\r\n In designing or understanding an algorithm, the amount of time it takes to run is sometimes a\r\n function of the size of the input. When that is true, we can say an algorithm's worst/expected/\r\n best-case running time is ``n log n'' if it is proportional to the size (represented by the variable\r\n n) times the logarithm of the size. The notation and way of speaking can be also be applied to\r\n the space taken up by a data structure.<br />\r\n <br />\r\n To me, computational complexity theory is beautiful and as profound as physics---and a little bit\r\n goes a long way!<br />\r\n <br />\r\n Time (processor cycles) and space (memory) can be traded off against each other. Engineering is\r\n about compromise, and this is a fine example. It is not always systematic. In general, however, one\r\n can save space by encoding things more tightly, at the expense of more computation time when\r\n you have to decode them. You can save time by caching, that is, spending space to store a local\r\n copy of something, at the expense of having to maintain the consistency of the cache. You can\r\n sometimes save time by maintaining more information in a data structure. This usually cost a\r\n small amount of space but may complicate the algorithm.<br />\r\n <br />\r\n Improving the space/time tradeoff can often change one or the other dramatically. However, before\r\n you work on this you should ask yourself if what you are improving is really the thing that\r\n needs the most improvement. It's fun to work on an algorithm, but you can't let that blind you to\r\n the cold hard fact that improving something that is not a problem will not make any noticeable difference\r\n and will create a test burden.<br />\r\n <br />\r\n Memory on modern computers appears cheap, because unlike processor time, you can't see it being\r\n used until you hit the wall; but then failure is catastrophic. There are also other hidden costs to\r\n using memory, such as your effect on other programs that must be resident, and the time to allocate\r\n and deallocate it. Consider this carefully before you trade away space to gain speed.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 4, 1222697392, 'theory', 1, 76, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:33:"3. How to Tradeoff Time vs. Space";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/29";}', NULL, 1, '', NULL), (78, 'A small programming test', '', 0, 4, 1227712919, 'tests', 1, 56, 'b:0;', 'a:5:{s:5:"title";s:24:"A small programming test";s:7:"creator";s:16:"Professor eFront";s:9:"publisher";s:16:"Professor eFront";s:11:"contributor";s:16:"Professor eFront";s:4:"date";s:10:"2008/11/26";}', NULL, 1, '', NULL), (79, 'How to Deal with Temporary Organizational Chaos', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Deal with Temporary Organizational\r\n Chaos</h1>\r\n There are often brief periods of great organizational chaos, such as layoffs, buyouts, ipos, firings,\r\n new hirings, and so on. These are unsettling to everyone, but perhaps a little less unsettling to the\r\n programmer whose personal self-esteem is founded in capacity rather than in position. Organizational\r\n chaos is a great opportunity for programmers to exercise their magic power. I've saved this\r\n for last because it is a deep tribal secret. If you are not a programmer, please stop reading now.<br />\r\n <br />\r\n Engineers have the power to create and sustain.<br />\r\n <br />\r\n Non-engineers can order people around but, in a typical software company, can create and sustain\r\n nothing without engineers, just as engineers typically cannot sell a product or manage a business\r\n effectively. This power is proof against almost all of the problems associated with temporary organizational\r\n mayhem. When you have it you should ignore the chaos completely and carry on as if\r\n nothing is happening. You may, of course, get fired, but if that happens you can probably get a\r\n new job because of the magic power. More commonly, some stressed-out person who does not\r\n have the magic power will come into your cube and tell you to do something stupid. If you are really\r\n sure that it is stupid, it is best to smile and nod until they go away and then carry on doing\r\n what you know is best for the company.<br />\r\n <br />\r\n If you are a leader, tell your people to do the same thing and tell them to ignore what anybody else\r\n tells them. This course of action is the best for you personally, and is the best for your company or\r\n project.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222772113, 'theory', 1, 80, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:47:"How to Deal with Temporary Organizational Chaos";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (80, 'How to Deal with Managerial Myths', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Deal with Managerial Myths</h1>\r\n The word myth sometimes means fiction. But it has a deeper connotation. It also means a story of\r\n religious significance that explains the universe and mankind's relationship to it. Managers tend to\r\n forget what they learned as programmers and believe in certain myths. It would be as rude and unsuccessful\r\n to try to convince them these myths are false as to try to disillusion a devoutly religious\r\n person of their beliefs. For that reason, you should recognize these beliefs as myths:<br />\r\n <br />\r\n • More documentation is always better. (They want it, but they don't want you to spend any time\r\n on it.)<br />\r\n • Programmers can be equated. (Programmers vary by an order of magnitude.)<br />\r\n • Resources can be added to a late project to speed it. (The cost of communication with the new\r\n persons is almost always more taxing than helpful.)<br />\r\n • It is possible to estimate software development reliably. (It is not even theoretically possible.)\r\n • Programmers' productivity can be measured in terms of some simple metric, like lines of code.\r\n (If succinctness is power, lines of code are bad, not good.)<br />\r\n <br />\r\n If you have an opportunity, you can try to explain these things, but don't feel bad if you have no\r\n success and don't damage your reputation by confronting these myths belligerently. Each of these\r\n myths reinforces the manager's idea that they have some actual control over what is going on. The\r\n truth is that managers facilitate if they are good, and impede if they are bad.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771914, 'theory', 1, 81, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:33:"How to Deal with Managerial Myths";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (81, 'How to Tell People Things They Do not Want to Hear', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Tell People Things They Don't Want\r\n to Hear</h1>\r\n You will often have to tell people things that will make them uncomfortable. Remember that you\r\n are doing this for a reason. Even if nothing can be done about the problem, you are telling them as\r\n early as possible so they will be well-informed.<br />\r\n <br />\r\n The best way to tell someone about a problem is to offer a solution at the same time. The second\r\n best way is to appeal to them for help with the problem. If there is a danger that you won't be believed,\r\n you should gather some support for your assertion.<br />\r\n <br />\r\n One of the most unpleasant and common things you will have to say is, ‘The schedule will have to\r\n slip.’ The conscientious programmer hates to say this, but must say it as early as possible. There is\r\n nothing worse than postponing action when a milestone slips, even if the only action is to inform\r\n everyone. In doing this, it is better to do it as a team, at least in spirit, if not physically. You will\r\n want your team's input on both where you stand and what can be done about it, and the team will\r\n have to face the consequences with you.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771683, 'theory', 1, 82, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:50:"How to Tell People Things They Do not Want to Hear";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (82, 'How to Communicate Well', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Communicate Well</h1>\r\n To communicate well, you have to recognize how hard it is. It is a skill unto itself. It is made\r\n harder by the fact that the persons with whom you have to communicate are flawed. They do not\r\n work hard at understanding you. They speak poorly and write poorly. They are often overworked\r\n or bored, and, at a minimum, somewhat focused on their own work rather than the larger issues\r\n you may be addressing. One of the advantages of taking classes and practicing writing, public\r\n speaking, and listening is that if you become good at it you can more readily see where problems\r\n lie and how to correct them.<br />\r\n <br />\r\n The programmer is a social animal whose survival depends on communication with her team. The\r\n advanced programmer is a social animal whose satisfaction depends on communication with people\r\n outside her team.<br />\r\n <br />\r\n The programmer brings order out of chaos. One interesting way to do this is to initiate a proposal\r\n of some kind outside the team. This can be done in a strawman or white-paper format or just verbally.\r\n This leadership has the tremendous advantage of setting the terms of the debate. It also exposes\r\n you to criticism, and worse, rejection and neglect. The advanced programmer must be prepared\r\n to accept this, because she has a unique power and therefore a unique responsibility. Entrepreneurs\r\n who are not programmers need programmers to provide leadership in some ways. Programmers\r\n are the part of the bridge between ideas and reality that rests on reality.<br />\r\n <br />\r\n I haven't mastered communicating well, but what I'm currently trying is what I think of as a fourpronged\r\n approach: After I have my ideas in order and am fully prepared, I try to speak verbally,\r\n hand people a white-paper (on real paper, as well as electronically) show them a demo, and then\r\n patiently repeat this process. I think a lot of times we are not patient enough in this kind of difficult\r\n communication. You should not be disheartened if your ideas are not immediately accepted. If\r\n you have invested energy in there preparation, no one will think poorly of you for it.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771517, 'theory', 1, 83, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:23:"How to Communicate Well";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (83, 'How to Grow a System', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Grow a System</h1>\r\n The seed of a tree contains the idea of the adult but does not fully realize the form and potency of\r\n the adult. The embryo grows. It becomes larger. It looks more like the adult and has more of the\r\n uses. Eventually it bears fruit. Later, it dies and its body feeds other organisms.<br />\r\n <br />\r\n We have the luxury of treating software like that. A bridge is not like that; there is never a baby\r\n bridge, but merely an unfinished bridge. Bridges are a lot simpler than software.<br />\r\n <br />\r\n It is good to think of software as growing, because it allows us to make useful progress before we\r\n have a perfect mental image. We can get feedback from users and use that to correct the growth.\r\n Pruning off weak limbs is healthful.<br />\r\n <br />\r\n The programmer must design a finished system that can be delivered and used. But the advanced\r\n programmer must do more. You must design a growth path that ends in the finished system. It is\r\n your job to take a germ of an idea and build a path that takes it as smoothly as possible into a useful\r\n artifact.<br />\r\n <br />\r\n To do this, you must visualize the end result and communicate it in a way that the engineering\r\n team can get excited about. But you must also communicate to them a path that goes from wherever\r\n they are now to where they want to be with no large leaps. The tree must stay alive the whole\r\n time; it cannot be dead at one point and resurrected later.<br />\r\n <br />\r\n This approach is captured in spiral development. Milestones that are never too far apart are used to\r\n mark progress along the path. In the ultra-competitive environment of business, it is best if the\r\n milestones can be released and make money as early as possible, even if they are far away from a\r\n well-designed endpoint. One of the programmer's jobs is to balance the immediate payoff against\r\n future payoff by wisely choosing a growth path expressed in milestones.<br />\r\n <br />\r\n The advanced programmer has the triple responsibility of growing software, teams, and persons.\r\n <br />\r\n <br />\r\n A reader, Rob Hafernik, sent in this comment on this section that I can do no better than to quote\r\n in full:<br />\r\n <br />\r\n I think you under-emphasize the importance here. It's not just systems, but algorithms,\r\n user interfaces, data models, and so on. It's absolutely vital as you work\r\n on a large system to have measurable progress toward intermediate goals. Nothing\r\n is as bad as the special horror of getting down to the end and discovering\r\n that the whole thing just isn't going to work (look at the recent debacle of the\r\n Voter News System). I would even go further and state it as a law of nature: no\r\n large, complex system can be implemented from scratch, it can only be evolved\r\n from a simple system to a complex system in a series of intentional steps.<br />\r\n <br />\r\n To which one can only reply Fiat lux!\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771318, 'theory', 1, 84, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:20:"How to Grow a System";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (84, 'How to Gather Support for a Project', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Gather Support for a Project</h1>\r\n To gather support for a project, create and communicate a vision that demonstrates real value to\r\n the organization as a whole. Attempt to let others share in your vision creation. This gives them a\r\n reason to support you and gives you the benefit of their ideas. Individually recruit key supporters\r\n for your project. Wherever possible, show, don't tell. If possible, construct a prototype or a\r\n mockup to demonstrate your ideas. A prototype is always powerful but in software it is far superior\r\n to any written description.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771178, 'theory', 1, 86, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:35:"How to Gather Support for a Project";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (85, 'How to Divide Problems', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Divide Problems</h1>\r\n It's fun to take a software project and divide it up into tasks that will be performed by individuals.\r\n This should be done early. Sometimes managers like to think that an estimate can be made without\r\n consideration of the individuals that will perform the work. This is impossible since the productivity\r\n of individuals varies so widely. Who has particular knowledge about a component also constantly\r\n changes and can have an order of magnitude effect on performance.<br />\r\n <br />\r\n Just as a composer considers the timbre of the instrument that will play a part or the coach of an\r\n athletic team considers the strengths of each player, the experienced team leader will not usually\r\n be able to separate the division of the project into tasks from the team members to which they will\r\n be assigned. This is part of the reason that a high-performing team should not be broken up.<br />\r\n <br />\r\n There is a certain danger in this given that people will become bored as they build upon their\r\n strengths and never improve their weaknesses or learn new skills. However, specialization is a\r\n very useful productivity tool when not overused.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222770997, 'theory', 1, 88, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:22:"How to Divide Problems";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (86, 'How to Handle Boring Tasks', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Handle Boring Tasks</h1>\r\n Sometimes it is not possible to avoid boring tasks that are critical to the success of the company or\r\n the project. These tasks can really hurt the morale of those that have to do them. The best technique\r\n for dealing with this is to invoke or promote Larry Wall's programmer's virtue of Laziness.\r\n Try to find some way to get the computer to do the task for you or to help your teammates do this.\r\n Working for a week on a program to do a task that will take a week to do by hand has the great advantage\r\n of being more educational and sometimes more repeatable.<br />\r\n <br />\r\n If all else fails, apologize to those who have to do the boring task, but under no circumstances allow\r\n them to do it alone. At a minimum assign a team of two to do the work and promote healthy\r\n teamwork to get the task done.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222771134, 'theory', 1, 85, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:26:"How to Handle Boring Tasks";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (87, 'How to Choose What to Work On', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Choose What to Work On</h1>\r\n You balance your personal needs against the needs of the team in choosing what aspect of a\r\n project to work on. You should do what you are best at, but try to find a way to stretch yourself\r\n not by taking on more work but by exercising a new skill. Leadership and communication skills\r\n are more important than technical skills. If you are very strong, take on the hardest or riskiest task,\r\n and do it as early as possible in the project to decrease risk.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222770835, 'theory', 1, 89, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:29:"How to Choose What to Work On";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (88, 'How to Get the Most From Your Teammates', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Get the Most From Your Teammates</h1>\r\n To get the most from your teammates, develop a good team spirit and try to keep every individual\r\n both personally challenged and personally engaged.<br />\r\n <br />\r\n To develop team spirit, corny stuff like logoized clothing and parties are good, but not as good as\r\n personal respect. If everyone respects everyone else, nobody will want to let anybody down. Team\r\n spirit is created when people make sacrifices for the team and think in terms of the good of the\r\n team before their own personal good. As a leader, you can't ask for more than you give yourself in\r\n this respect.<br />\r\n <br />\r\n One of the keys to team leadership is to facilitate consensus so that everyone has buy in. This occasionally\r\n means allowing your teammates to be wrong. That is, if it does not harm the project too\r\n much, you must let some of your team do things their own way, based on consensus, even if you\r\n believe with great confidence it is the wrong thing to do. When this happens, don't agree, simply\r\n disagree openly and accept the consensus. Don't sound hurt, or like you're being forced into it,\r\n simply state that you disagree but think the consensus of the team is more important. This will often\r\n cause them to backtrack. Don't insist that they go through with their initial plan if they do\r\n backtrack.<br />\r\n <br />\r\n If there is an individual who will not consent after you have discussed the issues from all appropriate\r\n sides, simply assert that you have to make a decision and that is what your decision is. If there\r\n is a way to judge if your decision will be wrong or if it is later shown to be wrong, switch as\r\n quickly as you can and recognize the persons who were right.<br />\r\n <br />\r\n Ask your team, both as a group and individually, what they think would create team spirit and\r\n make for an effective team.<br />\r\n <br />\r\n Praise frequently rather than lavishly. Especially praise those who disagree with you when they\r\n are praiseworthy. Praise in public and criticize in private; with one exception: sometimes growth\r\n or the correction of a fault can't be praised without drawing embarrassing attention to the original\r\n fault, so that growth should be praised in private.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222770938, 'theory', 1, 87, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:39:"How to Get the Most From Your Teammates";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (89, 'How to Develop Talent', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Develop Talent</h1>\r\n Nietschze exaggerated when he said[Stronger]:<br />\r\n <br />\r\n What does not destroy me, makes me stronger.<br />\r\n <br />\r\n Your greatest responsibility is to your team. You should know each of them well. You should\r\n challenge your team, but not overburden them. You should usually talk to them about the way\r\n they are being stretched. If they buy in to it, they will be well motivated. On each project, or every\r\n other project, try to stretch them in both a way that they suggest and a way that you think will be\r\n good for them. Stretch them not by giving them more work, but by giving them a new skill or better\r\n yet a new role to play on the team.<br />\r\n <br />\r\n You should allow people (including yourself) to fail occasionally and should plan for some failure\r\n in your schedule. If there is never any failure, there can be no sense of adventure. If there are not\r\n occasional failures, you are not taking enough risks. When someone fails, you should be as gentle\r\n as you can with them while not treating them as though they had succeeded.<br />\r\n <br />\r\n Try to get each team member to buy in and be well motivated. Ask each of them explicitly what\r\n they need to be well-motivated if they are not. You may have to leave them dissatisfied, but you\r\n should know what everybody desires.<br />\r\n <br />\r\n You can't give up on someone who is intentionally not carrying their share of the load because of\r\n low morale or dissatisfaction and just let them be slack. You must try to get them well-motivated\r\n and productive. As long as you have the patience, keep this up. When your patience is exhausted,\r\n fire them. You cannot allow someone who is intentionally working below their level to remain on\r\n the team, since it is not fair to the team.<br />\r\n <br />\r\n Make it clear to the strong members of your team that you think they are strong by saying so in\r\n public. Praise should be public and criticism private.<br />\r\n <br />\r\n The strong members of the team will naturally have more difficult tasks than the weak members of\r\n the team. This is perfectly natural and nobody will be bothered by it as long as everyone works\r\n hard.<br />\r\n <br />\r\n It is an odd fact that is not reflected in salaries that a good programmer is more productive than 10\r\n bad programmers. This creates a strange situation. It will often be true that you could move faster\r\n if your weak programmers would just get out of the way. If you did this you would in fact make\r\n more progress in the short term. However, your tribe would lose some important benefits, namely\r\n the training of the weaker members, the spreading of tribal knowledge, and the ability to recover\r\n from the loss of the strong members. The strong must be gentle in this regard and consider the issue\r\n from all angles.<br />\r\n <br />\r\n You can often give the stronger team members challenging, but carefully delineated, tasks.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222770773, 'theory', 1, 90, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:21:"How to Develop Talent";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (90, 'How to Get a Promotion', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Get a Promotion</h1>\r\n To be promoted to a role, act out that role first.<br />\r\n <br />\r\n To get promoted to a title, find out what is expected of that title and do that.<br />\r\n <br />\r\n To get a pay raise, negotiate armed with information.<br />\r\n <br />\r\n If you feel like you are past due for a promotion, talk to your boss about it. Ask them explicitly\r\n what you need to do to get promoted, and try to do it. This sounds trite, but often times your perception\r\n of what you need to do will differ considerably from your boss's. Also this will pin your\r\n boss down in some ways.<br />\r\n <br />\r\n Most programmers probably have an exaggerated sense of their relative abilities in some ways-\r\n --after all, we can't all be in the top 10%! However, I have seem some people who were seriously\r\n unappreciated. One cannot expect everyone's evaluation to perfectly match reality at all times, but\r\n I think people are generally moderately fair, with one caveat: you cannot be appreciated without\r\n visibility into your work. Sometimes, do to happenstance or personal habits, someone will not be\r\n noticed much. Working from home a lot or being geographically separated from your team and\r\n boss makes this especially difficult.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222770679, 'theory', 1, 91, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:22:"How to Get a Promotion";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (91, 'How to Understand the User', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Understand the User</h1>\r\n It is your duty to understand the user, and to help your boss understand the user. Because the user\r\n is not as intimately involved in the creation of your product as you are, they behave a little differently:<br />\r\n <br />\r\n • The user generally makes short pronouncements.<br />\r\n • The user has their own job; they will mainly think of small improvements in your product, not\r\n big improvements.<br />\r\n • The user can't have a vision that represents the complete body of your product users.<br />\r\n <br />\r\n It is your duty to give them what they really want, not what they say they want. It is however, better\r\n to propose it to them and get them to agree that your proposal is what they really want before\r\n you begin, but they may not have the vision to do this. Your confidence in your own ideas about\r\n this should vary. You must guard against both arrogance and false modesty in terms of knowing\r\n what the customer really wants. Programmers are trained to design and create. Market researchers\r\n are trained to figure out what people want. These two kinds of people, or two modes of thought in\r\n the same person, working harmoniously together give the best chance of formulating the correct\r\n vision.<br />\r\n <br />\r\n The more time you spend with users the better you will be able to understand what will really be\r\n successful. You should try to test your ideas against them as much as you can. You should eat and\r\n drink with them if you can.<br />\r\n <br />\r\n Guy Kawasaki[Rules] has emphasized the importance of watching what your users do in addition\r\n to listening to them.<br />\r\n <br />\r\n I believe contractors and consultants often have tremendous problems getting their clients to clarify\r\n in their own minds what they really want. If you intend to be a consultant, I suggest you choose your clients based on their clear-headedness as well as their pocketbooks.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222769911, 'theory', 1, 92, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:26:"How to Understand the User";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL); INSERT INTO `content` VALUES (92, 'How to Fight Schedule Pressure', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Fight Schedule Pressure</h1>\r\n Time-to-market pressure is the pressure to deliver a good product quickly. It is good because it reflects\r\n a financial reality, and is healthy up to a point. Schedule pressure is the pressure to deliver\r\n something faster than it can be delivered and it is wasteful, unhealthy, and all too common.<br />\r\n <br />\r\n Schedule pressure exists for several reasons. The people who task programmers do not fully appreciate\r\n what a strong work ethic we have and how much fun it is to be a programmer. Perhaps\r\n because they project their own behavior onto us, they believe that asking for it sooner will make\r\n us work harder to get it there sooner. This is probably actually true, but the effect is very small,\r\n and the damage is very great. Additionally, they have no visibility into what it really takes to produce\r\n software. Not being able to see it, and not be able to create it themselves, the only thing they\r\n can do is see time-to-market pressure and fuss at programmers about it.<br />\r\n <br />\r\n The key to fighting schedule pressure is simply to turn it into time-to-market pressure. The way to\r\n do this to give visibility into the relationship between the available labor and the product. Producing\r\n an honest, detailed, and most of all, understandable estimate of all the labor involved is the\r\n best way to do this. It has the added advantage of allowing good management decisions to be\r\n made about possible functionality tradeoffs.<br />\r\n <br />\r\n The key insight that the estimate must make plain is that labor is an almost incompressible fluid.\r\n You can't pack more into a span of time anymore than you can pack more water into a container\r\n over and above that container's volume. In a sense, a programmer should never say ‘no’, but rather\r\n to say ‘What will you give up to get that thing you want?’ The effect of producing clear estimates\r\n will be to increase the respect for programmers. This is how other professionals behave. Programmers'\r\n hard work will be visible. Setting an unrealistic schedule will also be painfully obvious to\r\n everyone. Programmers cannot be hoodwinked. It is disrespectful and demoralizing to ask them to\r\n do something unrealistic. Extreme Programming amplifies this and builds a process around it; I\r\n hope that every reader will be lucky enough to use it.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222769805, 'theory', 1, 93, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:30:"How to Fight Schedule Pressure";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (93, 'Choosing Languages', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>Choosing Languages</h1>\r\n The solitary programmer that loves her work (a hacker) can choose the best language for the task.\r\n Most working programmers have very little control of the language they will use. Generally, this\r\n issue is dictated by pointy-haired bosses who are making a political decision, rather than a technological\r\n decision, and lack the courage to promote an unconventional tool even when they know,\r\n often with firsthand knowledge, that the less accepted tool is best. In other cases the very real benefit\r\n of unity among the team, and to some extent with a larger community, precludes choice on the\r\n part of the individual. Often managers are driven by the need to be able to hire programmers with\r\n experience in a given language. No doubt they are serving what they perceive to be the best interests\r\n of the project or company, and must be respected for that. However, I personally believe this\r\n the most wasteful and erroneous common practice you are likely to encounter.<br />\r\n <br />\r\n But of course, things are never one-dimensional. Even if a core language is mandated and beyond\r\n your control, it is often the case that tools and other programs can and should be written in a different\r\n language. If a language is to be embedded (and you should always consider it!) the choice\r\n of language will depend a lot on the culture of the users. One should take advantage of this to\r\n serve your company or project by using the best language for the job, and in so doing make work\r\n more interesting.<br />\r\n <br />\r\n Programming languages should really be called notations in that learning one is not at all as difficult\r\n as learning a natural language. To beginners and to some outsiders ``learning a new language''\r\n seems a daunting task; but after you have three under your belt it's really just a question of becoming\r\n familiar with the available libraries. One tends to think of a large system that has components\r\n in three or four languages as a messy hodgepodge; but I argue that such a system is in many cases\r\n stronger than a one-language system in several ways:<br />\r\n <br />\r\n • There is necessarily loose coupling between the components that are written in different notations\r\n (though maybe not clean interfaces),<br />\r\n • You can evolve to a new language/platform easily by rewriting each component individually,<br />\r\n • Its possible that some of the modules are actually up-to-date.<br />\r\n <br />\r\n Some of these effects may only be psychological; but psychology matters. In the end the costs of\r\n language tyranny outweigh any advantage that it provides.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222769173, 'theory', 1, 95, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:18:"Choosing Languages";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (94, 'How to Tell the Hard From the Impossible', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Tell the Hard From the Impossible</h1>\r\n It is our job to do the hard and discern the impossible. From the point of view of most working\r\n programmers, something is impossible if either it cannot be grown from a simple system or it cannot\r\n be estimated. By this definition what is called research is impossible. A large volume of mere\r\n work is hard, but not necessarily impossible.<br />\r\n <br />\r\n The distinction is not facetious because you may very well be asked to do what is practically impossible,\r\n either from a scientific point of view or a software engineering point of view. It then becomes\r\n your job to help the entrepreneur find a reasonable solution which is merely hard and gets\r\n most of what they wanted. A solution is merely hard when it can be confidently scheduled and the\r\n risks are understood.<br />\r\n <br />\r\n It is impossible to satisfy a vague requirement, such as ‘Build a system that will compute the most\r\n attractive hair style and color for any person.’ If the requirement can be made more crisp, it will\r\n often become merely hard, such as ‘Build a system to compute an attractive hair style and color\r\n for a person, allow them to preview it and make changes, and have the customer satisfaction based\r\n on the original styling be so great that we make a lot of money.’ If there is not crisp definition of\r\n success, you will not succeed.\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222767595, 'theory', 1, 0, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:40:"How to Tell the Hard From the Impossible";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (95, 'How to Utilize Embedded Languages', '<table border="0" cellspacing="2" cellpadding="2" width="98%" align="center">\r\n <tbody>\r\n <tr>\r\n <td align="justify">\r\n <h1>How to Utilize Embedded Languages</h1>\r\n Embedding a programming language into a system has an almost erotic fascination to a programmer.\r\n It is one of the most creative acts that can be performed. It makes the system tremendously\r\n powerful. It allows you to exercise your most creative and Promethean skills. It makes the system\r\n into your friend.<br />\r\n <br />\r\n The best text editors in the world all have embedded languages. This can be used to the extent that\r\n the intended audience can master the language. Of course, use of the language can be made optional,\r\n as it is in text editors, so that initiates can use it and no one else has to.<br />\r\n <br />\r\n I and many other programmers have fallen into the trap of creating special purpose embedded languages.\r\n I fell into it twice. There already exist many languages designed specifically to be embedded\r\n languages. You should think twice before creating a new one.<br />\r\n <br />\r\n The real question to ask oneself before embedding a language is: Does this work with or against\r\n the culture of my audience? If you intended audience is exclusively non-programmers, how will it\r\n help? If your intended audience is exclusively programmers, would they prefer an applications\r\n programmers interface (API)? And what language will it be? Programmers don't want to learn a\r\n new language that is narrowly used; but if it meshes with their culture they will not have to spend\r\n much time learning it. It is a joy to create a new language. But we should not let that blind us to\r\n the needs of the user. Unless you have some truly original needs and ideas, why not use an existing\r\n language so that you can leverage the familiarity users already have with it?\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n', 0, 5, 1222767684, 'theory', 1, 94, 'a:3:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:21:"complete_unit_setting";i:0;}', 'a:5:{s:5:"title";s:33:"How to Utilize Embedded Languages";s:7:"creator";s:15:"George Goudelis";s:9:"publisher";s:15:"George Goudelis";s:11:"contributor";s:15:"George Goudelis";s:4:"date";s:10:"2008/09/30";}', NULL, 1, '', NULL), (1000, 'How to Communicate with others - Part1', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/mAcIogZyp0A" frameborder="0" allowfullscreen=""></iframe></p>', 1017, 6, 1315472098, 'theory', 1, 1017, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:38:"How to Communicate with others - Part1";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1001, 'How to work with reports', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/uCtM6ZiSWgM" frameborder="0" allowfullscreen=""></iframe></p>', 1013, 6, 1315472060, 'theory', 1, 1013, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:24:"How to work with reports";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1002, 'Final Test', '', 0, 6, 1319464022, 'tests', 1, 1015, 'b:0;', 'a:6:{s:5:"title";s:10:"Final Test";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/10/24";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1003, 'How to create a course', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/tlj3dNwFYQA" frameborder="0" allowfullscreen=""></iframe></p>', 1005, 6, 1315470169, 'theory', 1, 1008, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:35:"How to create and organize a course";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1004, 'How to work with Categories', '<p><iframe width="800" height="530" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/UpONz-eZAmc?list=UUuMDTOZmrIxxW1g_6q28NeA" frameborder="0" allowfullscreen=""></iframe></p>', 1005, 6, 1315469949, 'theory', 1, 1005, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:27:"How to work with Categories";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1005, 'Organizing the content', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In this part of the lesson you are going to learn how to organize your training material in Categories, Lessons and Courses in eFront.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">Responsible for this procedure is the System''s administrator .</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">After completing this part of the lesson you will be able to perform these three actions:</span></p>\r\n<ul>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">Add new categories </span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">Create and edit your lessons </span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">Create and organize your courses</span></li>\r\n</ul>\r\n<p> </p>', 0, 6, 1315470012, 'theory', 1, 0, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:2:"30";}', 'a:6:{s:5:"title";s:22:"Organizing the content";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1006, 'Developing the Content', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">As soon as the Administrator completes the creation and the organization of the Lessons into Categories and Courses, the Professor of each lesson has to develop the lesson''s content.</span></p>\r\n<p style="text-align: justify;"> </p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In the next units you will learn how to:</span></p>\r\n<ul>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">add content in eFront</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">create feedbacks, projects </span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">use the Glossary</span></li>\r\n</ul>', 0, 6, 1315471768, 'theory', 1, 1018, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:22:"Developing the Content";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1007, 'How to work with Content', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/xdp82BiJES8" frameborder="0" allowfullscreen=""></iframe></p>', 1006, 6, 1315471789, 'theory', 1, 1006, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:24:"How to work with Content";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1008, 'How to create a Lesson', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/nUUb61m20Mo" frameborder="0" allowfullscreen=""></iframe></p>', 1005, 6, 1315470097, 'theory', 1, 1004, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:22:"How to create a lesson";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1009, 'How to customize your Lesson', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/xBvmctooG-8" frameborder="0" allowfullscreen=""></iframe></p>', 1011, 6, 1315471959, 'theory', 1, 1012, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:28:"How to customize your Lesson";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1010, 'How to work with Feedbacks', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/eRClMu40IOM" frameborder="0" allowfullscreen=""></iframe></p>', 1006, 6, 1315471991, 'theory', 1, 1014, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:26:"How to work with feedbacks";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1011, 'Organizing the Lesson', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">When you have completed the content development of your lesson you have to define some characteristics.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">First of all it is really important that you define rules for your lesson to guide your trainees on how they should traverse the content as well as define completion conditions, to allow the auto-completion of the lesson when these conditions are met.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">Another very significant procedure is to select the lesson options and modules that will be available to the trainees. You are able to activate and deactivate options and modules for your lesson , to customize the layout of the student''s page or reset the lesson''s data.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In the next two units will learn:</span></p>\r\n<ul>\r\n<li><span style="font-family: verdana,geneva;">how to work with lesson rules and</span></li>\r\n<li><span style="font-family: verdana,geneva;">how to customize your lesson</span></li>\r\n</ul>', 0, 6, 1315471902, 'theory', 1, 1016, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:21:"Organizing the Lesson";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1012, 'How to work with Lesson Rules', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/PqvbG5hJeoc" frameborder="0" allowfullscreen=""></iframe></p>', 1011, 6, 1315471921, 'theory', 1, 1011, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:29:"How to work with Lesson Rules";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1013, 'Reporting', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">Reports are of great significance in an elearning platform, as they allow the professors and administrators to have an overview of the trainees'' progress and participation in the learning procedure and of the traffic in the platform.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In this chapter of the lesson you will find out the different types of reports that are available in eFront and you will learn how to use them to produce the desired results.</span></p>', 0, 6, 1315472045, 'theory', 1, 1009, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:9:"Reporting";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1014, 'How to work with Projects', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/LKbhATLdN4E" frameborder="0" allowfullscreen=""></iframe></p>', 1006, 6, 1315471854, 'theory', 1, 1007, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:25:"How to work with Projects";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1015, 'How to Communicate with others - Part2', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/Gaub1tlY8n4" frameborder="0" allowfullscreen=""></iframe></p>', 1017, 6, 1315472122, 'theory', 1, 1000, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:38:"How to Communicate with others - Part2";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1016, 'How to work with Glossary', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/JAWIlGMCx68" frameborder="0" allowfullscreen=""></iframe></p>', 1006, 6, 1315472009, 'theory', 1, 1010, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:25:"How to work with Glossary";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1017, 'Communication', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">The communication is of great significance in an elearning platform .</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">eFront provides several communication tools to the users.</span></p>\r\n<p style="text-align: justify;"> </p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In the next two units you will have the opportunity to explore the available tools:</span></p>\r\n<ul style="text-align: justify;">\r\n<li><span style="font-family: verdana,geneva;">Forum</span></li>\r\n<li><span style="font-family: verdana,geneva;">Chat</span></li>\r\n<li><span style="font-family: verdana,geneva;">Personal messages</span></li>\r\n<li><span style="font-family: verdana,geneva;">Calendar</span></li>\r\n<li><span style="font-family: verdana,geneva;">Announcements</span></li>\r\n<li><span style="font-family: verdana,geneva;">Comments</span></li>\r\n</ul>\r\n<p style="text-align: justify;"> </p>', 0, 6, 1315472076, 'theory', 1, 1001, 'a:9:{s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:21:"complete_unit_setting";s:1:"0";}', 'a:6:{s:5:"title";s:13:"Communication";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1018, 'How to manage your Course', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/vy5EhkV_B1k" frameborder="0" allowfullscreen=""></iframe></p>', 1005, 6, 1364906653, 'theory', 1, 1003, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"39";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:25:"How to manage your Course";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/03";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1019, 'Final Test', '', 0, 7, 1320747764, 'tests', 1, 1025, NULL, 'a:6:{s:5:"title";s:10:"Final Test";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/11/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1020, 'How to work with Themes', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/D6IO4r65wc8" frameborder="0" allowfullscreen=""></iframe></p>', 1022, 7, 1315472299, 'theory', 1, 1022, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:2:"20";}', 'a:6:{s:5:"title";s:23:"How to work with Themes";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1021, 'How to Insert a PDF as the content of a Unit', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/Ny4HLVjzOqI" frameborder="0" allowfullscreen=""></iframe></p>', 1027, 7, 1315472411, 'theory', 1, 1023, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:44:"How to Insert a PDF as the content of a Unit";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1022, 'Administrative Functions', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">The administrator is responsible for performing several administrative tasks in the platform.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">He is able to change the theme of the platform and the layout of the first page and he can upload and install new modules , available then to the professors to manage their lessons.</span></p>\r\n<p style="text-align: justify;"></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In the following units you will learn :</span></p>\r\n<ul>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to work with Themes in eFront and</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to work with Modules</span></li>\r\n</ul>', 0, 7, 1315472280, 'theory', 1, 0, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:2:"30";}', 'a:6:{s:5:"title";s:24:"Administrative Functions";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1023, 'How to Copy material between Lessons', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/0CZM4FTFBGM" frameborder="0" allowfullscreen=""></iframe></p>', 1027, 7, 1315472385, 'theory', 1, 1027, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:36:"How to Copy material between Lessons";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1024, 'How to Import and Track SCORM content', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/5cSqY9k5en8" frameborder="0" allowfullscreen=""></iframe></p>', 1027, 7, 1315472445, 'theory', 1, 1021, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:37:"How to Import and Track SCORM content";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1025, 'How to work with Certifications', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/4wCO0MayHRg" frameborder="0" allowfullscreen=""></iframe></p>', 1027, 7, 1315472474, 'theory', 1, 1024, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:31:"How to work with Certifications";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1026, 'How to work with Modules', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/Ozm0-x8rpj8" frameborder="0" allowfullscreen=""></iframe></p>', 1022, 7, 1315472314, 'theory', 1, 1020, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"49";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:24:"How to work with Modules";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1027, 'Content Developing Options', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">Apart from the basic content development options, you have some advanced functions that help you .</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">Some of these options are presented in the next units, where you will see:</span></p>\r\n<p style="text-align: justify;"></p>\r\n<ul>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to copy material between lessons</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to insert a PDF as the content of a unit</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to import and track SCORM content</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva;">How to work with certifications</span></li>\r\n</ul>', 0, 7, 1315472365, 'theory', 1, 1026, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:26:"Content Developing Options";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1028, 'How to work with Additional User Types', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/6pJhy1yGpqk" frameborder="0" allowfullscreen=""></iframe></p>', 0, 8, 1315473518, 'theory', 1, 1034, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:38:"How to work with Additional User Types";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1029, 'Managing Skills', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">In the Enterprise version of eFront, the Administrator is able to add skills in the platform, organized in skill categories. Skills can be</span><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"> assigned to users once they have fulfilled certain criteria, e.g. pass a </span><span lang="EN-US">specific test associated with a skill, or can be assigned by the </span><span lang="EN-US">administrator directly if a user already possesses the skill.</span></span></p>\r\n<p style="text-align: justify;"><br /><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"></span></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US">Skills are also used for the creation of skill gap tests. Skill gap tests</span></span><span style="font-size: 13px; font-family: verdana,geneva;"><span lang="EN-US"> examine the capability of users in pursuing a role according to </span><span lang="EN-US">predetermined criteria (reflected in the questions created and </span><span lang="EN-US">chosen), ensuring that the organization efficiently </span><span lang="EN-US">allocates its human resources. <br /></span></span></p>\r\n<p style="text-align: justify;"><br /><span style="font-size: 13px; font-family: verdana,geneva;"><span lang="EN-US"></span></span></p>\r\n<p style="text-align: justify;"><span style="font-size: 13px; font-family: verdana,geneva;"><span lang="EN-US">In the next two units you will learn:</span></span></p>\r\n<ul>\r\n<li><span style="font-size: 13px; font-family: verdana,geneva;"><span lang="EN-US">How to work with skills and</span></span></li>\r\n<li><span style="font-size: 13px; font-family: verdana,geneva;"><span lang="EN-US">How to create skill gap tests<br /></span></span></li>\r\n</ul>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"><br /></span></span></p>\r\n<p><br /><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"></span></span></p>\r\n<p><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"><br /></span></span></p>\r\n<p><br /><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"></span></span></p>\r\n<p><span style="font-family: verdana,geneva; font-size: 13px;"><span lang="EN-US"><br /> </span></span></p>', 0, 8, 1315474183, 'theory', 1, 1030, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:15:"Managing Skills";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1030, 'How to collect Payments', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/BvaC--F-vnA" frameborder="0" allowfullscreen=""></iframe></p>', 0, 8, 1315473543, 'theory', 1, 1028, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:23:"How to collect Payments";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1031, 'Final test', '', 0, 8, 1320920409, 'tests', 1, 1038, 'b:0;', 'a:6:{s:5:"title";s:10:"Final tets";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/11/10";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1032, 'How to work with Skills', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/lHhjNah2p8k" frameborder="0" allowfullscreen=""></iframe></p>', 1029, 8, 1315474278, 'theory', 1, 1029, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:23:"How to work with Skills";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1033, 'How to work with Multiple Accounts', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/TTKxsWF_wpY" frameborder="0" allowfullscreen=""></iframe></p>', 0, 8, 1315473442, 'theory', 1, 0, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:2:"20";}', 'a:6:{s:5:"title";s:34:"How to work with Multiple Accounts";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1034, 'How to extend the User Profiles', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/l2dYrE1O7mE" frameborder="0" allowfullscreen=""></iframe></p>', 0, 8, 1315473495, 'theory', 1, 1033, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:31:"How to extend the User Profiles";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1035, 'Organizing the Company Structure', '<p style="text-align: justify;"><span style="font-family: verdana,geneva;">eFront Enterprise allows you to build your company structure and create your organization chart in the platform.</span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;">You can use the branches and the job positions to have your business processes transferred in eFront and align your learning programs</span><span style="font-family: verdana,geneva; font-size: 13px; color: black;" lang="EN-US"> with business goals to cultivate employee skills and knowledge associated with business performance.</span></p>\r\n<p style="text-align: justify;"><br /><span style="font-family: verdana,geneva; font-size: 13px; color: black;" lang="EN-US"></span></p>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva; font-size: 13px; color: black;" lang="EN-US">In the following chapters you will learn :</span></p>\r\n<ul>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva; font-size: 13px; color: black;" lang="EN-US">How to build your company structure and</span></li>\r\n<li style="text-align: justify;"><span style="font-family: verdana,geneva; font-size: 13px; color: black;" lang="EN-US">How to work with job descriptions</span></li>\r\n</ul>\r\n<p style="text-align: justify;"><span style="font-family: verdana,geneva;"><br /></span></p>', 0, 8, 1315474354, 'theory', 1, 1039, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";i:0;s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:32:"Organizing the Company Structure";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1036, 'How to build your Company Structure', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/4kHwbDHiIZc" frameborder="0" allowfullscreen=""></iframe></p>', 1035, 8, 1315474416, 'theory', 1, 1035, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:35:"How to build your Company Structure";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1037, 'How to work with Job Positions', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/MRsd0q4lZJ0" frameborder="0" allowfullscreen=""></iframe></p>', 1035, 8, 1315474512, 'theory', 1, 1036, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:33:"How to work with Job Descriptions";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL); INSERT INTO `content` VALUES (1038, 'How to find a user with Specific Characteristics', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/jwpUsEKxb3U" frameborder="0" allowfullscreen=""></iframe></p>', 0, 8, 1315474548, 'theory', 1, 1037, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:48:"How to find a user with Specific Characteristics";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL), (1039, 'How to create a Skill-Gap Test', '<p><iframe width="800" height="500" style="display: block; margin-left: auto; margin-right: auto;" src="http://www.youtube.com/embed/aDtM8Q1eIk0" frameborder="0" allowfullscreen=""></iframe></p>', 1029, 8, 1315474320, 'theory', 1, 1032, 'a:10:{s:21:"complete_unit_setting";s:1:"0";s:15:"hide_navigation";s:1:"0";s:7:"indexed";s:1:"0";s:17:"maximize_viewport";s:1:"0";s:18:"scorm_asynchronous";i:0;s:10:"object_ids";s:0:"";s:16:"no_before_unload";s:1:"0";s:14:"reentry_action";b:0;s:17:"complete_question";s:2:"60";s:13:"complete_time";s:0:"";}', 'a:6:{s:5:"title";s:30:"How to create a Skill-Gap Test";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/09/08";s:4:"type";s:7:"content";}', NULL, 1, '', NULL); -- -------------------------------------------------------- -- -- Table structure for table `coupons` -- CREATE TABLE `coupons` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `code` varchar(150) NOT NULL, `max_uses` int(10) unsigned NOT NULL DEFAULT '0', `max_user_uses` int(10) unsigned NOT NULL DEFAULT '0', `duration` int(10) unsigned NOT NULL DEFAULT '30', `discount` int(10) unsigned NOT NULL DEFAULT '0', `description` text, `active` tinyint(1) unsigned NOT NULL DEFAULT '1', `from_timestamp` int(10) unsigned NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `code` (`code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `courses` -- CREATE TABLE `courses` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', `archive` int(10) unsigned DEFAULT '0', `created` int(10) unsigned DEFAULT NULL, `start_date` int(10) unsigned DEFAULT NULL, `end_date` int(10) unsigned DEFAULT NULL, `options` text, `metadata` text, `description` text, `info` text, `price` float DEFAULT '0', `show_catalog` tinyint(1) NOT NULL DEFAULT '1', `publish` tinyint(1) DEFAULT '1', `directions_ID` mediumint(8) unsigned DEFAULT NULL, `languages_NAME` varchar(50) NOT NULL, `reset` tinyint(1) NOT NULL DEFAULT '0', `certificate_expiration` int(10) unsigned DEFAULT NULL, `reset_interval` int(10) unsigned DEFAULT NULL, `max_users` int(10) unsigned DEFAULT NULL, `rules` text, `instance_source` mediumint(8) unsigned DEFAULT '0', `supervisor_LOGIN` varchar(100) DEFAULT NULL, `depends_on` mediumint(8) unsigned DEFAULT '0', `ceu` int(10) unsigned DEFAULT NULL, `creator_LOGIN` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`), KEY `instance_source` (`instance_source`), KEY `cou_indx1` (`archive`), KEY `cou_indx2` (`directions_ID`), KEY `cou_indx3` (`instance_source`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; -- -- Dumping data for table `courses` -- INSERT INTO `courses` VALUES (1, 'How to be a programmer', 1, 0, [[timestamp]], 0, 0, 'a:12:{s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:13:"auto_complete";i:1;s:16:"auto_certificate";i:0;s:11:"certificate";s:0:"";s:18:"certificate_tpl_id";i:0;s:22:"certificate_tpl_id_rtf";i:0;s:25:"certificate_export_method";s:3:"xml";s:8:"duration";i:0;s:14:"training_hours";s:0:"";s:10:"start_date";s:0:"";s:8:"end_date";s:0:"";}', 'a:7:{s:5:"title";s:22:"How to be a programmer";s:7:"creator";s:24:"Administrator S. (admin)";s:9:"publisher";s:24:"Administrator S. (admin)";s:11:"contributor";s:24:"Administrator S. (admin)";s:4:"date";s:10:"2012/12/24";s:8:"language";N;s:4:"type";s:6:"course";}', '', 'a:0:{}', 0, 1, 1, 2, '0', 0, 0, 0, 0, 'a:0:{}', 0, '', 0, 0, '[[admin_username]]'), (2, 'eFront', 1, 0, [[timestamp]], 0, 0, 'a:11:{s:18:"recurring_duration";i:0;s:13:"auto_complete";i:1;s:16:"auto_certificate";i:0;s:11:"certificate";s:0:"";s:18:"certificate_tpl_id";i:0;s:22:"certificate_tpl_id_rtf";i:0;s:25:"certificate_export_method";s:3:"xml";s:8:"duration";N;s:14:"training_hours";s:0:"";s:10:"start_date";s:0:"";s:8:"end_date";s:0:"";}', 'a:7:{s:5:"title";s:6:"eFront";s:7:"creator";s:24:"Administrator S. (admin)";s:9:"publisher";s:24:"Administrator S. (admin)";s:11:"contributor";s:24:"Administrator S. (admin)";s:4:"date";s:10:"2013/04/01";s:8:"language";s:7:"English";s:4:"type";s:6:"course";}', '', 'a:2:{s:19:"general_description";s:202:"This course is a short eFront tutorial. You can find in these three lessons all the basic eFront functions, presented through videos. It contains three lessons, the Beginner , Intermediate and Advanced.";s:10:"assessment";s:127:"In order to complete the course and get the certification you have to complete all three lessons, by passing their final tests.";}', 0, 1, 1, 3, 'english', 0, 0, 0, 0, 'a:2:{i:7;a:1:{s:6:"lesson";a:1:{i:1;s:1:"6";}}i:8;a:1:{s:6:"lesson";a:1:{i:1;s:1:"7";}}}', 0, NULL, 0, 1, '[[admin_username]]'); -- -------------------------------------------------------- -- -- Table structure for table `courses_to_groups` -- CREATE TABLE `courses_to_groups` ( `courses_ID` mediumint(8) unsigned NOT NULL, `user_type` varchar(50) DEFAULT 'student', `groups_ID` mediumint(8) unsigned NOT NULL, PRIMARY KEY (`courses_ID`,`groups_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `directions` -- CREATE TABLE `directions` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', `parent_direction_ID` mediumint(8) unsigned DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; -- -- Dumping data for table `directions` -- INSERT INTO `directions` VALUES (1, 'Ancient Civilizations', 1, 0), (2, 'Programming', 1, 0), (3, 'Tutorials', 1, 0); -- -------------------------------------------------------- -- -- Table structure for table `done_questions` -- CREATE TABLE `done_questions` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `done_tests_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `questions_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `answer` text, `score` float DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `done_tests` -- CREATE TABLE `done_tests` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `tests_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, `score` float DEFAULT '0', `comments` text, `duration` mediumint(10) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `events` -- CREATE TABLE `events` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `users_name` varchar(255) NOT NULL, `users_surname` varchar(255) NOT NULL, `timestamp` int(10) NOT NULL, `type` int(11) NOT NULL, `lessons_ID` varchar(255) DEFAULT NULL, `lessons_name` varchar(255) DEFAULT NULL, `entity_ID` varchar(255) DEFAULT NULL, `entity_name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`), KEY `users_LOGIN` (`users_LOGIN`), KEY `timestamp` (`timestamp`), KEY `event_indx1` (`type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=13 ; -- -------------------------------------------------------- -- -- Table structure for table `event_notifications` -- CREATE TABLE `event_notifications` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `event_type` int(11) NOT NULL, `after_time` int(10) NOT NULL DEFAULT '0', `send_conditions` text, `send_recipients` int(1) DEFAULT '1', `subject` varchar(255) NOT NULL, `message` text, `active` tinyint(1) DEFAULT '1', `html_message` tinyint(1) DEFAULT '0', `send_immediately` tinyint(1) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ; -- -- Dumping data for table `event_notifications` -- INSERT INTO `event_notifications` VALUES (1, 4, 0, 'a:0:{}', 1, 'Recover your password', 'Dear user ###users_name###,<br><br>This is an automated email sent from ###host_name### because you asked to recover your password. Please click the confirmation link below:.<br><br>###host_name###/index.php?ctg=reset_pwd&login=###users_login###&id=###md5(###users_login###)###<br><br>Alternatively, you may copy the link and paste it in your browser's address field.<br>Clicking on the link will confirm that your email address is valid so a new password can be sent to you. <br>For further information you may contact the system administrator through the following URL: ###host_name###/index.php?ctg=contact <br><br>With kind regards<br>---<br>The administration group<br>###site_name###<br>###site_motto###<br>This is an automated email sent from the address: ###host_name### on ###date###<br><br>', 1, 0, 1), (2, 7, 0, 'a:0:{}', 1, 'Recover your password', 'Dear user ###users_name###,<br><br>This is an automated email sent from ###host_name### with your new account password. <br>Your new password is: <br><br>###new_password###<br>\n <br>For further information you may contact the system administrator through the following URL: ###host_name###/index.php?ctg=contact <br><br>With kind regards<br>---<br>The administration group<br>###site_name###<br>###site_motto###<br>This is an automated email sent from the address: ###host_name### on ###date###', 1, 0, 1), (3, 6, 0, 'a:0:{}', 1, 'Account activation email', 'Dear user ###users_name###,<br><br>Welcome to our eLearning platform.! <br>Please, follow link below to activate your account:<br>###host_name###/index.php?account=###users_login###&key=###timestamp###<br><br><br>This is an automated email sent from the address: ###host_name### on ###date###<br>For further information you may contact the system administrator through the following URL: ###host_name###/index.php?ctg=contact <br><br>With kind regards<br>---<br>The administration group<br>###site_name###<br>###site_motto###<br>', 1, 0, 1), (4, 5, 0, 'a:0:{}', 1, 'Registration email', 'Dear user ###users_name###,<br><br>Welcome to our eLearning platform. <br>Your account was successfully created with the following personal information:<br><br>Login: ###users_login###<br>First name: ###users_name###<br>Last name: ###users_surname###<br>Email address: ###users_email###<br>Language: ###users_language###<br>Comments: ###users_comments###<br><br>For further information you may contact the system administrator through the following URL: ###host_name###/index.php?ctg=contact <br><br>With kind regards<br>---<br>The administration group<br>###site_name###<br>###site_motto###<br>', 1, 0, 1); -- -------------------------------------------------------- -- -- Table structure for table `files` -- CREATE TABLE `files` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `path` text NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `timestamp` int(10) unsigned NOT NULL, `description` text, `groups_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `access` smallint(3) unsigned NOT NULL DEFAULT '755', `shared` mediumint(8) unsigned DEFAULT '0', `metadata` text, PRIMARY KEY (`id`), KEY `files_path` (`path`(50)) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ; -- -- Dumping data for table `files` -- INSERT INTO `files` VALUES (3, 'upload/professor/temp/16_exported.zip', 'professor', 1365429312, NULL, 0, 755, 0, 'a:6:{s:5:"title";s:15:"16_exported.zip";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/08";s:4:"type";s:4:"file";}'), (4, 'upload/professor/temp/17_exported.zip', 'professor', 1365429312, NULL, 0, 755, 0, 'a:6:{s:5:"title";s:15:"17_exported.zip";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/08";s:4:"type";s:4:"file";}'), (5, 'upload/professor/temp/18_exported.zip', 'professor', 1365429312, NULL, 0, 755, 0, 'a:6:{s:5:"title";s:15:"18_exported.zip";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/08";s:4:"type";s:4:"file";}'), (7, 'www/content/lessons/6/SCORM_2004_4ED_v1_1_TR_20090814.pdf', 'professor', 1365429312, NULL, 0, 755, 0, 'a:6:{s:5:"title";s:35:"SCORM_2004_4ED_v1_1_TR_20090814.pdf";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/08";s:4:"type";s:4:"file";}'), (9, 'www/content/lessons/6/defaultCA4K2R11.jpg', 'professor', 1365429312, NULL, 0, 755, 0, 'a:6:{s:5:"title";s:19:"defaultCA4K2R11.jpg";s:7:"creator";s:17:"Default Professor";s:9:"publisher";s:17:"Default Professor";s:11:"contributor";s:17:"Default Professor";s:4:"date";s:10:"2013/04/08";s:4:"type";s:4:"file";}'); -- -------------------------------------------------------- -- -- Table structure for table `f_configuration` -- CREATE TABLE `f_configuration` ( `name` varchar(100) NOT NULL, `value` varchar(150) NOT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `f_folders` -- CREATE TABLE `f_folders` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `parent_id` mediumint(8) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`,`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ; -- -- Dumping data for table `f_folders` -- INSERT INTO `f_folders` VALUES (1, 'Incoming', 'admin', 0), (2, 'Sent', 'admin', 0), (3, 'Drafts', 'admin', 0), (4, 'Incoming', 'professor', 0), (5, 'Sent', 'professor', 0), (6, 'Drafts', 'professor', 0), (7, 'Incoming', 'student', 0), (8, 'Sent', 'student', 0), (9, 'Drafts', 'student', 0); -- -------------------------------------------------------- -- -- Table structure for table `f_forums` -- CREATE TABLE `f_forums` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `parent_id` mediumint(8) unsigned NOT NULL DEFAULT '0', `status` tinyint(1) NOT NULL DEFAULT '1', `users_LOGIN` varchar(100) NOT NULL, `comments` text, PRIMARY KEY (`id`), KEY `forum_indx1` (`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ; -- -- Dumping data for table `f_forums` -- INSERT INTO `f_forums` VALUES (1, 'Greedy algorithms', 1, 0, 1, 'professor', ''), (2, 'Maya civilization', 2, 0, 1, 'professor', ''), (3, 'How to be a programmer - Beginner', 3, 0, 1, 'professor', ''), (4, 'How to be a programmer - Intermediate', 4, 0, 1, 'professor', ''), (5, 'How to be a programmer - Advanced', 5, 0, 1, 'professor', ''), (6, 'eFront Beginner', 6, 0, 1, 'professor', ''), (7, 'eFront Intermediate', 7, 0, 1, 'professor', ''), (8, 'eFront Advanced', 8, 0, 1, 'professor', ''); -- -------------------------------------------------------- -- -- Table structure for table `f_messages` -- CREATE TABLE `f_messages` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `f_topics_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `title` varchar(255) NOT NULL, `body` text NOT NULL, `timestamp` int(10) unsigned NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `replyto` mediumint(8) unsigned NOT NULL DEFAULT '0', `rank` tinyint(4) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `fm_indx1` (`f_topics_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `f_personal_messages` -- CREATE TABLE `f_personal_messages` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `recipient` text, `sender` varchar(100) NOT NULL, `timestamp` int(10) unsigned NOT NULL, `attachments` text, `title` varchar(255) NOT NULL, `body` text NOT NULL, `bcc` tinyint(1) NOT NULL DEFAULT '0', `f_folders_ID` mediumint(8) unsigned NOT NULL DEFAULT '1', `viewed` tinyint(1) NOT NULL DEFAULT '0', `priority` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `pm_index` (`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `f_poll` -- CREATE TABLE `f_poll` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `question` text NOT NULL, `options` text NOT NULL, `timestamp_created` int(10) unsigned NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `f_forums_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `timestamp_start` int(10) unsigned NOT NULL, `timestamp_end` int(10) unsigned NOT NULL, `views` mediumint(8) unsigned NOT NULL DEFAULT '0', `sticky` tinyint(1) NOT NULL DEFAULT '0', `comments` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `f_topics` -- CREATE TABLE `f_topics` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `f_forums_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, `title` varchar(255) NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `views` mediumint(8) unsigned DEFAULT '0', `viewed_by` text, `status` tinyint(1) NOT NULL DEFAULT '1', `sticky` tinyint(1) DEFAULT '0', `comments` text, PRIMARY KEY (`id`), KEY `ftop_indx1` (`f_forums_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `f_users_to_polls` -- CREATE TABLE `f_users_to_polls` ( `f_poll_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `users_LOGIN` varchar(100) NOT NULL, `vote` tinyint(4) unsigned NOT NULL DEFAULT '0', `timestamp` int(10) unsigned NOT NULL, PRIMARY KEY (`f_poll_ID`,`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `glossary` -- CREATE TABLE `glossary` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `info` text, `type` varchar(20) NOT NULL DEFAULT 'general', `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=91 ; -- -- Dumping data for table `glossary` -- INSERT INTO `glossary` VALUES (1, 'Maya', 2, 'A Central America Civilization', 'general', 1), (2, 'Unesco', 2, 'UNESCO functions as a laboratory of ideas and a standard-setter to forge universal agreements on emerging ethical issues. The Organization also serves as a clearinghouse – for the dissemination and sharing of information and knowledge – while helping Member States to build their human and institutional capacities in diverse fields. In short, UNESCO promotes international co-operation among its 192 Member States and six Associate Members in the fields of education, science, culture and communication.', 'general', 1), (90, 'bonking', 4, 'This term has several meanings, derived from ‘to hit’, but is particularly used by athletes to describe running out of blood<br />sugar or some other basic resource that manifests as a sudden, rather than gradual, degradation of performance or spirit. I<br />have been told it has an additional, and very different meaning, throughout some of the British Commonwealth.', 'general', 1); -- -------------------------------------------------------- -- -- Table structure for table `groups` -- CREATE TABLE `groups` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `description` text, `active` tinyint(1) NOT NULL DEFAULT '1', `dynamic` tinyint(1) NOT NULL DEFAULT '0', `created` int(10) unsigned DEFAULT NULL, `user_types_ID` varchar(50) DEFAULT '0', `languages_NAME` varchar(50) DEFAULT NULL, `users_active` tinyint(1) DEFAULT '0', `assign_profile_to_new` tinyint(1) DEFAULT '0', `unique_key` varchar(255) DEFAULT '', `is_default` tinyint(1) DEFAULT '0', `self_enroll` tinyint(1) DEFAULT '0', `key_max_usage` mediumint(8) unsigned DEFAULT '0', `key_current_usage` mediumint(8) unsigned DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `languages` -- CREATE TABLE `languages` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', `translation` varchar(50) DEFAULT NULL, `rtl` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=45 ; -- -- Dumping data for table `languages` -- INSERT INTO `languages` VALUES (1, 'albanian', 0, 'Shqipe', 0), (2, 'arabic', 0, 'العربية', 0), (3, 'brazilian', 0, 'Brasileira', 0), (4, 'bulgarian', 0, 'Български', 0), (5, 'catalan', 0, 'Català', 0), (6, 'chinese_simplified', 0, '中国简化', 0), (7, 'chinese_traditional', 0, '中國傳統', 0), (8, 'croatian', 0, 'Hrvatski', 0), (9, 'czech', 0, 'Česky', 0), (10, 'danish', 0, 'Dansk', 0), (11, 'dutch', 0, 'Nederlands', 0), (12, 'greek', 0, 'Eλληνικά', 0), (13, 'english', 1, 'English', 0), (14, 'filipino', 0, 'Filipino', 0), (15, 'finnish', 0, 'Suomi', 0), (16, 'french', 0, 'Français', 0), (17, 'galician', 0, 'Galego', 0), (18, 'georgian', 0, 'ქართული', 0), (19, 'german', 0, 'Deutsch', 0), (20, 'hebrew', 0, 'עברית', 0), (21, 'hindi', 0, 'हिन्दी', 0), (22, 'hungarian', 0, 'Magyar', 0), (23, 'indonesian', 0, 'Indonesia', 0), (24, 'italian', 0, 'Italiano', 0), (25, 'japanese', 0, '日本語', 0), (26, 'korean', 0, '한국어', 0), (27, 'latin_american', 0, 'Latinoamérica', 0), (28, 'latvian', 0, 'Latviešu', 0), (29, 'lithuanian', 0, 'Lietuviškai', 0), (30, 'norwegian', 0, 'Norsk', 0), (31, 'persian', 0, 'فارسی', 0), (32, 'polish', 0, 'Polski', 0), (33, 'portuguese', 0, 'Português', 0), (34, 'romanian', 0, 'Română', 0), (35, 'russian', 0, 'Pусский', 0), (36, 'serbian', 0, 'Српски', 0), (37, 'slovak', 0, 'Slovenčina', 0), (38, 'slovenian', 0, 'Slovenski', 0), (39, 'spanish', 0, 'Español', 0), (40, 'swedish', 0, 'Svenska', 0), (41, 'thai', 0, 'ไทย', 0), (42, 'turkish', 0, 'Türkçe', 0), (43, 'ukrainian', 0, 'Українське', 0), (44, 'vietnamese', 0, 'Việt', 0); -- -------------------------------------------------------- -- -- Table structure for table `lessons` -- CREATE TABLE `lessons` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `directions_ID` mediumint(8) unsigned DEFAULT '0', `info` text, `price` float DEFAULT '0', `active` tinyint(1) NOT NULL DEFAULT '1', `show_catalog` tinyint(1) NOT NULL DEFAULT '1', `duration` int(10) DEFAULT '0', `access_limit` int(10) DEFAULT '0', `options` text, `languages_NAME` varchar(50) NOT NULL, `metadata` text, `course_only` tinyint(1) DEFAULT '0', `certificate` text, `from_timestamp` int(10) unsigned DEFAULT NULL, `to_timestamp` int(10) unsigned DEFAULT NULL, `shift` tinyint(1) DEFAULT '0', `publish` tinyint(1) DEFAULT '1', `share_folder` int(10) DEFAULT '0', `created` int(10) unsigned DEFAULT NULL, `max_users` int(10) unsigned DEFAULT NULL, `archive` int(10) unsigned DEFAULT '0', `instance_source` mediumint(8) unsigned DEFAULT '0', `originating_course` mediumint(8) unsigned DEFAULT '0', `creator_LOGIN` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`), KEY `les_indx1` (`directions_ID`), KEY `les_indx2` (`active`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ; -- -- Dumping data for table `lessons` -- INSERT INTO `lessons` VALUES (1, 'Greedy algorithms', 2, 'a:4:{s:19:"general_description";s:254:"This lesson is an introduction to a family of hard problems. These problems need an enormous amount of computational power if we seek for the best available solution. Alternatively, we can use heuristics that offer good (but often not optimal) solutions.";s:10:"objectives";s:59:"To get to know and experiment with several known algorithms";s:10:"assessment";s:29:"A simple three questions test";s:9:"resources";s:52:"This lesson uses extensive java based demonstrations";}', 0, 1, 1, 0, 0, 'a:44:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:0;s:4:"news";i:1;s:7:"reports";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:17:"default_positions";s:894:"a:3:{s:5:"first";a:3:{i:0;s:18:"moduleControlPanel";i:1;s:17:"moduleContentTree";i:2;s:18:"moduleProjectsList";}s:6:"second";a:11:{i:0;s:11:"modulequote";i:1;s:14:"moduleNewsList";i:2;s:26:"modulePersonalMessagesList";i:3;s:15:"moduleForumList";i:4;s:14:"moduleComments";i:5;s:14:"moduleCalendar";i:6;s:20:"moduleDigitalLibrary";i:7;s:16:"modulequickmails";i:8;s:9:"modulerss";i:9;s:15:"modulethumbnail";i:10;s:10:"modulewiki";}s:10:"visibility";a:14:{s:18:"moduleControlPanel";s:1:"1";s:17:"moduleContentTree";s:1:"1";s:18:"moduleProjectsList";s:1:"1";s:11:"modulequote";s:1:"1";s:14:"moduleNewsList";s:1:"1";s:26:"modulePersonalMessagesList";s:1:"1";s:15:"moduleForumList";s:1:"1";s:14:"moduleComments";s:1:"1";s:14:"moduleCalendar";s:1:"1";s:20:"moduleDigitalLibrary";s:1:"1";s:16:"modulequickmails";s:1:"1";s:9:"modulerss";s:1:"1";s:15:"modulethumbnail";s:1:"1";s:10:"modulewiki";s:1:"1";}}";s:18:"module_quick_mails";i:0;s:12:"module_quote";i:0;s:14:"module_youtube";i:0;s:11:"module_wiki";i:0;s:16:"module_thumbnail";i:0;s:25:"module_questions_from_csv";i:0;s:10:"module_rss";i:0;s:13:"print_content";i:1;s:19:"show_horizontal_bar";i:1;s:8:"feedback";i:1;}', '0', 'a:4:{s:8:"language";s:7:"English";s:5:"title";s:17:"Greedy algorithms";s:7:"creator";s:20:"Athanasios papagelis";s:7:"subject";s:10:"Algorithms";}', 0, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (2, 'Maya civilization', 1, 'a:3:{s:10:"objectives";s:49:"To get to know a few basic information about Maya";s:19:"general_description";s:51:"This is an introductory lesson to Maya civilization";s:10:"assessment";s:18:"A small final test";}', 0, 1, 1, 0, 0, 'a:38:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:4:"news";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:7:"reports";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:13:"print_content";i:1;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:17:"default_positions";s:0:"";s:8:"feedback";i:1;s:20:"module_fuze_meetings";i:0;}', '0', 'a:1:{s:5:"title";s:17:"Maya Civilization";}', 0, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (3, 'How to be a programmer - Beginner', 2, 'a:2:{s:19:"general_description";s:52:"This lesson includes introductory programming topics";s:9:"resources";s:45:"Based on the short tutorial of Robert L. Read";}', 0, 1, 1, 0, 0, 'a:42:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:0;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:17:"default_positions";s:794:"a:3:{s:5:"first";a:6:{i:0;s:15:"modulebillboard";i:1;s:23:"moduleIconLessonOptions";i:2;s:17:"moduleContentTree";i:3;s:18:"moduleProjectsList";i:4;s:20:"moduleDigitalLibrary";i:5;s:14:"moduleComments";}s:6:"second";a:6:{i:0;s:14:"moduleNewsList";i:1;s:26:"modulePersonalMessagesList";i:2;s:15:"moduleForumList";i:3;s:14:"moduleCalendar";i:4;s:9:"modulefaq";i:5;s:11:"modulelinks";}s:10:"visibility";a:12:{s:15:"modulebillboard";s:1:"1";s:23:"moduleIconLessonOptions";s:1:"1";s:17:"moduleContentTree";s:1:"0";s:18:"moduleProjectsList";s:1:"0";s:20:"moduleDigitalLibrary";s:1:"1";s:14:"moduleComments";s:1:"1";s:14:"moduleNewsList";s:1:"1";s:26:"modulePersonalMessagesList";s:1:"1";s:15:"moduleForumList";s:1:"1";s:14:"moduleCalendar";s:1:"1";s:9:"modulefaq";s:1:"1";s:11:"modulelinks";s:1:"1";}}";s:16:"module_billboard";i:1;s:10:"module_faq";i:1;s:12:"module_links";i:1;s:10:"module_rss";i:0;s:4:"news";i:1;s:7:"reports";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:13:"print_content";i:1;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:8:"feedback";i:1;s:15:"module_workbook";i:0;}', '0', 'a:6:{s:5:"title";s:22:"How to be a Programmer";s:7:"creator";s:19:"Thanasis Papaggelis";s:9:"publisher";s:19:"Thanasis Papaggelis";s:11:"contributor";s:19:"Thanasis Papaggelis";s:4:"date";s:10:"2008/09/29";s:8:"language";s:16:"Ελληνικά";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (4, 'How to be a programmer - Intermediate', 2, 'a:2:{s:10:"other_info";s:45:"Based on the short tutorial of Robert L. Read";s:19:"general_description";s:93:"This lesson includes intermediate programming topics for the programmer that gains experience";}', 0, 1, 1, 0, 0, 'a:37:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:12:"start_resume";i:1;s:17:"default_positions";s:0:"";s:4:"news";i:1;s:7:"reports";i:1;s:13:"print_content";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:8:"feedback";i:1;}', '0', 'a:6:{s:5:"title";s:37:"How to be a Programmer - Intermediate";s:7:"creator";s:19:"Thanasis Papaggelis";s:9:"publisher";s:19:"Thanasis Papaggelis";s:11:"contributor";s:19:"Thanasis Papaggelis";s:4:"date";s:10:"2008/09/29";s:8:"language";s:16:"Ελληνικά";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (5, 'How to be a programmer - Advanced', 2, 'a:2:{s:19:"general_description";s:115:"This lesson includes advanced programming topics for experienced programmer or project manager of software projects";s:10:"other_info";s:45:"Based on the short tutorial of Robert L. Read";}', 0, 1, 1, 0, 0, 'a:38:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:12:"start_resume";i:1;s:17:"default_positions";s:0:"";s:10:"module_rss";i:1;s:4:"news";i:1;s:7:"reports";i:1;s:13:"print_content";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:8:"feedback";i:1;}', '0', 'a:6:{s:5:"title";s:33:"How to be a Programmer - Advanced";s:7:"creator";s:19:"Thanasis Papaggelis";s:9:"publisher";s:19:"Thanasis Papaggelis";s:11:"contributor";s:19:"Thanasis Papaggelis";s:4:"date";s:10:"2008/09/29";s:8:"language";s:16:"Ελληνικά";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (6, 'eFront Beginner', 1, 'a:3:{s:19:"general_description";s:93:"This lessons presents the basic eFront functions. Learn how to get started with the platform.";s:10:"objectives";s:143:"-How to organize your content\n-How to develop your content\n-How to organize your lesson\n-How to generate reports\n-How to communicate with other";s:10:"assessment";s:64:"In order to complete the lesson you have to pass the final test.";}', 0, 1, 1, 0, 0, 'a:40:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:4:"news";i:1;s:6:"online";i:1;s:4:"chat";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:7:"reports";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:13:"print_content";i:1;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:17:"default_positions";s:0:"";s:8:"feedback";i:1;s:9:"recurring";i:0;s:6:"timers";i:1;s:3:"ims";i:1;s:13:"smart_content";i:1;}', 'english', 'a:7:{s:5:"title";s:15:"eFront Beginner";s:7:"creator";s:15:"Dean C. (admin)";s:9:"publisher";s:15:"Dean C. (admin)";s:11:"contributor";s:15:"Dean C. (admin)";s:4:"date";s:10:"2011/09/08";s:8:"language";s:7:"english";s:4:"type";s:6:"lesson";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (7, 'eFront Intermediate', 1, 'a:3:{s:19:"general_description";s:95:"Explore in this lessons some further eFront functions to enrich your platform and your lessons.";s:10:"objectives";s:73:"-How to work with themes and modules\n-Advanced content developing options";s:10:"assessment";s:64:"In order to complete the lesson you have to pass the final test.";}', 0, 1, 1, 0, 0, 'a:39:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:4:"news";i:1;s:6:"online";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:7:"reports";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:13:"print_content";i:1;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:17:"default_positions";s:0:"";s:8:"feedback";i:1;s:6:"timers";i:1;s:3:"ims";i:1;s:13:"smart_content";i:1;}', 'english', 'a:7:{s:5:"title";s:19:"eFront Intermediate";s:7:"creator";s:15:"Dean C. (admin)";s:9:"publisher";s:15:"Dean C. (admin)";s:11:"contributor";s:15:"Dean C. (admin)";s:4:"date";s:10:"2011/09/08";s:8:"language";s:7:"english";s:4:"type";s:6:"lesson";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'), (8, 'eFront Advanced', 1, 'a:3:{s:19:"general_description";s:52:"Explore in this lesson some advanced eFront options.";s:10:"objectives";s:124:"-Advanced administrative options\n-How to collect your payments\n-How to manage skills\n-How to organize your company structure";s:10:"assessment";s:65:"In order to complete this lesson you have to pass the final test.";}', 0, 1, 1, 0, 0, 'a:39:{s:6:"theory";i:1;s:8:"examples";i:1;s:8:"projects";i:1;s:5:"tests";i:1;s:6:"survey";i:1;s:5:"rules";i:1;s:5:"forum";i:1;s:8:"comments";i:1;s:4:"news";i:1;s:6:"online";i:1;s:5:"scorm";i:1;s:15:"dynamic_periods";i:0;s:15:"digital_library";i:1;s:8:"calendar";i:1;s:11:"new_content";i:1;s:8:"glossary";i:1;s:7:"reports";i:1;s:8:"tracking";i:1;s:13:"auto_complete";i:1;s:12:"content_tree";i:1;s:11:"lesson_info";i:1;s:11:"bookmarking";i:1;s:14:"content_report";i:0;s:13:"print_content";i:1;s:12:"start_resume";i:1;s:15:"show_percentage";i:1;s:14:"show_right_bar";i:1;s:13:"show_left_bar";i:0;s:19:"show_student_cpanel";i:1;s:9:"recurring";i:0;s:18:"recurring_duration";i:0;s:18:"show_content_tools";i:1;s:14:"show_dashboard";i:1;s:19:"show_horizontal_bar";i:1;s:17:"default_positions";s:0:"";s:8:"feedback";i:1;s:6:"timers";i:1;s:3:"ims";i:1;s:13:"smart_content";i:1;}', 'english', 'a:7:{s:5:"title";s:15:"eFront Advanced";s:7:"creator";s:15:"Dean C. (admin)";s:9:"publisher";s:15:"Dean C. (admin)";s:11:"contributor";s:15:"Dean C. (admin)";s:4:"date";s:10:"2011/09/08";s:8:"language";s:7:"english";s:4:"type";s:6:"lesson";}', 1, '', 0, 0, 0, 1, 0, [[timestamp]], 0, 0, 0, 0, '[[admin_username]]'); -- -------------------------------------------------------- -- -- Table structure for table `lessons_timeline_topics` -- CREATE TABLE `lessons_timeline_topics` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `lessons_ID` mediumint(8) unsigned NOT NULL, `title` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `lessons_timeline_topics_data` -- CREATE TABLE `lessons_timeline_topics_data` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `topics_ID` mediumint(8) unsigned NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `data` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `lessons_to_courses` -- CREATE TABLE `lessons_to_courses` ( `courses_ID` mediumint(8) unsigned NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL, `previous_lessons_ID` mediumint(8) unsigned DEFAULT '0', `start_date` int(10) unsigned DEFAULT NULL, `end_date` int(10) unsigned DEFAULT NULL, `start_period` int(10) unsigned DEFAULT NULL, `end_period` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`lessons_ID`,`courses_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `lessons_to_courses` -- INSERT INTO `lessons_to_courses` VALUES (1, 3, 0, NULL, NULL, NULL, NULL), (1, 4, 3, NULL, NULL, NULL, NULL), (1, 5, 4, NULL, NULL, NULL, NULL), (2, 6, 0, NULL, NULL, NULL, NULL), (2, 7, 6, NULL, NULL, NULL, NULL), (2, 8, 7, NULL, NULL, NULL, NULL); -- -------------------------------------------------------- -- -- Table structure for table `lessons_to_groups` -- CREATE TABLE `lessons_to_groups` ( `lessons_ID` mediumint(8) unsigned NOT NULL, `user_type` varchar(50) DEFAULT 'student', `groups_ID` mediumint(8) unsigned NOT NULL, PRIMARY KEY (`lessons_ID`,`groups_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `lesson_conditions` -- CREATE TABLE `lesson_conditions` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `lessons_ID` mediumint(8) unsigned NOT NULL, `type` varchar(255) NOT NULL, `options` text, `relation` varchar(255) NOT NULL DEFAULT 'and', PRIMARY KEY (`id`), KEY `lescon_indx1` (`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ; -- -- Dumping data for table `lesson_conditions` -- INSERT INTO `lesson_conditions` VALUES (1, 1, 'all_units', '', 'and'), (2, 2, 'specific_test', 'a:2:{i:0;s:2:"30";i:1;s:2:"60";}', 'and'), (3, 3, 'percentage_units', 'a:1:{i:0;s:2:"50";}', 'and'), (4, 4, 'percentage_units', 'a:1:{i:0;s:2:"50";}', 'and'), (5, 5, 'percentage_units', 'a:1:{i:0;s:2:"50";}', 'and'), (6, 6, 'specific_test', 'a:1:{i:0;i:1002;}', 'and'), (7, 7, 'specific_test', 'a:1:{i:0;i:1019;}', 'and'), (8, 8, 'specific_test', 'a:1:{i:0;i:1031;}', 'and'); -- -------------------------------------------------------- -- -- Table structure for table `logs` -- CREATE TABLE `logs` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `timestamp` int(10) unsigned NOT NULL, `action` varchar(255) NOT NULL, `comments` varchar(256) NOT NULL DEFAULT '0', `session_ip` char(8) NOT NULL DEFAULT '0', `lessons_ID` mediumint(8) unsigned DEFAULT '0', PRIMARY KEY (`id`), KEY `timestamp` (`timestamp`), KEY `users_LOGIN` (`users_LOGIN`), KEY `action` (`action`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=23 ; -- -------------------------------------------------------- -- -- Table structure for table `modules` -- CREATE TABLE `modules` ( `className` varchar(150) NOT NULL, `db_file` varchar(255) DEFAULT NULL, `name` varchar(150) NOT NULL, `active` tinyint(1) NOT NULL, `title` varchar(150) NOT NULL, `author` varchar(100) DEFAULT NULL, `version` varchar(10) DEFAULT NULL, `description` text, `position` varchar(150) NOT NULL, `menu` varchar(255) DEFAULT NULL, `mandatory` varchar(255) DEFAULT NULL, `permissions` varchar(32) NOT NULL DEFAULT 'administrator', PRIMARY KEY (`className`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `modules` -- INSERT INTO `modules` VALUES ('module_administrator_tools', '', 'module_administrator_tools', 0, 'Administrator tools', 'Periklis Venakis', '1.10', 'This module is a collection of administrator tools', 'module_administrator_tools', NULL, NULL, 'administrator'), ('module_bbb', '', 'module_bbb', 0, 'BigBlueButton conference tool', 'Panagiotis Athanasopoulos', '1.2', '\n This module is used to connect eFront with BigBlueButton for lesson conferencing using the included API.\n ', 'module_bbb', NULL, NULL, 'administrator,professor,student'), ('module_billboard', '', 'module_billboard', 0, 'Billboard', 'Nick Baltas', '1.3', '\n This module is used to create and display a billboard for eFront lessons.\n ', 'module_billboard', NULL, NULL, 'professor,student'), ('module_blogs', '', 'module_blogs', 0, 'Blogs', 'Michael Makrigiannakis', '1.1', 'This module is used to place blogs functionality in eFront lessons', 'module_blogs', NULL, NULL, 'student,professor,administrator'), ('module_bootstrap', '', 'module_bootstrap', 0, 'Module Bootstap', 'Periklis Venakis', '1.0', 'Bootstrap module quickly sets up a new module by putting together the minimum code required', 'module_bootstrap', NULL, NULL, 'administrator'), ('module_chat', '', 'module_chat', 0, 'Chat Module ', 'Christos Xanthos', '1.1', 'eFront integrated Chat Bar', 'module_chat', NULL, NULL, 'administrator,professor,student'), ('module_crossword', '', 'module_crossword', 0, 'Crossword', 'skippybosco', '1.3', 'Create Crossword Puzzles from Empty Space Questions', 'module_crossword', NULL, NULL, 'student,professor,administrator'), ('module_export_unit', '', 'module_export_unit', 0, 'Export unit', 'Periklis Venakis', '1.0', 'A module that exports units to HTML', 'module_export_unit', NULL, NULL, 'professor'), ('module_faq', '', 'module_faq', 0, 'Frequently Asked Questions', 'Nick Baltas', '1.5', '\n This module is used to create and display FAQ lists for eFront lessons.\n ', 'module_faq', NULL, NULL, 'professor,student'), ('module_flashcards', '', 'module_flashcards', 0, 'Flashcards', 'Michael Makrigiannakis', '1.0', 'This module is used to place flashcards in eFront questions', 'module_flashcards', NULL, NULL, 'student,professor,administrator'), ('module_gift_aiken', '', 'module_gift_aiken', 0, 'GIFT/AIKEN Questions Import', 'Nick Baltas', '1.4', '\n This module is used to create questions from GIFT/AIKEN formats\n ', 'module_gift_aiken', NULL, NULL, 'professor'), ('module_gradebook', '', 'module_gradebook', 0, 'GradeBook', 'Andreas Makridakis', '1.0', 'A module for handling the grades in each lesson', 'module_gradebook', NULL, NULL, 'student,professor,administrator'), ('module_idle_users', '', 'module_idle_users', 0, 'Idle users', 'Periklis Venakis', '1.1', 'A module to display idle users, per branch', 'module_idle_users', NULL, NULL, 'administrator,professor,student'), ('module_info_kiosk', '', 'module_info_kiosk', 0, 'Info-kiosk', 'Periklis Venakis', '1.4', 'A module that allows for uploading files to be visible for all users to see', 'module_info_kiosk', NULL, NULL, 'administrator,professor,student'), ('module_journal', '', 'module_journal', 0, 'Journal', 'Andreas Makridakis', '1.0', 'A common Journal per student/professor', 'module_journal', NULL, NULL, 'student,professor,administrator'), ('module_links', '', 'module_links', 0, 'Links', 'Panagiotis Antonellis', '1.4', '\n This module is used to create and display a list of useful links\n ', 'module_links', NULL, NULL, 'professor,student'), ('module_outlook_invitation', '', 'module_outlook_invitation', 0, 'Outlook invitation Module', 'Michael Makrigiannakis', '1.1.6', 'This module allows you to create events attached to a specific course. Whenever a user is assigned to a course with an attached Event, eFront will automatically send him an outlook calendar event', 'module_outlook_invitation', NULL, NULL, 'administrator'), ('module_quick_mails', '', 'module_quick_mails', 0, 'Quick emails', 'Michael Makrigiannakis', '1.2', '\n This module is used to send emails directly to professors students etc\n ', 'module_quick_mails', NULL, NULL, 'student,professor'), ('module_quote', '', 'module_quote', 0, 'Quote of the day', 'Panagiotis Antonellis', '1.1', '\n This module is used to display the quote of the day\n ', 'module_quote', NULL, NULL, 'professor,student'), ('module_rss', '', 'module_rss', 0, 'RSS', 'Periklis Venakis', '1.8', 'An RSS module for eFront', 'module_rss', NULL, NULL, 'administrator,professor,student'), ('module_security', '', 'module_security', 1, 'Security Module', 'Periklis Venakis', '1.0', 'Security module', 'module_security', NULL, NULL, 'administrator'), ('module_workbook', '', 'module_workbook', 0, 'WorkBook', 'Andreas Makridakis', '1.1', 'Through Workbook module professors are trying to get students to pay attention to certain lesson items', 'module_workbook', NULL, NULL, 'student,professor'), ('module_youtube', '', 'module_youtube', 0, 'YouTube', 'Nick Baltas', '1.2', '\n This module is used to connect eFront with YouTube\n ', 'module_youtube', NULL, NULL, 'professor,student'); -- -------------------------------------------------------- -- -- Table structure for table `module_bbb` -- CREATE TABLE `module_bbb` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `timestamp` int(11) NOT NULL, `lessons_ID` int(11) NOT NULL, `confKey` varchar(255) NOT NULL, `durationHours` int(1) NOT NULL, `durationMinutes` int(2) DEFAULT NULL, `confType` tinyint(1) DEFAULT '0', `maxParts` int(3) DEFAULT '20', `maxMics` int(3) DEFAULT '20', `lobby` tinyint(1) DEFAULT '0', `status` int(1) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_bbb_users_to_meeting` -- CREATE TABLE `module_bbb_users_to_meeting` ( `users_LOGIN` varchar(255) NOT NULL, `meeting_ID` int(11) NOT NULL, KEY `users_LOGIN` (`users_LOGIN`,`meeting_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_billboard` -- CREATE TABLE `module_billboard` ( `lessons_ID` int(11) NOT NULL, `data` longtext, PRIMARY KEY (`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_blogs` -- CREATE TABLE `module_blogs` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `lessons_ID` int(11) NOT NULL DEFAULT '0', `users_LOGIN` varchar(255) NOT NULL, `description` text, `active` tinyint(1) NOT NULL DEFAULT '1', `registered` tinyint(1) NOT NULL DEFAULT '1', `timestamp` varchar(10) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_blogs_articles` -- CREATE TABLE `module_blogs_articles` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `blogs_ID` int(11) NOT NULL DEFAULT '0', `users_LOGIN` varchar(255) NOT NULL, `timestamp` varchar(10) NOT NULL, `data` text, `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_blogs_comments` -- CREATE TABLE `module_blogs_comments` ( `id` int(11) NOT NULL AUTO_INCREMENT, `blogs_articles_ID` int(11) NOT NULL DEFAULT '0', `users_LOGIN` varchar(255) NOT NULL, `timestamp` varchar(10) NOT NULL, `data` text, `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_blogs_users` -- CREATE TABLE `module_blogs_users` ( `blogs_ID` int(11) NOT NULL DEFAULT '0', `users_LOGIN` varchar(255) NOT NULL, PRIMARY KEY (`users_LOGIN`,`blogs_ID`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_chat` -- CREATE TABLE `module_chat` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `from_user` varchar(255) NOT NULL DEFAULT '', `to_user` varchar(255) NOT NULL DEFAULT '', `message` text NOT NULL, `sent` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `isLesson` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_chat_config` -- CREATE TABLE `module_chat_config` ( `status` int(11) NOT NULL DEFAULT '1', `chatHeartbeatTime` int(11) NOT NULL DEFAULT '1500', `refresh_rate` int(11) NOT NULL DEFAULT '60000' ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Dumping data for table `module_chat_config` -- INSERT INTO `module_chat_config` VALUES (1, 2000, 30000); -- -------------------------------------------------------- -- -- Table structure for table `module_chat_users` -- CREATE TABLE `module_chat_users` ( `username` varchar(100) NOT NULL, `timestamp_` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, UNIQUE KEY `username` (`username`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_crossword_users` -- CREATE TABLE `module_crossword_users` ( `users_LOGIN` varchar(100) NOT NULL, `content_ID` mediumint(11) NOT NULL, `crosslists_ID` mediumint(11) NOT NULL DEFAULT '0', `success` mediumint(11) NOT NULL DEFAULT '0', `points` varchar(50) NOT NULL, `totallength` varchar(50) NOT NULL, `wordtime` varchar(50) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_crossword_words` -- CREATE TABLE `module_crossword_words` ( `content_ID` int(10) unsigned NOT NULL, `crosslists` text, `options` text ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_faq` -- CREATE TABLE `module_faq` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `unit_ID` int(11) DEFAULT NULL, `question` text NOT NULL, `answer` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_flashcards_decks` -- CREATE TABLE `module_flashcards_decks` ( `content_ID` int(10) unsigned NOT NULL, `cards` text, `options` text ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_flashcards_users_to_cards` -- CREATE TABLE `module_flashcards_users_to_cards` ( `users_LOGIN` varchar(100) NOT NULL, `content_ID` mediumint(11) NOT NULL, `cards_ID` mediumint(11) NOT NULL, `success` mediumint(11) NOT NULL DEFAULT '0' ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_gradebook_grades` -- CREATE TABLE `module_gradebook_grades` ( `gid` int(11) NOT NULL AUTO_INCREMENT, `oid` int(11) NOT NULL, `grade` float NOT NULL, `users_LOGIN` varchar(255) NOT NULL, PRIMARY KEY (`gid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_gradebook_objects` -- CREATE TABLE `module_gradebook_objects` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `weight` int(2) NOT NULL, `refers_to_type` varchar(50) NOT NULL, `refers_to_id` int(11) NOT NULL, `lessons_ID` int(11) NOT NULL, `creator` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_gradebook_ranges` -- CREATE TABLE `module_gradebook_ranges` ( `id` int(11) NOT NULL AUTO_INCREMENT, `range_from` int(3) NOT NULL, `range_to` int(3) NOT NULL, `grade` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_gradebook_users` -- CREATE TABLE `module_gradebook_users` ( `uid` int(11) NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(255) NOT NULL, `lessons_ID` int(11) NOT NULL, `score` float NOT NULL, `grade` varchar(50) NOT NULL, `publish` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`uid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_journal_entries` -- CREATE TABLE `module_journal_entries` ( `id` int(11) NOT NULL AUTO_INCREMENT, `entry_body` text NOT NULL, `entry_date` datetime NOT NULL, `lessons_ID` int(11) NOT NULL, `users_LOGIN` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_journal_rules` -- CREATE TABLE `module_journal_rules` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `description` text NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_journal_settings` -- CREATE TABLE `module_journal_settings` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(45) NOT NULL, `value` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; -- -- Dumping data for table `module_journal_settings` -- INSERT INTO `module_journal_settings` VALUES (1, 'export', 1), (2, 'preview', 1); -- -------------------------------------------------------- -- -- Table structure for table `module_links` -- CREATE TABLE `module_links` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `display` varchar(500) NOT NULL, `link` varchar(500) NOT NULL, `description` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_outlook_invitation` -- CREATE TABLE `module_outlook_invitation` ( `courses_ID` int(11) NOT NULL, `email` varchar(150) DEFAULT NULL, `duration` int(10) unsigned NOT NULL, `description` text, `location` text, `subject` varchar(255) DEFAULT 'Invitation to attend training', `sequence` int(11) DEFAULT '0', PRIMARY KEY (`courses_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `module_quote` -- CREATE TABLE `module_quote` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `quote` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_rss_feeds` -- CREATE TABLE `module_rss_feeds` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) DEFAULT NULL, `url` text NOT NULL, `active` int(11) NOT NULL DEFAULT '1', `only_summary` int(11) DEFAULT '0', `lessons_ID` int(11) DEFAULT '-1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- Dumping data for table `module_rss_feeds` -- INSERT INTO `module_rss_feeds` VALUES (1, 'eFront news', 'http://www.efrontlearning.net/product/efront-news?format=feed&type=rss&install=1', 1, 0, -1); -- -------------------------------------------------------- -- -- Table structure for table `module_rss_provider` -- CREATE TABLE `module_rss_provider` ( `id` int(11) NOT NULL AUTO_INCREMENT, `mode` varchar(255) DEFAULT NULL, `type` varchar(255) DEFAULT NULL, `active` int(11) NOT NULL DEFAULT '1', `lessons_ID` int(11) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_answers` -- CREATE TABLE `module_workbook_answers` ( `id` int(11) NOT NULL AUTO_INCREMENT, `item_id` int(11) NOT NULL, `html_solved` text, `users_LOGIN` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_autosave` -- CREATE TABLE `module_workbook_autosave` ( `id` int(11) NOT NULL AUTO_INCREMENT, `item_id` int(11) NOT NULL, `autosave_text` longtext NOT NULL, `users_LOGIN` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_items` -- CREATE TABLE `module_workbook_items` ( `id` int(11) NOT NULL AUTO_INCREMENT, `item_title` varchar(255) DEFAULT NULL, `item_text` text, `item_question` int(11) NOT NULL, `question_text` longtext, `check_answer` tinyint(1) NOT NULL, `lessons_ID` int(11) NOT NULL, `unique_ID` varchar(50) NOT NULL, `position` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_progress` -- CREATE TABLE `module_workbook_progress` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `users_LOGIN` varchar(255) NOT NULL, `progress` float(5,2) NOT NULL, `non_optional` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_publish` -- CREATE TABLE `module_workbook_publish` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `publish` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_workbook_settings` -- CREATE TABLE `module_workbook_settings` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `lesson_name` varchar(255) NOT NULL, `allow_print` tinyint(1) NOT NULL DEFAULT '1', `allow_export` tinyint(1) NOT NULL DEFAULT '1', `edit_answers` tinyint(1) NOT NULL DEFAULT '1', `unit_to_complete` int(11) NOT NULL DEFAULT '-1', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `module_youtube` -- CREATE TABLE `module_youtube` ( `id` int(11) NOT NULL AUTO_INCREMENT, `lessons_ID` int(11) NOT NULL, `title` varchar(255) NOT NULL, `link` varchar(255) NOT NULL, `description` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `news` -- CREATE TABLE `news` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(255) DEFAULT NULL, `data` text, `timestamp` int(10) unsigned DEFAULT '0', `expire` int(10) unsigned DEFAULT '0', `lessons_ID` mediumint(8) unsigned DEFAULT NULL, `users_LOGIN` varchar(100) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `notifications` -- CREATE TABLE `notifications` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `timestamp` int(10) NOT NULL, `send_interval` varchar(10) NOT NULL DEFAULT '0', `send_conditions` text, `id_type_entity` varchar(255) DEFAULT NULL, `recipient` varchar(100) DEFAULT NULL, `subject` varchar(255) NOT NULL, `message` text, `active` tinyint(1) DEFAULT '1', `html_message` tinyint(1) DEFAULT '0', PRIMARY KEY (`id`), KEY `recipient` (`recipient`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `periods` -- CREATE TABLE `periods` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `from_timestamp` int(10) unsigned NOT NULL, `to_timestamp` int(10) unsigned NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `profile_comments` -- CREATE TABLE `profile_comments` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `authors_LOGIN` varchar(100) NOT NULL, `timestamp` int(10) unsigned NOT NULL, `data` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `projects` -- CREATE TABLE `projects` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(150) DEFAULT NULL, `data` text, `deadline` int(10) unsigned DEFAULT NULL, `creator_LOGIN` varchar(100) NOT NULL, `lessons_ID` mediumint(8) unsigned DEFAULT NULL, `auto_assign` tinyint(1) NOT NULL DEFAULT '0', `metadata` text, PRIMARY KEY (`id`), KEY `creator_LOGIN` (`creator_LOGIN`), KEY `deadline` (`deadline`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- Dumping data for table `projects` -- INSERT INTO `projects` VALUES (1, 'test', '', 1322690400, 'professor', 6, 1, 'a:6:{s:5:"title";s:4:"test";s:7:"creator";s:11:"Brad Taylor";s:9:"publisher";s:11:"Brad Taylor";s:11:"contributor";s:11:"Brad Taylor";s:4:"date";s:10:"2011/11/01";s:4:"type";s:7:"project";}'); -- -------------------------------------------------------- -- -- Table structure for table `questions` -- CREATE TABLE `questions` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `text` text NOT NULL, `type` varchar(255) NOT NULL, `content_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `difficulty` varchar(255) NOT NULL, `options` text, `answer` text, `explanation` text, `answers_explanation` text, `estimate` int(10) unsigned DEFAULT NULL, `settings` text, `linked_to` mediumint(8) unsigned DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=59 ; -- -- Dumping data for table `questions` -- INSERT INTO `questions` VALUES (1, 'A heuristic solution is ...\r\n', 'multiple_one', 12, 1, 'medium', 'a:3:{i:0;s:39:"The best possible solution to a problem";i:1;s:30:"A random solution to a problem";i:2;s:42:"A feasible solution to a difficult problem";}', 'a:1:{i:0;s:1:"2";}', 'A heuristic solution is good solution to a problem taking into account that the exausting examination of the problem's space is not feasible.', NULL, NULL, NULL, NULL), (2, 'Why we have to use greedy algorithms?', 'multiple_one', 12, 1, 'medium', 'a:4:{i:0;s:51:"Because a solution to the problem is not computable";i:1;s:68:"Because there are many solutions and we need to pick up the best one";i:2;s:54:"Because it is very expensive to find the best solution";i:3;s:26:"Because it is more elegant";}', 'a:1:{i:0;s:1:"2";}', '', 'a:4:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";}', NULL, NULL, NULL), (3, '<strong><font face="trebuchet ms,geneva" size="2">The traveling salesman problem can be efficiently and optimally solved</font></strong>\r\n', 'multiple_one', 12, 1, 'medium', 'a:2:{i:0;s:7:"Correct";i:1;s:5:"False";}', 'a:1:{i:0;s:1:"1";}', '', NULL, NULL, NULL, NULL), (4, '<p><strong><span style="font-size: 13px;">The Maya calendar(s) were based on a year length of ...</span></strong></p>', 'multiple_one', 29, 2, 'medium', 'a:4:{i:0;s:8:"350 days";i:1;s:8:"360 days";i:2;s:8:"365 days";i:3;s:8:"370 days";}', 'a:1:{i:0;s:1:"2";}', '', 'a:4:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";}', NULL, NULL, NULL), (5, '"The Maya have developed a complete writing system". This sentense is...\r\n', 'multiple_one', 29, 2, 'medium', 'a:2:{i:0;s:7:"Correct";i:1;s:5:"Wrong";}', 'a:1:{i:0;s:1:"0";}', 'The Maya writing system (often called hieroglyphs from a superficial resemblance to the Ancient Egyptian writing) was a combination of phonetic symbols and logograms. It is most often classified as a logographic or (more properly) a logosyllabic writing system, in which syllabic signs play a significant role. It is the only writing system of the Pre-Columbian New World which is known to completely represent the spoken language of its community. In total, the script has more than a thousand different glyphs, although a few are variations of the same sign or meaning, and many appear only rarely or are confined to particular localities. At any one time, no more than around 500 glyphs were in use, some 200 of which (including variations) had a phonetic or syllabic interpretation.', NULL, NULL, NULL, NULL), (6, '<p><span style="font-size: 13px;"><strong>The political structure of Mayas was based on ...</strong></span></p>', 'multiple_one', 29, 2, 'medium', 'a:2:{i:0;s:23:"Small, divided kingdoms";i:1;s:36:"One big kingdom with a central ruler";}', 'a:1:{i:0;s:1:"0";}', '<p>A typical Classic Maya polity was a small hierarchical state (ajawil, ajawlel, or ajawlil) headed by a hereditary ruler known as an ajaw (later k’uhul ajaw). Such kingdoms were usually no more than a capital city with its neighborhood and several lesser towns, although there were greater kingdoms, which controlled larger territories and extended patronage over smaller polities.</p>', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', NULL, NULL, NULL), (7, '<p><strong><span style="font-size: 13px;">When was the the first “Maya” settlements were established? </span></strong></p>', 'multiple_one', 29, 2, 'medium', 'a:3:{i:0;s:14:"Around 2800 BC";i:1;s:14:"Around 1800 BC";i:2;s:13:"Around 800 BC";}', 'a:1:{i:0;s:1:"1";}', '<p>While the Maya area was initially inhabited around the 10th millennium BC, the first clearly “Maya” settlements were established in approximately 1800 BC in Soconusco region of the Pacific Coast. This point in time, known as the Early Preclassic, was characterized by sedentary communities and the introduction of pottery and fired clay figurines.</p>', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', NULL, NULL, NULL), (8, '<p><span style="font-size: 13px;"><strong>The geographic position of Maya civilization was ...</strong></span></p>', 'multiple_one', 29, 2, 'medium', 'a:3:{i:0;s:13:"North America";i:1;s:15:"Central America";i:2;s:13:"South America";}', 'a:1:{i:0;s:1:"1";}', '<p>The geographic extent of the Maya civilization, known as the Maya area, extended throughout the northern Central American region, including the present-day nations of Guatemala, Belize, El Salvador, western Honduras , and the southern Mexican states of Chiapas, Tabasco, and the Yucatán Peninsula states of Quintana Roo, Campeche and Yucatán.</p>', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', NULL, NULL, NULL), (9, '<p><span style="font-size: 13px;">The Maya people disappeared ....</span></p>', 'multiple_one', 29, 2, 'medium', 'a:3:{i:0;s:31:"With the Classic period decline";i:1;s:43:"When spanish arrived and colonized America ";i:2;s:23:"Never, they still exist";}', 'a:1:{i:0;s:1:"2";}', '<p>The Maya peoples never disappeared, neither at the time of the Classic period decline nor with the arrival of the Spanish conquistadores and the subsequent Spanish colonization of the Americas. Today, the Maya and their descendants form sizable populations throughout the Maya area and maintain a distinctive set of traditions and beliefs that are the result of the merger of pre-Columbian and post-Conquest ideologies (and structured by the almost total adoption of Roman Catholicism)</p>', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', NULL, NULL, NULL), (10, '<span class="Apple-style-span" style="font-size: small">Programming can be tought directly through good programming books</span>', 'multiple_one', 31, 3, 'low', 'a:2:{i:0;s:4:"True";i:1;s:5:"False";}', 'a:1:{i:0;s:1:"1";}', '', NULL, NULL, NULL, NULL), (11, '<span class="Apple-style-span" style="font-size: small">Select all options that can delay the executation of a program</span>\r\n', 'multiple_many', 36, 3, 'medium', 'a:4:{i:0;s:17:"Unoptimized loops";i:1;s:21:"Too much Input-Output";i:2;s:7:"Logging";i:3;s:11:"Slow memory";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (12, '<span class="Apple-style-span" style="font-size: small">The most efficient way to debug is... (select those that apply)</span>\r\n', 'multiple_many', 32, 3, 'medium', 'a:4:{i:0;s:29:"By dividing the problem space";i:1;s:14:"By using a log";i:2;s:19:"By using a profiler";i:3;s:27:"By using garbage collection";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (13, '<span class="Apple-style-span" style="font-size: small">What is the best way to deal with poor programming code</span>\r\n', 'multiple_one', 31, 3, 'medium', 'a:3:{i:0;s:10:"Rewrite it";i:1;s:8:"Debug it";i:2;s:9:"Bundle it";}', 'a:1:{i:0;s:1:"2";}', 'Bundling poor code with good coding practices so you limit its effect to the rest of the system is usually most efficient than trying to debug it or rewrite it', NULL, NULL, NULL, NULL), (14, 'Which of the following are source control systems\r\n', 'multiple_many', 31, 3, 'medium', 'a:5:{i:0;s:3:"SVN";i:1;s:3:"CVS";i:2;s:3:"ERP";i:3;s:3:"HCD";i:4;s:3:"NGI";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', 'SVN= Subversioning<br />CVS= Concurrent Versioning System', NULL, NULL, NULL, NULL), (15, '<span class="Apple-style-span" style="font-size: small">The most efficient way to debug is... (select those that apply)</span>', 'multiple_many', 59, 4, 'medium', 'a:4:{i:0;s:29:"By dividing the problem space";i:1;s:14:"By using a log";i:2;s:19:"By using a profiler";i:3;s:27:"By using garbage collection";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (16, '<span class="Apple-style-span" style="font-size: small">Select all options that can delay the executation of a program</span>', 'multiple_many', 59, 4, 'medium', 'a:4:{i:0;s:17:"Unoptimized loops";i:1;s:21:"Too much Input-Output";i:2;s:7:"Logging";i:3;s:11:"Slow memory";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (17, 'To deal with performance problems you should...', 'multiple_one', 56, 4, 'medium', 'a:4:{i:0;s:37:"Find the few bottlenecks and fix them";i:1;s:63:"Fix as many as possible issues with varying degrees of benefits";i:2;s:28:"Buy more hardware and memory";i:3;s:29:"Build the system from scratch";}', 'a:1:{i:0;s:1:"0";}', '', NULL, NULL, NULL, NULL), (18, '<span class="Apple-style-span" style="font-size: small">Programming can be tought directly through good programming books</span>', 'multiple_one', 59, 4, 'low', 'a:2:{i:0;s:4:"True";i:1;s:5:"False";}', 'a:1:{i:0;s:1:"1";}', '', NULL, NULL, NULL, NULL), (19, '<span class="Apple-style-span" style="font-size: small">Programming can be tought directly through good programming books</span>', 'multiple_one', 78, 4, 'low', 'a:2:{i:0;s:4:"True";i:1;s:5:"False";}', 'a:1:{i:0;s:1:"1";}', '', NULL, NULL, NULL, NULL), (20, 'Which of the following are source control systems\r\n', 'multiple_many', 78, 4, 'medium', 'a:5:{i:0;s:3:"SVN";i:1;s:3:"CVS";i:2;s:3:"ERP";i:3;s:3:"HCD";i:4;s:3:"NGI";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (21, '<span class="Apple-style-span" style="font-size: small">Select all options that can delay the executation of a program</span>', 'multiple_many', 78, 4, 'medium', 'a:4:{i:0;s:17:"Unoptimized loops";i:1;s:21:"Too much Input-Output";i:2;s:7:"Logging";i:3;s:11:"Slow memory";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (22, '<span class="Apple-style-span" style="font-size: small">What is the best way to deal with poor programming code</span>\r\n', 'multiple_one', 78, 4, 'medium', 'a:3:{i:0;s:10:"Rewrite it";i:1;s:8:"Debug it";i:2;s:9:"Bundle it";}', 'a:1:{i:0;s:1:"2";}', '', NULL, NULL, NULL, NULL), (23, '<span class="Apple-style-span" style="font-size: small">The most efficient way to debug is... (select those that apply)</span>', 'multiple_many', 78, 4, 'medium', 'a:4:{i:0;s:29:"By dividing the problem space";i:1;s:14:"By using a log";i:2;s:19:"By using a profiler";i:3;s:27:"By using garbage collection";}', 'a:2:{i:0;s:1:"1";i:1;s:1:"1";}', '', NULL, NULL, NULL, NULL), (24, '<span class="Apple-style-span" style="font-style: italic">"Whenever you can you should avoid loops"</span>. This sentense is ...', 'multiple_one', 95, 5, 'medium', 'a:4:{i:0;s:5:"False";i:1;s:4:"True";i:2;s:15:"Most often true";i:3;s:16:"Most often false";}', 'a:1:{i:0;s:1:"0";}', 'Loops are a necessary evil and often the reason for slowing down programs. Whenever you can you should replace them with better solutions.', NULL, NULL, NULL, NULL), (25, '<p><span style="color: #000000; font-family: verdana,geneva;">In order to insert an image inside the content of a unit we have to follow a specific procedure. <br /></span></p>\r\n<p><span style="color: #000000; font-family: verdana,geneva;">Put the steps below in the correct order.</span></p>\r\n<p><span style="color: #000000; font-family: verdana,geneva;"><br /></span></p>', 'match', 1006, 6, 'medium', 'a:4:{i:0;s:8:"1st step";i:1;s:8:"2nd step";i:2;s:8:"3rd step";i:3;s:8:"4th step";}', 'a:4:{i:0;s:38:"We save the image file in our computer";i:1;s:83:"We upload the file in the platform, by using the function "Upload files and images"";i:2;s:73:"We place the mouse at the point of the text where we want to insert the i";i:3;s:102:"We open the file manager or we click on the Insert/edit image icon, we select the image and insert it.";}', '', 'a:4:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";}', 240, NULL, NULL), (26, '<p><span style="font-family: verdana,geneva;">Which of the following options can be defined for a course?</span></p>', 'multiple_one', 1005, 6, 'medium', 'a:4:{i:0;s:11:"Information";i:1;s:8:"Schedule";i:2;s:5:"Rules";i:3;s:16:"All of the above";}', 'a:1:{i:0;s:1:"3";}', '', 'a:4:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";}', 130, NULL, NULL), (27, '<p><span style="font-family: verdana,geneva;">A lesson may be part of a course <strong>and</strong> be available directly on the same time.</span></p>', 'true_false', 1005, 6, 'medium', '', 's:1:"0";', '<p><span style="font-family: verdana,geneva;">A lesson can be available <strong>either</strong> exclusively through a course <strong>or</strong> directly.</span><br /><br /></p>', 'N;', 60, NULL, NULL), (28, '<p><span style="font-family: verdana,geneva;"><strong>New</strong> lessons can be added by the :</span></p>', 'multiple_one', 1005, 6, 'medium', 'a:3:{i:0;s:13:"Administrator";i:1;s:9:"Professor";i:2;s:12:"Both of them";}', 'a:1:{i:0;s:1:"2";}', '<p><span style="font-family: verdana,geneva;">If the system''s administrator is allows it the professors can also add new lessons and courses.<br /></span></p>', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', 90, NULL, NULL), (29, '<p>In order for a lesson to be auto-complete , the professor must define:</p>', 'multiple_one', 1012, 6, 'medium', 'a:2:{i:0;s:24:"Content traversing rules";i:1;s:23:"Lesson completion rules";}', 'a:1:{i:0;s:1:"1";}', '', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 90, NULL, NULL), (30, '<p><span style="font-family: verdana,geneva;">Reports can be exported in ### and ### format.</span></p>', 'empty_spaces', 1013, 6, 'medium', '', 'a:2:{i:0;s:9:"excel|pdf";i:1;s:9:"excel|pdf";}', '', 'N;', 120, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (31, '<p><span style="font-family: verdana,geneva;">Professors are able to activate and de-activate lesson options and modules on will.</span></p>', 'true_false', 1009, 6, 'medium', '', 's:1:"1";', '', 'N;', 60, NULL, NULL), (32, '<p><span style="font-family: verdana,geneva;">Projects must have deadlines.</span></p>', 'true_false', 1006, 6, 'medium', '', 's:1:"1";', '', 'N;', 90, NULL, NULL), (33, '<p><span style="font-family: verdana,geneva;">Which of the following sentences is true about feedbacks?</span></p>', 'multiple_one', 1006, 6, 'medium', 'a:3:{i:0;s:85:"Feedbacks become part of the lesson content but they can not affect the lesson rules.";i:1;s:91:"Feedbacks can be part of the lesson rules but they don''t become part of the lesson content.";i:2;s:76:"Feedbacks become part of the lesson content and can affect the lesson rules.";}', 'a:1:{i:0;s:1:"2";}', '', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', 180, NULL, NULL), (34, '<p><span style="font-family: verdana,geneva;">Students are not allowed to send personal messages to other students.</span></p>', 'true_false', 1017, 6, 'medium', '', 's:1:"0";', '', 'N;', 60, NULL, NULL), (35, '<p><span style="font-family: verdana,geneva;">Which of the following types of files can we upload in eFront?</span></p>', 'multiple_one', 1006, 6, 'medium', 'a:7:{i:0;s:11:"Flash files";i:1;s:9:"mp3 files";i:2;s:9:"Pdf files";i:3;s:14:"SCORM packages";i:4;s:9:"mp4 files";i:5;s:9:"flv files";i:6;s:13:"all the above";}', 'a:1:{i:0;s:1:"6";}', '', 'a:7:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";i:5;s:0:"";i:6;s:0:"";}', 180, NULL, NULL), (36, '<p>Are we able to use a different theme per browser in eFront?</p>', 'multiple_one', 1020, 7, 'medium', 'a:2:{i:0;s:3:"Yes";i:1;s:2:"No";}', 'a:1:{i:0;s:1:"0";}', '', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 90, NULL, NULL), (37, '<p>eFront provides a mobile theme for mobile clients.</p>', 'true_false', 1020, 7, 'medium', '', 's:1:"1";', '', 'N;', 90, NULL, NULL), (38, '<p>Through the "Themes" function we can change the ### of the platform and the ### .</p>', 'empty_spaces', 1020, 7, 'medium', '', 'a:2:{i:0;s:6:"layout";i:1;s:5:"theme";}', '', 'N;', 180, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (39, '<p>Anyone is able to develop a module and install it in eFront, following the instructions provided by the eFront team.</p>', 'true_false', 1026, 7, 'medium', '', 's:1:"1";', '', 'N;', 90, NULL, NULL), (40, '<p>In order for a module to be available to the users it must get installed and activated by the ### .</p>', 'empty_spaces', 1026, 7, 'medium', '', 'a:1:{i:0;s:13:"administrator";}', '', 'N;', 150, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (41, '<p>When copying content from one lesson to another we can copy:</p>', 'multiple_many', 1027, 7, 'medium', 'a:5:{i:0;s:10:"some units";i:1;s:9:"all units";i:2;s:13:"the questions";i:3;s:11:"the surveys";i:4;s:12:"the glossary";}', 'a:5:{i:0;s:1:"1";i:1;s:1:"1";i:2;s:1:"1";i:3;s:1:"1";i:4;s:1:"1";}', '', 'a:5:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}', 240, 'a:1:{s:13:"answers_logic";s:0:"";}', NULL), (42, '<p>We can define that a course will be completed automatically according to its rules, but the certificates must always be issued manually.</p>', 'true_false', 1027, 7, 'medium', '', 's:1:"0";', '', 'N;', 150, NULL, NULL), (43, '<p>Certificates can be issued for a :</p>', 'multiple_one', 1027, 7, 'medium', 'a:3:{i:0;s:6:"lesson";i:1;s:6:"course";i:2;s:8:"category";}', 'a:1:{i:0;s:1:"1";}', '', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', 120, NULL, NULL), (44, '<p>Certificates may have expiration date.</p>', 'true_false', 1027, 7, 'medium', '', 's:1:"1";', '', 'N;', 90, NULL, NULL), (45, '<p>The SCORM data can be reviewed in eFront and are shown in reports.</p>', 'true_false', 1027, 7, 'medium', '', 's:1:"1";', '', 'N;', 120, NULL, NULL), (46, '<p>The PDF files uploaded as the content of the units open inside eFront.</p>', 'true_false', 1027, 7, 'medium', '', 's:1:"1";', '', 'N;', 150, NULL, NULL), (47, '<p>Select the types of fields that we can add in the user''s profile.</p>', 'multiple_many', 1034, 8, 'medium', 'a:5:{i:0;s:27:"only checkbox and text area";i:1;s:26:"only checkbox and text box";i:2;s:33:"checkbox , text box and text area";i:3;s:11:"select list";i:4;s:4:"date";}', 'a:3:{i:2;s:1:"1";i:3;s:1:"1";i:4;s:1:"1";}', '', 'a:5:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}', 270, 'a:1:{s:13:"answers_logic";s:0:"";}', NULL), (48, '<p>We are able to create new user types in eFront, based on :</p>', 'multiple_one', 1028, 8, 'medium', 'a:4:{i:0;s:45:"the professor and the administrator user type";i:1;s:21:"the student user type";i:2;s:40:"the student and the professor user types";i:3;s:51:"the administrator, professor and student user types";}', 'a:1:{i:0;s:1:"3";}', '', 'a:4:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";}', 180, NULL, NULL), (49, '<p>In order to enable payments you need to have a paypal account.</p>', 'true_false', 1030, 8, 'medium', '', 's:1:"1";', '', 'N;', 120, NULL, NULL), (50, '<p>The administrator can add (or remove) money to (from) a user''s account by changing his ### .</p>', 'empty_spaces', 1030, 8, 'medium', '', 'a:1:{i:0;s:7:"balance";}', '', 'N;', 300, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (51, '<p>In order to be able to ### between different accounts we have to connect them though our ### tab.</p>', 'empty_spaces', 1033, 8, 'medium', '', 'a:2:{i:0;s:6:"switch";i:1;s:7:"account";}', '', 'N;', 240, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (52, '<p>Which of the following sentences is true?</p>', 'multiple_one', 1039, 8, 'medium', 'a:3:{i:0;s:69:"The administrator and the supervisors are able to add skill gap tests";i:1;s:53:"Only the administrator is able to add skill gap tests";i:2;s:52:"Only the supervisors are able to add skill gap tests";}', 'a:1:{i:0;s:1:"1";}', '', 'a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}', 180, NULL, NULL), (53, '<p>Match the right pairs:</p>', 'drag_drop', 1035, 8, 'medium', 'a:2:{i:0;s:7:"Courses";i:1;s:7:"Lessons";}', 'a:2:{i:0;s:45:"Can be assigned to branches and job positions";i:1;s:37:"Can be assigned only to job positions";}', '', 'a:2:{i:0;s:0:"";i:1;s:0:"";}', 300, NULL, NULL), (54, '<p>We are able to search for users using ### or ### criteria.</p>', 'empty_spaces', 1038, 8, 'medium', '', 'a:2:{i:0;s:46:"organization|course|organizational|educational";i:1;s:46:"organization|course|organizational|educational";}', '', 'N;', 300, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (55, '<p>A branch may have several sub-branches underneath it.</p>', 'true_false', 1035, 8, 'medium', '', 's:1:"1";', '', 'N;', 90, NULL, NULL), (56, '<p>Before adding skills to the platform we have to create the skill ### .</p>', 'empty_spaces', 1029, 8, 'medium', '', 'a:1:{i:0;s:10:"categories";}', '', 'N;', 180, 'a:1:{s:11:"select_list";s:1:"0";}', NULL), (57, '<p>An employee may have several job positions in the same branch.</p>', 'true_false', 1037, 8, 'medium', '', 's:1:"0";', '', 'N;', 120, NULL, NULL), (58, '<p>A job description can have required ### and ### as well as associated ### and ### .</p>', 'empty_spaces', 1037, 8, 'medium', '', 'a:4:{i:0;s:15:"skills|training";i:1;s:15:"skills|training";i:2;s:15:"lessons|courses";i:3;s:15:"lessons|courses";}', '', 'N;', 300, 'a:1:{s:11:"select_list";s:1:"0";}', NULL); -- -------------------------------------------------------- -- -- Table structure for table `questions_to_skills` -- CREATE TABLE `questions_to_skills` ( `questions_id` mediumint(8) unsigned NOT NULL, `skills_ID` mediumint(8) unsigned NOT NULL, `relevance` int(1) DEFAULT '1', KEY `questions_id` (`questions_id`,`skills_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `questions_to_surveys` -- CREATE TABLE `questions_to_surveys` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `surveys_ID` mediumint(8) unsigned DEFAULT NULL, `type` varchar(40) DEFAULT NULL, `question` mediumtext, `answers` mediumtext, `created` int(10) unsigned DEFAULT NULL, `info` mediumtext, `father_ID` mediumint(8) unsigned DEFAULT NULL, PRIMARY KEY (`id`), KEY `surveys_ID` (`surveys_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `rules` -- CREATE TABLE `rules` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `content_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `rule_type` varchar(255) NOT NULL, `rule_content_ID` mediumint(8) unsigned DEFAULT '0', `rule_option` float DEFAULT '0', `lessons_ID` mediumint(8) unsigned DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- Dumping data for table `rules` -- INSERT INTO `rules` VALUES (1, '*', 0, 'serial', 0, 0, 2); -- -------------------------------------------------------- -- -- Table structure for table `scorm_data` -- CREATE TABLE `scorm_data` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `content_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `users_LOGIN` varchar(100) DEFAULT NULL, `timestamp` int(10) unsigned DEFAULT NULL, `lesson_location` text, `maxtimeallowed` varchar(255) DEFAULT NULL, `timelimitaction` varchar(255) DEFAULT NULL, `masteryscore` varchar(255) DEFAULT NULL, `datafromlms` text, `entry` varchar(255) NOT NULL DEFAULT '', `total_time` varchar(255) DEFAULT NULL, `comments` varchar(255) DEFAULT NULL, `comments_from_lms` text, `lesson_status` varchar(255) DEFAULT NULL, `score` varchar(255) DEFAULT NULL, `scorm_exit` varchar(255) DEFAULT NULL, `minscore` varchar(255) DEFAULT NULL, `maxscore` varchar(255) DEFAULT NULL, `suspend_data` text, `completion_threshold` varchar(255) DEFAULT NULL, `completion_status` varchar(255) DEFAULT NULL, `objectives` text, PRIMARY KEY (`id`), KEY `users_LOGIN` (`users_LOGIN`), KEY `scd_lesson_status` (`lesson_status`), KEY `scd_content_ID` (`content_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `search_invertedindex` -- CREATE TABLE `search_invertedindex` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `keyword` varchar(150) NOT NULL, PRIMARY KEY (`id`), KEY `keyword` (`keyword`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5410 ; -- -- Dumping data for table `search_invertedindex` -- INSERT INTO `search_invertedindex` VALUES (662, '\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n '), (719, '\r\n '), (649, '\r\n between'), (718, '\r\n c'), (654, '\r\n cost'), (721, '\r\n infinite'), (658, '\r\n nearer'), (661, '\r\n the'), (720, '\r\n \r\n \r\n '), (722, '\r\n \r\n \r\n \r\n \r\n we'), (104, '\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n'), (242, '\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n'), (376, '\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n'), (644, '\r\n \r\n \r\n \r\n \r\n here'), (374, '\r\n \r\n \r\n \r\n \r\n solution'), (736, '\r\n \r\n \r\n \r\n \r\n \r\n \r\n '), (315, '\r\n \r\n \r\n \r\n a'), (506, '\r\n \r\n \r\n \r\n every'), (79, '\r\n \r\n \r\n \r\n if'), (4866, '\r\n \r\n \r\n a'), (470, '\r\n \r\n \r\n dynamic'), (3188, '\r\n \r\n \r\n in'), (403, '\r\n \r\n \r\n methodology'), (2273, '\r\n \r\n \r\n some'), (294, '\r\n \r\n \r\n the'), (703, '\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n '), (558, '\r\n \r\n \r\n \r\n \r\n\r\n'), (375, '\r\n \r\n '), (520, '\r\n \r\n 1'), (330, '\r\n \r\n a'), (2597, '\r\n \r\n after'), (2835, '\r\n \r\n although'), (255, '\r\n \r\n an'), (724, '\r\n \r\n as'), (4973, '\r\n \r\n ask'), (2889, '\r\n \r\n at'), (3589, '\r\n \r\n beyond'), (2777, '\r\n \r\n but'), (2541, '\r\n \r\n contention'), (2201, '\r\n \r\n debugging'), (3714, '\r\n \r\n difficult'), (3703, '\r\n \r\n don'), (4692, '\r\n \r\n engineers'), (3994, '\r\n \r\n evaluate'), (4194, '\r\n \r\n everything'), (3974, '\r\n \r\n finally'), (368, '\r\n \r\n for'), (3064, '\r\n \r\n good'), (5080, '\r\n \r\n guy'), (4065, '\r\n \r\n having'), (3315, '\r\n \r\n however'), (4403, '\r\n \r\n humans'), (3032, '\r\n \r\n i'), (2173, '\r\n \r\n idealists'), (4310, '\r\n \r\n ideally'), (164, '\r\n \r\n if'), (4625, '\r\n \r\n improving'), (493, '\r\n \r\n in'), (2972, '\r\n \r\n it'), (4906, '\r\n \r\n just'), (4545, '\r\n \r\n knowing'), (143, '\r\n \r\n let'), (4297, '\r\n \r\n make'), (4629, '\r\n \r\n memory'), (3621, '\r\n \r\n most'), (3829, '\r\n \r\n non-engineers'), (3849, '\r\n \r\n non-programmers'), (4529, '\r\n \r\n note'), (4560, '\r\n \r\n obviously'), (2607, '\r\n \r\n often'), (410, '\r\n \r\n on'), (2358, '\r\n \r\n once'), (3720, '\r\n \r\n one'), (3157, '\r\n \r\n pad'), (3998, '\r\n \r\n plan'), (4482, '\r\n \r\n portability'), (4975, '\r\n \r\n praise'), (3688, '\r\n \r\n programmers'), (3010, '\r\n \r\n programming'), (3091, '\r\n \r\n really'), (2719, '\r\n \r\n representations'), (5101, '\r\n \r\n schedule'), (3639, '\r\n \r\n since'), (5198, '\r\n \r\n some'), (2412, '\r\n \r\n sometimes'), (2748, '\r\n \r\n space'), (4367, '\r\n \r\n sql'), (668, '\r\n \r\n suppose'), (225, '\r\n \r\n the'), (2958, '\r\n \r\n then'), (2513, '\r\n \r\n there'), (114, '\r\n \r\n this'), (32, '\r\n \r\n to'), (2857, '\r\n \r\n try'), (4328, '\r\n \r\n uml'), (4243, '\r\n \r\n understanding'), (4164, '\r\n \r\n usually'), (50, '\r\n \r\n we'), (2634, '\r\n \r\n what'), (425, '\r\n \r\n when'), (4178, '\r\n \r\n whether'), (3116, '\r\n \r\n while'), (3864, '\r\n \r\n with'), (3402, '\r\n \r\n writing'), (4351, '\r\n \r\n xml'), (3045, '\r\n \r\n you'), (4994, '\r\n \r\n your'), (4016, '\r\n \r\n •'), (207, '\r\n \r\n \r\n \r\n\r\n'), (708, '\r\n '), (232, '\r\n 2'), (237, '\r\n 3'), (3732, '\r\n <'), (2755, '\r\n a'), (3002, '\r\n actually'), (3429, '\r\n admittedly'), (3265, '\r\n after'), (3074, '\r\n and'), (3083, '\r\n as'), (3897, '\r\n because'), (4603, '\r\n best-case'), (3483, '\r\n but'), (2430, '\r\n called'), (3283, '\r\n consider'), (2980, '\r\n don'), (95, '\r\n during'), (419, '\r\n e'), (5210, '\r\n either'), (2902, '\r\n every'), (3717, '\r\n everyone'), (111, '\r\n example:'), (5016, '\r\n fire'), (3039, '\r\n first'), (2771, '\r\n garbage'), (4807, '\r\n hand'), (3818, '\r\n here'), (4152, '\r\n hopefully'), (3036, '\r\n however'), (3323, '\r\n i'), (3667, '\r\n if'), (2622, '\r\n in'), (3918, '\r\n is'), (4011, '\r\n it'), (2620, '\r\n leaving'), (4389, '\r\n legend'), (404, '\r\n let'), (2519, '\r\n logging'), (4124, '\r\n make'), (4013, '\r\n management'), (5150, '\r\n most'), (4222, '\r\n never'), (4679, '\r\n new'), (4134, '\r\n ninjaprogrammer'), (5157, '\r\n often'), (2377, '\r\n or'), (2188, '\r\n organizations'), (4527, '\r\n output'), (421, '\r\n p'), (2976, '\r\n people'), (3840, '\r\n precise'), (3121, '\r\n prepare'), (3192, '\r\n preparedness'), (3853, '\r\n programmers'), (4837, '\r\n pruning'), (2714, '\r\n representation'), (4962, '\r\n simply'), (4203, '\r\n since'), (4486, '\r\n software'), (3403, '\r\n study'), (2266, '\r\n such'), (2722, '\r\n techniques'), (2199, '\r\n that'), (2515, '\r\n the'), (2503, '\r\n there'), (731, '\r\n they'), (620, '\r\n this'), (3923, '\r\n though'), (2826, '\r\n to'), (2725, '\r\n transmitting'), (2844, '\r\n try'), (4872, '\r\n user'), (2899, '\r\n we'), (3413, '\r\n what'), (2332, '\r\n when'), (100, '\r\n which'), (4926, '\r\n working'), (2834, '\r\n you'), (2248, '\r\n •'), (208, '\r\n \r\n \r\n \r\n adjoining'), (244, '\r\n \r\n \r\n \r\n backtracking\r\n the'), (5145, '\r\n \r\n \r\n \r\n choosing'), (4317, '\r\n \r\n \r\n \r\n communication'), (378, '\r\n \r\n \r\n \r\n dijkstra'), (461, '\r\n \r\n \r\n \r\n dynamic'), (5, '\r\n \r\n \r\n \r\n floyd'), (619, '\r\n \r\n \r\n \r\n greed'), (440, '\r\n \r\n \r\n \r\n heuristic'), (2294, '\r\n \r\n \r\n \r\n how'), (580, '\r\n \r\n \r\n \r\n introduction\r\n in'), (560, '\r\n \r\n \r\n \r\n kruskal'), (2162, '\r\n \r\n \r\n \r\n learn'), (433, '\r\n \r\n \r\n \r\n minimoum'), (704, '\r\n \r\n \r\n \r\n minimum'), (665, '\r\n \r\n \r\n \r\n order'), (528, '\r\n \r\n \r\n \r\n prim'), (3555, '\r\n \r\n \r\n \r\n take'), (110, '\r\n \r\n \r\n \r\n traveling'), (3052, '\r\n \r\n \r\n \r\n why'), (1836, '\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nthe'), (927, '\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n'), (2022, '\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nthe'), (1960, '\r\n\r\n\r\n\r\n\r\n\r\n\r\na'), (2155, '\r\n\r\n\r\n\r\n\r\n\r\n\r\nbonampak'), (1711, '\r\n\r\n\r\n\r\n\r\n\r\n'), (1775, '\r\n\r\n\r\n\r\n\r\n\r\nearly'), (2061, '\r\n\r\n\r\n\r\n\r\n\r\ngeographical'), (1955, '\r\n\r\n\r\n\r\n\r\n'), (1337, '\r\n\r\n\r\n\r\nalthough'), (1166, '\r\n\r\n\r\n\r\nat'), (1522, '\r\n\r\n\r\n\r\nbuilding'), (1447, '\r\n\r\n\r\n\r\nclassic'), (1854, '\r\n\r\n\r\n\r\neach'), (1265, '\r\n\r\n\r\n\r\nin'), (1375, '\r\n\r\n\r\n\r\nit'), (1888, '\r\n\r\n\r\n\r\nmayanists'), (1293, '\r\n\r\n\r\n\r\nmost'), (1596, '\r\n\r\n\r\n\r\nnotable'), (1323, '\r\n\r\n\r\n\r\nscribes'), (1134, '\r\n\r\n\r\n\r\nsince'), (1918, '\r\n\r\n\r\n\r\nspanish'), (1092, '\r\n\r\n\r\n\r\nthe'), (1365, '\r\n\r\n\r\n\r\nthere'), (1799, '\r\n\r\n\r\n\r\nunlike'), (1409, '\r\n\r\n\r\n\r\nurban'), (1309, '\r\n\r\n\r\n\r\nwriting'), (1006, '\r\n\r\n'), (1033, '\r\n\r\nalso'), (5312, '\r\n\r\nanother'), (2075, '\r\n\r\narchaeological'), (2035, '\r\n\r\nas'), (1957, '\r\n\r\neach'), (905, '\r\n\r\neven'), (5307, '\r\n\r\nfirst'), (5371, '\r\n\r\nhe'), (5319, '\r\n\r\nin'), (878, '\r\n\r\nit'), (831, '\r\n\r\nmaya'), (1958, '\r\n\r\nmayanists'), (794, '\r\n\r\nmuch'), (901, '\r\n\r\nphilosophically'), (5388, '\r\n\r\nskills'), (5379, '\r\n\r\nsome'), (1959, '\r\n\r\nspanish'), (769, '\r\n\r\nthe'), (2092, '\r\n\r\nthere'), (5399, '\r\n\r\nyou'), (5291, '\r\nafter'), (1354, '\r\narchitecture\r\n\r\n\r\n\r\nas'), (1956, '\r\nart\r\n\r\na'), (929, '\r\nastronomy\r\n\r\nuniquely'), (5294, '\r\ncreate'), (5333, '\r\nefront'), (1713, '\r\npostclassic'), (5289, '\r\nresponsible'), (5304, '\r\nuse'), (1057, '\r\nwriting\r\n\r\n\r\n\r\nthe'), (5300, '\r\n \r\nin'), (168, '!=20!'), (5023, '10\r\n bad'), (2077, '1000'), (1715, '10th'), (1751, '1250'), (1734, '1450'), (1835, '1697'), (1051, '16th'), (5279, '16_exported'), (1833, '17th'), (5280, '17_exported'), (2068, '1800'), (5281, '18_exported'), (1251, '1950s'), (1252, '1970s'), (1292, '1987'), (906, '19th'), (239, '2\r\n \r\n in'), (4325, '2003'), (2154, '2005'), (1102, '2006'), (1096, '200–300'), (5278, '2013'), (1248, '20th'), (167, '21-1'), (1967, '250–900'), (887, '260-day'), (925, '260-day-calendar'), (1055, '3257'), (889, '365-day'), (3541, '39;\r\n \r\n use'), (4588, '39;\r\n \r\n \r\n \r\n\r\n'), (4671, '39;\r\n <'), (5134, '39;\r\n hard'), (5181, '39;\r\n seems'), (3453, '39;!\r\n \r\n \r\n \r\n\r\n'), (3763, '39;!\r\n <'), (727, '39;=v'), (2146, '39;eqchi'), (915, '39;iche'), (923, '39;ij'), (1965, '39;inich\r\n\r\n\r\n\r\n\r\n'), (2654, '39;ll'), (2884, '39;m'), (926, '39;olk'), (1287, '39;pilgrim'), (2741, '39;re'), (3599, '39;s\r\n any'), (2062, '39;s\r\n\r\n\r\n\r\n\r\n'), (144, '39;s'), (3860, '39;t\r\n have'), (3455, '39;t\r\n think'), (222, '39;t'), (2383, '39;ve'), (1745, '39;woj'), (4593, '39;``big'), (372, '4!=24'), (2830, '50-foot-invisible-scorpion-from-outer-space'), (3592, '60\r\n hours'), (226, ':\r\n \r\n 1'), (4993, ':\r\n \r\n what'), (711, ':\r\n '), (5374, ':\r\n\r\nhow'), (420, ':=cost'), (422, ':=the'), (714, '=0;\r\n '), (430, '=infinite'), (99, '=min'), (688, '=sum'), (3803, '?\r\n \r\n •'), (2213, 'a\r\n common'), (4063, 'a\r\n different'), (4602, 'a\r\n function'), (3485, 'a\r\n good'), (3927, 'a\r\n great'), (3169, 'a\r\n large'), (3561, 'a\r\n larger'), (2278, 'a\r\n little'), (3608, 'a\r\n manager'), (4192, 'a\r\n meeting'), (4898, 'a\r\n mockup'), (3802, 'a\r\n new'), (3528, 'a\r\n part'), (2501, 'a\r\n profiling'), (4936, 'a\r\n project'), (4892, 'a\r\n reason'), (4623, 'a\r\n small'), (2641, 'a\r\n system'), (4916, 'a\r\n very'), (4118, 'a\r\n way'), (4860, 'a\r\n well-designed'), (976, 'abaj'), (1142, 'abandoned'), (2691, 'abbreviated'), (5047, 'abilities'), (4250, 'ability\r\n to'), (2192, 'ability'), (2403, 'able\r\n to'), (1256, 'able'), (483, 'abort'), (699, 'aborts'), (3507, 'about\r\n the'), (5068, 'about\r\n this'), (90, 'about'), (3414, 'above'), (4600, 'absence'), (2432, 'absolute'), (3389, 'absolutely'), (2702, 'abstract'), (4429, 'abstraction\r\n abstraction'), (3481, 'abstraction'), (4666, 'abstraction<'), (4141, 'abstractions'), (4461, 'abstractly\r\n and'), (1539, 'abundant'), (3664, 'abuse'), (1253, 'accelerated'), (1607, 'accented'), (532, 'accept'), (604, 'acceptable'), (4463, 'accepted'), (1890, 'accepting'), (712, 'access'), (2539, 'accesses'), (4092, 'accessible'), (4467, 'accessors'), (1644, 'accompanied'), (1992, 'accompanying'), (3350, 'accomplish'), (3309, 'accomplishes\r\n far'), (3020, 'accomplishment'), (2005, 'accomplishments'), (1506, 'accordance'), (184, 'according'), (1629, 'account'), (2584, 'accounts'), (1052, 'accumulated'), (1054, 'accumulates'), (448, 'accurate'), (3071, 'accurately'), (2145, 'achí'), (2967, 'acquire'), (1391, 'acropolis'), (1760, 'across'), (2770, 'action'), (601, 'actions'), (5293, 'actions:\r\n\r\nadd'), (5341, 'actions:<'), (5314, 'activate'), (3054, 'active'), (1904, 'activities'), (3563, 'activity'), (5233, 'acts'), (4744, 'actual'), (453, 'actually'), (1484, 'added'), (2251, 'adding'), (5084, 'addition\r\n to'), (1553, 'addition'), (2473, 'additional'), (1331, 'additionally'), (2483, 'address'), (3908, 'addresses'), (4773, 'addressing'), (686, 'adds'), (2970, 'adequately'), (41, 'adjoining'), (1935, 'administrative'), (5290, 'administrator'), (5326, 'administrators'), (849, 'admirable'), (3995, 'admire'), (2886, 'admit\r\n i'), (3078, 'admit'), (1581, 'adobe'), (2139, 'adoption'), (4817, 'adult'), (4841, 'advanced\r\n programmer'), (1527, 'advanced'), (2118, 'advances'), (4928, 'advantage\r\n of'), (3154, 'advantage'), (3505, 'advantage:'), (4774, 'advantages'), (2442, 'advantages:\r\n \r\n •'), (5003, 'adventure'), (3038, 'advice'), (1914, 'aesthetic'), (3479, 'affect'), (3684, 'affected'), (4470, 'affecting'), (2926, 'affectionately'), (4566, 'affects\r\n the'), (4128, 'affects'), (834, 'affinities'), (2745, 'afford'), (2327, 'after\r\n '), (2368, 'after\r\n this'), (660, 'after'), (1308, 'afterlife'), (4366, 'again\r\n only'), (571, 'again'), (4864, 'against\r\n future'), (5246, 'against\r\n the'), (1801, 'against'), (812, 'aged'), (3198, 'agree\r\n on'), (3705, 'agree'), (4263, 'agreement'), (1976, 'agriculturally'), (1595, 'airy'), (1847, 'ajaw'), (1842, 'ajawil'), (1843, 'ajawlel'), (1844, 'ajawlil'), (529, 'algorithm\r\n at'), (6, 'algorithm\r\n in'), (561, 'algorithm\r\n the'), (379, 'algorithm\r\n this'), (4, 'algorithm'), (360, 'algorithm:'), (3792, 'algorithm?'), (441, 'algorithms\r\n the'), (2, 'algorithms'), (5404, 'align'), (1639, 'aligned'), (1690, 'aligning'), (4851, 'alive'), (3336, 'all\r\n your'), (4225, 'alleged'), (2805, 'allocate\r\n a'), (4637, 'allocate\r\n and'), (2672, 'allocate'), (2806, 'allocated\r\n and'), (2754, 'allocated'), (5393, 'allocates'), (2818, 'allocating'), (2621, 'allocation'), (4469, 'allow\r\n the'), (4932, 'allow\r\n them'), (2452, 'allow'), (2906, 'allowed'), (3201, 'allowing'), (4832, 'allows'), (1487, 'almost'), (4933, 'alone'), (1999, 'along'), (76, 'already'), (3042, 'also\r\n helps'), (147, 'also'), (1610, 'altars'), (3884, 'alter'), (4182, 'alternate'), (4102, 'alternative'), (1082, 'although'), (974, 'alto'), (1984, 'altun'), (537, 'always'), (1192, 'amatl'), (3301, 'ambiguous'), (2026, 'american'), (1133, 'americas'), (133, 'among'), (1145, 'amongst'), (4184, 'amount\r\n carefully'), (2437, 'amount'), (4655, 'amount<'), (5142, 'amplifies'), (4911, 'an\r\n athletic'), (4026, 'an\r\n entire'), (2388, 'an\r\n error'), (3166, 'an\r\n estimate'), (1003, 'analysis'), (2579, 'analyze'), (286, 'ancestor'), (785, 'ancient'), (3901, 'and\r\n a'), (5057, 'and\r\n boss'), (2971, 'and\r\n can'), (2268, 'and\r\n changing'), (2737, 'and\r\n computing'), (3698, 'and\r\n cordial'), (2610, 'and\r\n dividing'), (5079, 'and\r\n drink'), (2414, 'and\r\n fix'), (4478, 'and\r\n hence'), (2394, 'and\r\n how'), (4974, 'and\r\n make'), (4363, 'and\r\n parsing'), (3942, 'and\r\n quickly'), (3463, 'and\r\n that'), (2421, 'and\r\n then'), (2914, 'and\r\n we'), (3935, 'and\r\n weaknesses'), (3678, 'and\r\n whose'), (2253, 'and\r\n •'), (5321, 'and\r\nhow'), (5358, 'and<'), (3854, 'anecdotally'), (3287, 'angles'), (1314, 'animal'), (1534, 'animals'), (556, 'animated'), (2606, 'another\r\n two-fold'), (2107, 'another\r\n'), (17, 'another'), (4509, 'answer\r\n when'), (3311, 'answer'), (4510, 'answers'), (2222, 'anticipate'), (2555, 'anticipated'), (4237, 'any\r\n documents'), (4706, 'anybody'), (3585, 'anymore'), (3424, 'anyone'), (4433, 'anything\r\n except'), (2587, 'anything'), (3428, 'anyway'), (2896, 'apache™'), (4856, 'apart'), (2111, 'apogee'), (4931, 'apologize'), (150, 'apparently'), (4753, 'appeal'), (932, 'appear'), (682, 'appearance'), (2103, 'appeared'), (999, 'appears'), (557, 'applet:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n '), (400, 'appliance'), (2470, 'applicable'), (3274, 'application'), (5249, 'applications\r\n programmers'), (621, 'applied'), (4563, 'apply\r\n here'), (583, 'apply'), (500, 'applying'), (5102, 'appreciate\r\n what'), (3501, 'appreciate'), (5052, 'appreciated'), (3985, 'appreciation\r\n for'), (3159, 'approach\r\n doesn'), (1898, 'approach'), (4968, 'appropriate\r\n sides'), (766, 'appropriate'), (3686, 'appropriately'), (890, 'approximated'), (447, 'approximately'), (1589, 'arch'), (1311, 'archaeological'), (2013, 'archaeologists'), (1224, 'archaeology'), (2436, 'architects\r\n must'), (1394, 'architectural'), (1353, 'architecture'), (408, 'arcs'), (2657, 'are\r\n bottlenecks'), (2565, 'are\r\n first'), (4221, 'are\r\n great'), (3970, 'are\r\n many'), (2178, 'are\r\n not'), (3883, 'are\r\n saying'), (2477, 'are\r\n sprinkled'), (4425, 'are\r\n the'), (3795, 'are:\r\n \r\n •'), (519, 'are:'), (872, 'area'), (2046, 'areas'), (2648, 'argue'), (3813, 'arguing'), (4163, 'argument'), (3281, 'arguments'), (2207, 'arise\r\n places'), (2524, 'arise'), (2221, 'arises\r\n that'), (3689, 'arises'), (5041, 'armed'), (775, 'arms'), (2478, 'around\r\n risky'), (1089, 'around'), (209, 'array\r\n the'), (34, 'array'), (1136, 'arrival'), (1294, 'arrived'), (3472, 'arrogance'), (4346, 'arrows'), (4453, 'article'), (1972, 'artistic'), (866, 'artwork'), (4750, 'as\r\n early'), (4950, 'as\r\n personal'), (4972, 'as\r\n quickly'), (3300, 'as\r\n they'), (3412, 'as\r\n you'), (2246, 'as:\r\n \r\n •'), (3267, 'ascertain'), (2885, 'ashamed'), (309, 'asked'), (3308, 'asking'), (1525, 'aspect'), (835, 'aspects'), (2562, 'assert'), (2267, 'assertion'), (2238, 'assertions'), (3303, 'assign\r\n meaning'), (416, 'assign'), (2480, 'assigned'), (4424, 'assigning'), (4257, 'assignment'), (4423, 'assist'), (3624, 'associated\r\n with'), (751, 'associated'), (148, 'assume'), (710, 'assuming'), (2219, 'assumption'), (3098, 'assumptions'), (2593, 'assurance'), (3940, 'astonishing'), (1685, 'astronomers'), (995, 'astronomical'), (928, 'astronomy'), (4565, 'at\r\n all'), (2311, 'at\r\n the'), (4382, 'at\r\n which'), (2862, 'at\r\n your'), (2411, 'atomic'), (1651, 'atop'), (541, 'attached'), (2605, 'attack'), (365, 'attempt'), (3255, 'attempting'), (1351, 'attempts'), (3637, 'attend\r\n only'), (1502, 'attention'), (1825, 'attracted'), (4434, 'attraction'), (5222, 'attractive'), (3828, 'audience'), (5247, 'audience?'), (1221, 'authenticity'), (4337, 'author'), (3257, 'authority'), (5311, 'auto-completion'), (4358, 'automation'), (3296, 'available\r\n divination'), (1544, 'available'), (3163, 'average\r\n weighted'), (3415, 'average'), (2801, 'avoid'), (2700, 'avoiding'), (179, 'aware'), (4148, 'away\r\n with'), (2664, 'away'), (1470, 'axis'), (740, 'aztec'), (4829, 'baby\r\n bridge'), (88, 'back'), (285, 'backtrack'), (243, 'backtracking'), (4108, 'bad?\r\n \r\n a'), (3699, 'baits'), (1401, 'baktún\r\n\r\n\r\n\r\nthrough'), (3307, 'balance'), (876, 'balancing'), (808, 'ball'), (1498, 'ball-courts'), (1701, 'ball-game'), (1617, 'ballgame'), (2536, 'bandwidth'), (2088, 'bartolo'), (130, 'base'), (5225, 'based\r\n on'), (246, 'based'), (2441, 'basic'), (2969, 'basics'), (2085, 'basins'), (1039, 'basis'), (4275, 'bduf'), (4543, 'be\r\n a'), (4242, 'be\r\n accurately'), (4580, 'be\r\n afraid'), (4576, 'be\r\n an'), (4121, 'be\r\n asked'), (5000, 'be\r\n good'), (2855, 'be\r\n improperly'), (5116, 'be\r\n made'), (5056, 'be\r\n noticed'), (2241, 'be\r\n revealed'), (3904, 'be\r\n seen'), (4044, 'be\r\n spent'), (5078, 'be\r\n successful'), (3826, 'bearing\r\n in'), (2329, 'bearing'), (4823, 'bears'), (4551, 'beautiful'), (4332, 'beauty'), (2999, 'became'), (37, 'because'), (3991, 'become\r\n a'), (2764, 'become\r\n garbage'), (4447, 'become\r\n longer'), (240, 'become'), (5211, 'becomes\r\n your'), (4445, 'becomes'), (5185, 'becoming\r\n familiar'), (3886, 'becoming'), (3458, 'been\r\n asked'), (4450, 'been\r\n spent'), (77, 'been'), (3644, 'before\r\n they'), (2647, 'before\r\n you'), (250, 'before'), (1571, 'began'), (3393, 'begin\r\n looking'), (4286, 'begin'), (2345, 'beginner'), (2433, 'beginners\r\n must'), (2274, 'beginners'), (4430, 'beginning\r\n programmers'), (127, 'beginning'), (2296, 'begins'), (2887, 'begun'), (5061, 'behave'), (3681, 'behavior'), (2259, 'behind'), (4587, 'being\r\n able'), (4631, 'being\r\n used'), (938, 'being'), (858, 'belief'), (2134, 'beliefs'), (3365, 'believe\r\n they'), (1114, 'believe'), (745, 'believed'), (2029, 'belize'), (4741, 'belligerently'), (326, 'belong'), (45, 'belonging'), (234, 'belongs'), (314, 'below'), (5184, 'belt'), (3340, 'benefit\r\n of'), (2633, 'benefit'), (3319, 'benefits'), (228, 'beside'), (3641, 'best\r\n for'), (183, 'best'), (1772, 'best-known'), (4415, 'better\r\n than'), (5066, 'better\r\n to'), (5001, 'better\r\n yet'), (607, 'better'), (2451, 'between\r\n statements'), (4596, 'between\r\n ``constant-time'), (12, 'between'), (5172, 'beyond\r\n your'), (1341, 'beyond'), (476, 'bigger'), (2723, 'binary'), (1210, 'bishop'), (4609, 'bit\r\n goes'), (3037, 'bits'), (1318, 'black'), (971, 'blanca'), (2172, 'blind'), (2465, 'blindness'), (1107, 'block'), (2673, 'blocks'), (1509, 'bodies'), (863, 'bodily'), (3778, 'body'), (1985, 'bonampak'), (4498, 'bonking'), (1202, 'book'), (4404, 'book-reading'), (1279, 'books'), (52, 'boolean'), (4191, 'bored'), (4558, 'boring'), (3150, 'born'), (2646, 'boss'), (5153, 'bosses'), (817, 'both'), (5019, 'bothered'), (3090, 'bothers'), (2604, 'bottleneck'), (2581, 'bottlenecks'), (4009, 'bought'), (1194, 'bound'), (2094, 'boundaries'), (3944, 'boundary'), (4345, 'boxes'), (3293, 'brain'), (4175, 'brains'), (910, 'branch'), (5400, 'branches'), (3262, 'brand'), (472, 'break'), (3553, 'breaks'), (1250, 'breakthroughs'), (2460, 'brevity'), (1349, 'bricks'), (4801, 'bridge'), (4831, 'bridges'), (4674, 'brief'), (4027, 'bright'), (3957, 'brimstone'), (3895, 'bring'), (2594, 'brings'), (4914, 'broken'), (1313, 'brushes'), (2677, 'buffer'), (4079, 'bugginess'), (2828, 'bugs\r\n the'), (2413, 'bugs'), (3751, 'bugs<'), (2500, 'build'), (2695, 'building\r\n a'), (2512, 'building'), (1483, 'buildings'), (5143, 'builds'), (1422, 'built'), (3704, 'bully'), (1329, 'bundles'), (2595, 'burden\r\n with'), (3206, 'burden'), (2078, 'burial'), (1663, 'burials'), (2530, 'burn\r\n up'), (1206, 'burnt'), (4695, 'business\r\n effectively'), (4032, 'business\r\n plan;'), (3279, 'business'), (2668, 'but\r\n also'), (3114, 'but\r\n an'), (2747, 'but\r\n eventually'), (5050, 'but\r\n i'), (3473, 'but\r\n will'), (3535, 'button'), (4022, 'buying'), (4676, 'buyouts'), (2859, 'by\r\n building'), (59, 'c:\r\n \r\n a'), (2017, 'cacao'), (2783, 'cache'), (2710, 'caching\r\n brings'), (2699, 'caching\r\n is'), (2697, 'caching'), (3665, 'caffeine'), (1982, 'calakmul'), (3193, 'calamity'), (465, 'calculate'), (174, 'calculations'), (603, 'calculations!\r\n \r\n all'), (1041, 'calendar'), (757, 'calendars'), (405, 'call'), (47, 'called'), (4480, 'caller'), (4471, 'calling'), (2492, 'calls'), (742, 'came'), (1787, 'campaign'), (1800, 'campaigns'), (2034, 'campeche'), (3418, 'can\r\n actually'), (2800, 'can\r\n be'), (3252, 'can\r\n easily'), (3890, 'can\r\n often'), (4133, 'can\r\n plan'), (4621, 'can\r\n sometimes'), (3162, 'can;'), (984, 'cancer'), (1993, 'cancuen'), (1370, 'candelaria'), (373, 'candidate'), (484, 'candidates'), (5207, 'cannot\r\n be'), (4216, 'cannot\r\n get'), (2170, 'cannot'), (5390, 'capability'), (4335, 'capable'), (3938, 'capacity'), (1708, 'capital'), (2453, 'captured'), (1472, 'cardinal'), (203, 'care'), (3997, 'career'), (1501, 'careful'), (3498, 'carefully\r\n separate'), (2577, 'carefully'), (2052, 'caribbean'), (4698, 'carry'), (5011, 'carrying'), (1608, 'carved'), (1106, 'cascajal'), (194, 'case'), (5188, 'cases\r\n stronger'), (592, 'cases'), (4633, 'catastrophic'), (3543, 'catches'), (5285, 'categories'), (2245, 'categorized'), (2140, 'catholicism'), (1951, 'cause'), (836, 'caused'), (1453, 'causeways'), (4146, 'causing'), (1366, 'cave'), (1372, 'cave-origin'), (5051, 'caveat:'), (807, 'caves'), (2904, 'cease'), (752, 'celestial'), (1560, 'cement'), (2015, 'cenote'), (1476, 'cenotes'), (656, 'center'), (1139, 'centers'), (861, 'central'), (1895, 'centrality'), (173, 'centuries'), (907, 'century'), (1177, 'ceramic'), (1598, 'ceremonial'), (749, 'ceremonies'), (263, 'certain'), (4490, 'certainly\r\n a'), (3111, 'certainly'), (5384, 'certifications\r\n'), (5378, 'certifications'), (737, 'chaac'), (4169, 'challenge'), (4945, 'challenged'), (3721, 'challenges'), (5034, 'challenging'), (1625, 'chambers'), (912, 'chan'), (485, 'chance'), (550, 'change'), (2408, 'changed'), (2596, 'changes'), (2402, 'changing'), (3894, 'chaos'), (501, 'chapter'), (5407, 'chapters'), (3933, 'character'), (3953, 'characteristic'), (80, 'characteristics'), (1717, 'characterized'), (841, 'characters'), (5398, 'chart'), (1028, 'charts'), (2798, 'cheap'), (101, 'cheaper'), (201, 'cheapest'), (691, 'check'), (3517, 'checked'), (625, 'checking'), (3670, 'cherish'), (302, 'chessboard'), (779, 'chest'), (1374, 'chiapas'), (1725, 'chichen'), (241, 'child'), (287, 'children'), (1231, 'chips'), (5175, 'choice\r\n of'), (504, 'choice'), (489, 'choices'), (235, 'choose'), (187, 'chooses'), (3441, 'choosing'), (199, 'chosen'), (911, 'christianity'), (1990, 'chunchucmil'), (2756, 'chunk'), (1862, 'ch’e’n'), (572, 'circle'), (3268, 'circumstance'), (2845, 'circumstances'), (122, 'cities'), (125, 'city'), (146, 'city-base'), (1978, 'city-centered'), (1743, 'city-states'), (2087, 'cival'), (2108, 'civilization\r\n\r\nthe'), (733, 'civilization'), (1012, 'civilizations'), (3200, 'clarifies'), (4502, 'clarify\r\n exactly'), (5087, 'clarify\r\n in'), (2420, 'clarify'), (3891, 'clarity'), (2872, 'class'), (4405, 'class-taking'), (1343, 'classes'), (1466, 'classic'), (869, 'classical'), (1065, 'classified'), (1335, 'clay'), (5194, 'clean'), (2683, 'clear'), (5090, 'clear-headedness'), (1987, 'clearly'), (5086, 'clients'), (2042, 'climate'), (450, 'close'), (750, 'closely'), (2736, 'closer'), (1654, 'closest'), (49, 'closure'), (4948, 'clothing'), (958, 'clue'), (4910, 'coach'), (2071, 'coast'), (1729, 'coba'), (3661, 'cocaine'), (4436, 'code\r\n brevity'), (2511, 'code\r\n is'), (3454, 'code\r\n it'), (3478, 'code\r\n should'), (3497, 'code\r\n with'), (2185, 'code'), (3969, 'code---and'), (3426, 'code-level'), (3447, 'code;\r\n •'), (3764, 'code<'), (789, 'codecs'), (3527, 'coded'), (992, 'codex'), (1317, 'codex-style'), (1205, 'codices'), (1233, 'codices;'), (3152, 'coding'), (3399, 'cold'), (1750, 'collapse'), (2189, 'colleagues'), (5395, 'collect'), (3029, 'collecting'), (2772, 'collection'), (1925, 'collections'), (1805, 'collective'), (2766, 'collector'), (4590, 'college'), (1739, 'colonial'), (2126, 'colonization'), (5223, 'color\r\n for'), (3977, 'color'), (231, 'column'), (1671, 'comb'), (3663, 'combat'), (135, 'combination'), (594, 'combinations'), (384, 'combined'), (1680, 'combs'), (87, 'come'), (944, 'comes'), (3645, 'comfortable'), (3992, 'comfortably'), (3406, 'command'), (1400, 'commemorate'), (2419, 'comment'), (1930, 'commerce'), (3058, 'commercial\r\n project'), (3215, 'commit'), (4211, 'commitment'), (4388, 'commitment;'), (3499, 'committed'), (3520, 'committing'), (1010, 'common'), (1599, 'commonly'), (3185, 'communicate'), (4339, 'communicated'), (3128, 'communicating\r\n with'), (2689, 'communicating'), (4189, 'communication\r\n in'), (3320, 'communication'), (2073, 'communities'), (1078, 'community'), (3643, 'commute\r\n from'), (4199, 'companies\r\n do'), (4400, 'companies\r\n would'), (2187, 'companies'), (2206, 'company'), (3175, 'company-wide'), (4107, 'company?\r\n \r\n 10'), (4105, 'company?\r\n \r\n 9'), (2688, 'compared'), (3958, 'comparing'), (608, 'comparison'), (4030, 'compelling'), (1742, 'competing'), (4485, 'compiler'), (2681, 'compilers\r\n and'), (1131, 'complete'), (4315, 'completed'), (4247, 'completely\r\n that'), (1075, 'completely'), (4058, 'completely?\r\n \r\n it'), (5299, 'completes'), (5292, 'completing'), (4296, 'completion\r\n of'), (4283, 'completion'), (1132, 'complex'), (3537, 'complex:'), (1399, 'complexes'), (3798, 'complexity\r\n and'), (2175, 'complexity'), (4624, 'complicate'), (555, 'complicated'), (2554, 'component'), (4055, 'component?\r\n \r\n •'), (5186, 'components\r\n in'), (4048, 'components'), (4907, 'composer'), (2459, 'compromise'), (2518, 'computation'), (4592, 'computational'), (5218, 'compute'), (3777, 'computer\r\n science\r\n there'), (3021, 'computer\r\n science'), (4638, 'computer\r\n science<'), (2514, 'computer'), (4539, 'computers\r\n and'), (599, 'computers'), (2533, 'computing'), (3630, 'concentrate'), (994, 'concentration'), (1018, 'concept'), (2963, 'conception'), (106, 'concepts'), (2410, 'conceptually'), (726, 'concerned'), (1201, 'concertina-style'), (4253, 'concise'), (2776, 'concision\r\n cheaply'), (4276, 'concision'), (716, 'conclusion'), (3224, 'concrete'), (2856, 'concurrency'), (2874, 'concurrent\r\n evaluation'), (4506, 'concurrent'), (4517, 'concurrently'), (337, 'condition'), (2843, 'conditions'), (2983, 'conduct'), (1225, 'conducted'), (2563, 'confidence'), (5214, 'confidently'), (2440, 'configurable'), (1638, 'configurations'), (823, 'configured'), (4491, 'confine'), (1086, 'confined'), (3700, 'conflict'), (3668, 'conflicts'), (2208, 'conform'), (4740, 'confronting'), (3043, 'confused'), (3434, 'confusing'), (3896, 'confusion'), (1332, 'conjunction'), (354, 'connect'), (399, 'connected'), (576, 'connecting'), (424, 'connection'), (65, 'connections'), (723, 'connective'), (478, 'connects'), (4714, 'connotation'), (481, 'conquer'), (1744, 'conquered'), (1161, 'conquest'), (1884, 'conquests'), (1809, 'conquistador'), (1794, 'conquistadores'), (1150, 'conquistadors'), (3290, 'cons'), (4757, 'conscientious'), (4034, 'conscious'), (3459, 'consciously'), (4262, 'consensual'), (3191, 'consensus'), (4966, 'consent'), (626, 'consequences'), (2591, 'consider\r\n the'), (269, 'consider'), (5045, 'considerably'), (83, 'consideration'), (3794, 'considerations'), (2576, 'considered\r\n more'), (129, 'considered'), (4035, 'considering'), (1905, 'considers'), (94, 'consist'), (1556, 'consisted'), (4620, 'consistency'), (1403, 'consistent'), (1624, 'consisting'), (517, 'consists'), (1869, 'constant'), (4905, 'constantly\r\n changes'), (1517, 'constantly'), (2676, 'constants'), (948, 'constellation'), (824, 'constellations'), (4896, 'construct'), (436, 'constructed'), (335, 'construction'), (1597, 'constructions\r\n\r\n\r\n\r\n'), (1531, 'constructions'), (331, 'constructs'), (5089, 'consultant'), (4201, 'consultants\r\n use'), (4200, 'consultants'), (4657, 'consultants<'), (1943, 'consumed'), (3646, 'contagious'), (538, 'contain'), (5125, 'container\r\n over'), (5126, 'container'), (303, 'containing'), (544, 'contains'), (5383, 'content\r\nhow'), (1264, 'content'), (2558, 'contention'), (4528, 'contention?'), (1347, 'contexts'), (4249, 'contingency'), (4097, 'continuation?\r\n \r\n 5'), (2142, 'continue'), (1722, 'continued'), (1262, 'continues'), (1196, 'continuous'), (1831, 'continuously'), (5085, 'contractors'), (339, 'contrary'), (1489, 'contrasted'), (4029, 'contribute'), (3986, 'contribution'), (2300, 'contrived\r\n compared'), (3490, 'control\r\n source'), (1797, 'control'), (3766, 'control<'), (311, 'controlled'), (307, 'controls'), (3867, 'conversation\r\n focuses'), (3875, 'conversation'), (4336, 'conveying'), (3219, 'convince'), (2645, 'convincing'), (3697, 'cool'), (4540, 'cooperating'), (1950, 'copan'), (1981, 'copán'), (2708, 'copies'), (2703, 'copy'), (1588, 'corbel'), (1519, 'core'), (2164, 'cornerstone'), (4946, 'corny'), (5077, 'correct\r\n vision'), (322, 'correct'), (4984, 'correction'), (4365, 'correctness-checking'), (1856, 'correspond'), (547, 'corresponding'), (956, 'corresponds'), (1945, 'cosmic'), (800, 'cosmos'), (38, 'cost'), (26, 'costs'), (4023, 'costs?\r\n •'), (1187, 'cotinifolia'), (4285, 'could\r\n never'), (153, 'could'), (1377, 'count'), (2608, 'counting'), (5192, 'coupling'), (5155, 'courage'), (549, 'course'), (5296, 'courses\r\n\r\n '), (5288, 'courses'), (5344, 'courses<'), (1707, 'court'), (867, 'courtly'), (809, 'courts'), (1628, 'courtyard;'), (2829, 'cousin'), (2059, 'cover'), (388, 'covered'), (3669, 'coworkers'), (2609, 'cows'), (2877, 'cpus'), (3789, 'crack'), (3382, 'crap'), (2310, 'crash'), (2366, 'crash?’'), (2317, 'crashed'), (2308, 'crashes'), (2210, 'crashing'), (4550, 'create\r\n artifacts'), (586, 'create'), (1481, 'created'), (4288, 'creates'), (2255, 'creating'), (2795, 'creation'), (5232, 'creative'), (2302, 'creativity'), (3810, 'criminal'), (5220, 'crisp'), (610, 'criteria'), (2271, 'critical'), (4795, 'criticism'), (4980, 'criticize'), (1574, 'crucial'), (1557, 'crushed'), (914, 'cruz'), (2706, 'crystal\r\n clear'), (4702, 'cube'), (5405, 'cultivate'), (2097, 'cultural'), (2114, 'culturally'), (1939, 'culture'), (2009, 'cultures'), (1740, 'current'), (4805, 'currently'), (3095, 'customer'), (2495, 'customers'), (5306, 'customize'), (888, 'cycle'), (754, 'cycles'), (746, 'cyclical'), (4738, 'damage'), (1237, 'damaged'), (2711, 'danger'), (1792, 'dangerous'), (1000, 'data'), (2693, 'database\r\n queries'), (2537, 'database'), (4376, 'databases'), (1095, 'date'), (4235, 'date;'), (1024, 'dates'), (5182, 'daunting'), (2888, 'dawned'), (3158, 'day---but'), (3126, 'day;'), (3145, 'days\r\n documenting'), (1044, 'days'), (4493, 'dbms'), (5315, 'deactivate'), (4853, 'dead'), (669, 'deadline'), (666, 'deadlines\r\n we'), (664, 'deadlines'), (2546, 'deadlock\r\n is'), (2544, 'deadlock'), (2457, 'deal'), (3130, 'dealing\r\n with'), (4301, 'dealing'), (2763, 'deallocate'), (2815, 'deallocated'), (2821, 'deallocating'), (947, 'deals'), (814, 'death'), (4880, 'debacle'), (4793, 'debate'), (2163, 'debug\r\n debugging'), (2161, 'debug'), (3730, 'debug<'), (2322, 'debugger'), (2200, 'debugging'), (1240, 'decayed'), (3658, 'deceptive\r\n in'), (2379, 'decide\r\n which'), (2361, 'decide'), (1246, 'deciphered'), (1241, 'decipherment'), (4000, 'decision\r\n an'), (4012, 'decision\r\n because'), (4155, 'decision\r\n even'), (3711, 'decision\r\n have'), (3277, 'decision'), (4646, 'decision<'), (4004, 'decisions'), (359, 'declaration'), (2147, 'declared'), (1141, 'decline'), (4617, 'decode'), (3122, 'deconstructing'), (1620, 'decorated'), (1633, 'decoration'), (3218, 'decrease'), (4066, 'decreases'), (1692, 'dedicated'), (4688, 'deep'), (4713, 'deeper'), (3626, 'deeply'), (5276, 'default'), (5283, 'defaultca4k2r11'), (1616, 'defeated'), (4099, 'defection'), (3613, 'defenses'), (1464, 'defensive'), (3617, 'defensively'), (40, 'define'), (20, 'defined'), (4353, 'defining'), (3181, 'definition'), (1741, 'degenerated'), (1419, 'degree'), (2232, 'delay\r\n between'), (230, 'delete'), (233, 'deleted'), (4151, 'delicately'), (5035, 'delineated'), (5098, 'deliver\r\n something'), (5094, 'deliver'), (4840, 'delivered'), (3397, 'demand'), (460, 'demands'), (4809, 'demo'), (934, 'demonstrate'), (860, 'demonstrated'), (4109, 'demonstrates'), (5141, 'demoralizing'), (4299, 'demos'), (2112, 'densely'), (4384, 'dent'), (4578, 'department\r\n or'), (4251, 'depend\r\n on'), (2991, 'depend'), (4046, 'dependence\r\n modern'), (4045, 'dependence'), (4648, 'dependence<'), (2740, 'dependent'), (511, 'depending'), (650, 'depends'), (1998, 'depict'), (784, 'depicted'), (1963, 'depicting'), (1325, 'depicts'), (3140, 'depleted'), (3056, 'deployment'), (3656, 'depression'), (3339, 'derive'), (3322, 'derived'), (2128, 'descendants'), (1921, 'describe'), (1450, 'described'), (1307, 'describes'), (2001, 'describing'), (4900, 'description'), (5408, 'descriptions\r\n\r\n'), (4202, 'deserve'), (3915, 'deserves'), (4347, 'design\r\n drawings'), (1410, 'design\r\n\r\n\r\n\r\nas'), (1449, 'design'), (2337, 'design:\r\n as'), (4492, 'designated'), (3926, 'designed'), (4018, 'designed?\r\n •'), (2953, 'designing'), (1823, 'designs'), (4106, 'desirable'), (3902, 'desire'), (5330, 'desired'), (3299, 'desires'), (631, 'despite'), (573, 'destroy'), (1207, 'destroyed'), (5114, 'detailed'), (3868, 'details'), (3146, 'detectable'), (960, 'detected'), (155, 'determine'), (3223, 'determines'), (3297, 'determining'), (3072, 'develop\r\n software'), (1462, 'develop'), (1017, 'developed'), (3549, 'developers'), (3401, 'developing\r\n code'), (5297, 'developing'), (4115, 'development\r\n time\r\n software'), (4652, 'development\r\n time<'), (1716, 'development'), (3187, 'devilishly'), (4239, 'devote'), (3921, 'devoted'), (4726, 'devoutly'), (327, 'diagonal'), (308, 'diagonals'), (1425, 'dictated'), (2726, 'dictionary'), (2505, 'dictum'), (2309, 'didn'), (1211, 'diego'), (4824, 'dies'), (2816, 'differ'), (4628, 'difference\r\n and'), (4595, 'difference'), (3824, 'different\r\n from'), (5173, 'different\r\n language'), (567, 'different'), (2095, 'differentiate'), (5062, 'differently:\r\n \r\n •'), (5179, 'difficult\r\n as'), (4812, 'difficult\r\n communication'), (3723, 'difficult\r\n person'), (119, 'difficult'), (961, 'diffuse'), (2117, 'diffusion'), (23, 'digraph'), (377, 'dijkstra'), (4521, 'dimension---such'), (299, 'dimensioned'), (2349, 'dimensions'), (3316, 'diminishes'), (4422, 'dinner'), (1159, 'dire'), (64, 'direct'), (223, 'directed'), (392, 'direction'), (1503, 'directional'), (4049, 'directly\r\n under'), (398, 'directly'), (4147, 'disagree'), (3695, 'disagreement\r\n but'), (2093, 'disagreement'), (1875, 'disappeared'), (5204, 'discern'), (4077, 'discouraged'), (2602, 'discover'), (1586, 'discovered'), (1657, 'discoveries'), (4879, 'discovering\r\n that'), (832, 'discrete'), (582, 'discuss'), (4967, 'discussed'), (3232, 'discussion'), (3647, 'disease'), (4813, 'disheartened'), (3077, 'dishonest'), (4725, 'disillusion'), (2692, 'disk'), (1924, 'dispersed'), (1614, 'display'), (1156, 'displayed'), (3112, 'displease'), (1222, 'disputed'), (5140, 'disrespectful'), (5013, 'dissatisfaction'), (5009, 'dissatisfied'), (1941, 'disseminated'), (2007, 'distance'), (1683, 'distances'), (2011, 'distant'), (1887, 'distinct'), (4584, 'distinction'), (1405, 'distinctions'), (2132, 'distinctive'), (1986, 'distribution'), (3676, 'disturbing'), (2962, 'diverged'), (1903, 'diverse'), (1719, 'diversity'), (480, 'divide'), (507, 'divided'), (3284, 'divination'), (3256, 'divine'), (990, 'diving'), (1451, 'division'), (4965, 'do\r\n backtrack'), (3552, 'do\r\n no'), (3622, 'do\r\n that'), (3467, 'document\r\n the'), (3378, 'document'), (3385, 'documentation\r\n gives'), (3151, 'documentation\r\n takes'), (2209, 'documentation'), (1650, 'documented'), (3416, 'documenting'), (3417, 'documents'), (202, 'does'), (636, 'doesn'), (4458, 'dogma'), (2981, 'dogmatic'), (4557, 'doing\r\n ugly'), (4705, 'doing\r\n what'), (2916, 'doing\r\n when'), (2586, 'doing'), (822, 'doings'), (4526, 'dominant'), (811, 'dominated'), (505, 'done'), (2997, 'done:'), (4391, 'door'), (1689, 'doorways'), (2838, 'doubt'), (2638, 'down'), (3719, 'downs'), (969, 'draconnis'), (1533, 'draft'), (1359, 'dramatic'), (4626, 'dramatically'), (629, 'drastic'), (313, 'drawing'), (4331, 'drawings'), (991, 'dresden'), (3240, 'drivel'), (5162, 'driven'), (3542, 'drivers'), (3726, 'duck'), (3691, 'ducked'), (4186, 'duration'), (282, 'during'), (3631, 'duties'), (3212, 'duty'), (1906, 'dwellings'), (401, 'dynamic'), (1885, 'dynastic'), (1297, 'dynasties'), (1858, 'dynasty'), (2091, 'dzibilchaltun'), (1636, 'e-groups'), (4053, 'each\r\n component'), (2817, 'each\r\n kind'), (3125, 'each\r\n small'), (124, 'each'), (3611, 'eager\r\n to'), (3108, 'eager'), (1093, 'earliest'), (1148, 'early'), (805, 'earth'), (2494, 'easier\r\n than'), (3430, 'easier'), (280, 'easily'), (457, 'easy'), (1764, 'eckixil'), (1928, 'economic'), (5295, 'edit'), (5238, 'editors'), (2986, 'edsger'), (4929, 'educational'), (4205, 'educators\r\n in-house'), (1728, 'edzná'), (4635, 'effect'), (2570, 'effective\r\n to'), (3394, 'effective'), (2171, 'effectively'), (3551, 'effectively;'), (3805, 'effectively?\r\n \r\n if'), (883, 'effects'), (2684, 'efficient'), (2572, 'efficiently'), (3375, 'effort\r\n made'), (469, 'effort'), (4098, 'effort?\r\n \r\n 6'), (5302, 'efront\r\ncreate'), (5275, 'efront'), (5350, 'efront<'), (1061, 'egyptian'), (2836, 'eight'), (574, 'either'), (5324, 'elearning'), (2992, 'electronic'), (4808, 'electronically'), (1575, 'element'), (35, 'elements'), (2055, 'elevated'), (618, 'elevation'), (3546, 'eliminate'), (2380, 'eliminated'), (1342, 'elite'), (2987, 'eloquently'), (4707, 'else\r\n tells'), (566, 'else'), (2663, 'else?'), (2936, 'email\r\n threads'), (3216, 'embarrassed'), (4987, 'embarrassing'), (5243, 'embedded\r\n languages'), (5174, 'embedded'), (5245, 'embedding'), (1902, 'embodiment'), (4820, 'embryo'), (1894, 'emphasis'), (5082, 'emphasized'), (1838, 'empire\r\n\r\n\r\n\r\n\r\n\r\n'), (1979, 'empire'), (1802, 'empires'), (2272, 'employ'), (5406, 'employee'), (4207, 'employees\r\n are'), (3331, 'employees'), (2911, 'emptied'), (4448, 'empty'), (4059, 'encapsulate'), (3796, 'encapsulated'), (3482, 'encapsulation'), (1705, 'enclosed'), (2728, 'encoded'), (2731, 'encoding'), (2037, 'encompassed'), (1763, 'encompassing'), (2655, 'encounter'), (1879, 'encountered'), (3506, 'encourage'), (4861, 'endpoint'), (701, 'ends'), (3914, 'energy'), (3724, 'engaged'), (3015, 'engaging'), (3141, 'engineer'), (4847, 'engineering\r\n team'), (4014, 'engineering'), (3134, 'engineers'), (3313, 'enjoying\r\n your'), (1541, 'enormous'), (2580, 'enough\r\n to'), (1548, 'enough'), (4508, 'enough?'), (5392, 'ensuring'), (2851, 'enter'), (5386, 'enterprise'), (4431, 'enthusiasm'), (3107, 'enthusiastic'), (2211, 'entire'), (1459, 'entirely'), (833, 'entities'), (1866, 'entity'), (4113, 'entrepreneur'), (4001, 'entrepreneurial'), (4799, 'entrepreneurs\r\n who'), (2446, 'environment'), (3838, 'environments'), (1271, 'epigrapher'), (2119, 'epigraphy'), (391, 'equal'), (4730, 'equated'), (987, 'equidistant'), (1643, 'equinoxes'), (301, 'equivalent'), (2081, 'erected'), (5230, 'erotic'), (4513, 'erratic'), (5169, 'erroneous'), (2382, 'error\r\n i'), (1053, 'error'), (3524, 'error;'), (3738, 'error<'), (2167, 'errors'), (1688, 'especially'), (3033, 'essay'), (3492, 'essential'), (1782, 'establish'), (1471, 'established'), (1911, 'establishing'), (3220, 'estimate\r\n relatively'), (3102, 'estimate\r\n the'), (1168, 'estimate'), (3182, 'estimated\r\n individually'), (3177, 'estimated'), (5132, 'estimates\r\n will'), (3082, 'estimates'), (3051, 'estimation'), (5103, 'ethic'), (1038, 'europe'), (1137, 'europeans'), (3804, 'evaluate'), (3793, 'evaluated\r\n carefully'), (3211, 'evaluated'), (4020, 'evaluating'), (4041, 'evaluation'), (251, 'even'), (3640, 'evenings'), (2359, 'evenly'), (1640, 'events'), (1871, 'eventual'), (4443, 'eventuality'), (2575, 'eventually'), (3495, 'ever\r\n lost'), (1662, 'ever'), (4999, 'every\r\n other'), (72, 'every'), (3354, 'everybody\r\n there'), (5010, 'everybody'), (157, 'everyone'), (2842, 'everything'), (930, 'evidence'), (845, 'evil'), (1408, 'evolution'), (5195, 'evolve'), (4886, 'evolved\r\n from'), (1500, 'evolved'), (1518, 'evolving'), (1043, 'exactly'), (4991, 'exaggerated'), (176, 'examination'), (427, 'examine'), (252, 'examined'), (332, 'examines'), (2169, 'examining\r\n it'), (2386, 'examining'), (3226, 'example\r\n the'), (165, 'example'), (438, 'examples'), (1677, 'exceed'), (674, 'exceeded'), (1622, 'exceedingly'), (2937, 'except'), (4982, 'exception:'), (3836, 'exceptions'), (1169, 'excess'), (2123, 'exchange'), (4848, 'excited'), (1002, 'exclusively'), (2228, 'execute'), (2236, 'executed'), (2263, 'executes'), (2244, 'executing'), (545, 'execution'), (3325, 'executive'), (3616, 'executives'), (1793, 'exercise'), (4939, 'exercising'), (2791, 'exhausted\r\n in'), (2793, 'exhausted'), (175, 'exhausting'), (431, 'exist'), (5254, 'existing\r\n language'), (66, 'existing'), (2373, 'exists'), (709, 'expand'), (16, 'expansion'), (2990, 'expcs'), (499, 'expect'), (680, 'expectable'), (288, 'expected'), (1779, 'expeditions'), (2686, 'expense\r\n for'), (2508, 'expense'), (3747, 'expense<'), (2463, 'expensive'), (2344, 'experience'), (3431, 'experienced'), (3050, 'experiment\r\n simple---you'), (2284, 'experiment'), (2989, 'experimental\r\n science'), (3012, 'experimental'), (2198, 'experimentation'), (2985, 'experiments\r\n the'), (2984, 'experiments'), (3035, 'experiments;'), (3755, 'experiments<'), (3270, 'expert'), (3833, 'experts\r\n on'), (4246, 'experts'), (3034, 'explain'), (2988, 'explained'), (4718, 'explains'), (641, 'explanation'), (5042, 'explicitly\r\n what'), (2762, 'explicitly'), (2279, 'exploratory'), (2742, 'explore\r\n it'), (5334, 'explore'), (4183, 'explored'), (588, 'exponent'), (4468, 'exposed'), (4794, 'exposes\r\n you'), (3984, 'express'), (4153, 'expressed'), (2669, 'expression'), (1267, 'extant'), (1837, 'extend'), (1852, 'extended'), (1759, 'extending'), (1659, 'extensive'), (3550, 'extensively'), (1258, 'extent'), (1720, 'external'), (3596, 'extra'), (3590, 'extraordinary'), (3907, 'extreme\r\n programming'), (2729, 'extreme'), (554, 'extremely'), (3715, 'eyes'), (3075, 'face'), (463, 'faced'), (5209, 'facetious'), (4745, 'facilitate'), (4323, 'facillitate'), (394, 'fact'), (1821, 'factor'), (4248, 'fail'), (2960, 'failed'), (2611, 'failing'), (3282, 'fails'), (5002, 'failure\r\n in'), (2552, 'failure'), (5005, 'failures'), (3591, 'fair'), (4348, 'fairly'), (1946, 'fall'), (5241, 'fallen'), (1045, 'falls'), (3386, 'false'), (4326, 'familiarity'), (2504, 'famous'), (4272, 'fancy\r\n project'), (3776, 'fancy'), (1361, 'fantastic'), (2905, 'far\r\n as'), (5231, 'fascination'), (1604, 'fashion'), (451, 'fast'), (5024, 'faster\r\n if'), (2499, 'faster'), (3660, 'fatigue'), (4985, 'fault'), (4581, 'favor'), (4579, 'favors'), (2275, 'fear'), (4234, 'feature'), (1421, 'features'), (4835, 'feedback'), (5303, 'feedbacks'), (4825, 'feeds'), (2289, 'feel'), (1667, 'feet'), (5242, 'fell'), (4889, 'fiat'), (4712, 'fiction'), (589, 'fictional'), (1186, 'ficus'), (1260, 'field'), (1812, 'fierce'), (1378, 'fifty-two'), (5092, 'fight'), (5111, 'fighting'), (4525, 'figure\r\n out'), (862, 'figure'), (1609, 'figures'), (2074, 'figurines'), (2694, 'file'), (2912, 'fill\r\n up'), (2778, 'fill'), (628, 'final'), (93, 'finally'), (3060, 'finance'), (5096, 'financial'), (2466, 'find\r\n the'), (28, 'find'), (494, 'finding'), (1124, 'findings'), (182, 'finds'), (4613, 'fine'), (3979, 'finish'), (3516, 'finished'), (1563, 'finishing'), (955, 'fire'), (1348, 'fired'), (4678, 'firings'), (4601, 'firm'), (3005, 'firmly'), (19, 'first'), (5158, 'firsthand'), (2651, 'five'), (3582, 'fixed'), (2398, 'fixes'), (2387, 'fixing'), (871, 'flat'), (3366, 'flatters'), (4769, 'flawed'), (3934, 'flaws'), (2671, 'floating'), (1756, 'flores'), (1723, 'flourish'), (3, 'floyd'), (5121, 'fluid'), (1457, 'focus'), (2331, 'focused'), (1899, 'focuses'), (2675, 'fold'), (1198, 'folded'), (945, 'folk'), (3292, 'follow'), (685, 'followed'), (96, 'following'), (729, 'following:'), (266, 'follows'), (3519, 'for\r\n anybody'), (4039, 'for\r\n building'), (4298, 'for:'), (321, 'forbiddingly'), (3377, 'force'), (4961, 'forced'), (3213, 'forcefully'), (877, 'forces'), (2353, 'foreign\r\n code'), (563, 'forest'), (1822, 'forestalling'), (2335, 'forget'), (4409, 'forgiving'), (2879, 'forgot'), (513, 'form'), (4418, 'formal\r\n training'), (4330, 'formal'), (4319, 'formally'), (4789, 'format'), (3990, 'formation'), (2105, 'formative'), (1232, 'formerly'), (97, 'formula'), (1940, 'formulated'), (5076, 'formulating'), (1463, 'fortress-like'), (78, 'found'), (1605, 'foundation'), (4684, 'founded'), (1047, 'four'), (4806, 'fourpronged\r\n approach:'), (1219, 'fourth'), (1277, 'fraction'), (1226, 'fragments'), (4375, 'franca'), (2476, 'free'), (2799, 'freeing'), (2769, 'frees'), (2929, 'french'), (2051, 'frequent'), (4976, 'frequently'), (1474, 'fresh-water'), (5237, 'friend'), (2205, 'from\r\n a'), (3251, 'from\r\n the'), (30, 'from'), (4274, 'front'), (2630, 'fruit'), (2635, 'fruit?'), (3887, 'frustrated\r\n with'), (262, 'fulfill'), (257, 'fulfilled'), (587, 'fulfills'), (1280, 'full'), (4870, 'full:\r\n \r\n i'), (387, 'fully'), (4387, 'fun\r\n test'), (382, 'function'), (2871, 'functional\r\n programming'), (2875, 'functional'), (1631, 'functionality'), (590, 'functions'), (2177, 'fundamental'), (1306, 'funeral'), (341, 'further'), (487, 'furthermore'), (5110, 'fuss'), (527, 'future'), (939, 'fuzzy'), (2193, 'gain'), (3155, 'gained\r\n by'), (672, 'gained'), (3477, 'gained?\r\n \r\n in'), (2767, 'garbage\r\n collector'), (2759, 'garbage'), (4754, 'gather'), (1456, 'gathering'), (3779, 'gee-whiz\r\n stuff'), (4137, 'gem:\r\n \r\n remember'), (2002, 'genealogy'), (3859, 'general\r\n and'), (105, 'general'), (1190, 'generally'), (4393, 'generated'), (1165, 'generations'), (569, 'genetic'), (5006, 'gentle\r\n as'), (5031, 'gentle'), (1223, 'genuine'), (1122, 'geographic'), (1865, 'geographical'), (1737, 'geographically'), (1413, 'geography'), (4843, 'germ'), (5212, 'gets\r\n most'), (2571, 'gets'), (254, 'getting'), (2908, 'giant\r\n problem---unless'), (3263, 'gigantic'), (197, 'give'), (137, 'given'), (103, 'gives'), (486, 'giving'), (3183, 'global'), (5305, 'glossary\r\n'), (5332, 'glossary'), (5352, 'glossary<'), (954, 'glowing'), (1081, 'glyphs'), (2357, 'go\r\n wrong'), (3865, 'goals'), (813, 'gods'), (68, 'goes'), (2589, 'going'), (1818, 'gold'), (3408, 'golden'), (844, 'good'), (4104, 'good?\r\n \r\n 8'), (3536, 'good?'), (2932, 'goodness!'), (2016, 'goods'), (1495, 'governmental'), (4314, 'gradually'), (1344, 'graffiti'), (4456, 'graham'), (1703, 'grand'), (1672, 'grandiose'), (3871, 'granted'), (91, 'graph'), (215, 'graphs'), (3856, 'great\r\n opportunity'), (1418, 'great'), (1515, 'greater'), (4399, 'greatest'), (616, 'greed'), (456, 'greediness'), (1, 'greedy'), (534, 'greek'), (1040, 'gregorian'), (1434, 'grew'), (297, 'grid'), (1493, 'grid-like'), (1220, 'grolier'), (4125, 'ground'), (3830, 'grounded'), (1648, 'group'), (1926, 'grouped'), (1747, 'groups'), (3980, 'grow'), (3508, 'growing'), (5206, 'grown'), (4821, 'grows'), (4983, 'growth\r\n or'), (4836, 'growth'), (350, 'gt;-1'), (348, 'gt;-2'), (670, 'gt;0'), (349, 'gt;1'), (347, 'gt;2'), (346, 'gt;3'), (149, 'gt;c'), (31, 'gt;j'), (418, 'gt;v'), (329, 'gt;±'), (445, 'guarantee'), (5069, 'guard'), (918, 'guatemala'), (1786, 'guatemalan'), (2846, 'guess'), (5308, 'guide'), (2010, 'gulf-coast'), (4660, 'h1>\r\n a'), (4667, 'h1>\r\n abstraction'), (4647, 'h1>\r\n an'), (4645, 'h1>\r\n assume'), (4656, 'h1>\r\n carefully'), (3773, 'h1>\r\n computer'), (3731, 'h1>\r\n debugging'), (4654, 'h1>\r\n disagreement'), (5273, 'h1>\r\n embedding'), (4641, 'h1>\r\n engineers'), (3758, 'h1>\r\n estimation'), (4643, 'h1>\r\n evaluating'), (3748, 'h1>\r\n for'), (3739, 'h1>\r\n i'), (4662, 'h1>\r\n integration'), (3765, 'h1>\r\n it'), (4665, 'h1>\r\n learn'), (3743, 'h1>\r\n learning'), (3762, 'h1>\r\n life'), (3741, 'h1>\r\n logging'), (3750, 'h1>\r\n memory'), (4649, 'h1>\r\n modern'), (3744, 'h1>\r\n most'), (5267, 'h1>\r\n nietschze'), (3760, 'h1>\r\n respect'), (4653, 'h1>\r\n software'), (3746, 'h1>\r\n sometimes'), (3767, 'h1>\r\n source'), (4668, 'h1>\r\n stress'), (3752, 'h1>\r\n the'), (4639, 'h1>\r\n there'), (5271, 'h1>\r\n time-to-market'), (3754, 'h1>\r\n to'), (3769, 'h1>\r\n unit'), (4658, 'h1>\r\n use'), (4651, 'h1>\r\n using'), (3771, 'h1>\r\n when'), (3775, 'h1>\r\n you'), (5055, 'habits'), (5149, 'hacker'), (4867, 'hafernik'), (1315, 'hair'), (4103, 'half'), (1910, 'halls'), (4927, 'hand'), (3184, 'handle'), (4150, 'handled'), (1424, 'haphazardly'), (2915, 'happen'), (4700, 'happening'), (396, 'happens'), (5054, 'happenstance'), (4568, 'happy'), (3850, 'hard\r\n even'), (2443, 'hard'), (3031, 'hard-to-repeat'), (3400, 'hard:'), (1551, 'hardened'), (2424, 'harder'), (4941, 'hardest'), (2690, 'hardware\r\n device'), (2682, 'hardware'), (2996, 'harm'), (5075, 'harmoniously'), (3318, 'has:'), (2781, 'hash'), (1804, 'hasten'), (4758, 'hates'), (2556, 'have\r\n a'), (3693, 'have\r\n something'), (4161, 'have\r\n the'), (3242, 'have\r\n thought'), (2378, 'have\r\n to'), (357, 'have'), (4803, 'haven'), (568, 'having'), (4586, 'head'), (1330, 'headdresses'), (1845, 'headed'), (1615, 'heads'), (3568, 'health'), (4839, 'healthful'), (4934, 'healthy\r\n teamwork'), (5097, 'healthy'), (2753, 'heap'), (4748, 'hear\r\n you'), (3359, 'hear'), (5259, 'hear<'), (3946, 'heard'), (3314, 'hearing'), (782, 'heart'), (950, 'hearths'), (3961, 'heat'), (1508, 'heavenly'), (1656, 'heavens'), (3603, 'heavy'), (1883, 'hegemonic'), (1601, 'height'), (1444, 'heights'), (777, 'held'), (3353, 'hell'), (4265, 'help'), (2561, 'helpful'), (2330, 'helps'), (2758, 'hence'), (3449, 'her;\r\n and\r\n •'), (413, 'here'), (1846, 'hereditary'), (611, 'herein'), (2151, 'heritage'), (3196, 'herself\r\n and'), (112, 'heuristic'), (2240, 'hidden'), (4464, 'hide'), (4459, 'hiding'), (1840, 'hierarchical'), (259, 'hierarchy'), (2000, 'hieroglyphic'), (1305, 'hieroglyphics'), (1058, 'hieroglyphs'), (1938, 'high'), (4913, 'high-performing'), (2636, 'higher'), (993, 'highest'), (917, 'highlands'), (1319, 'highlights'), (1035, 'highly'), (617, 'hill'), (1438, 'hills'), (3030, 'hint'), (2864, 'hints'), (3916, 'hire'), (3949, 'hired'), (4680, 'hirings'), (3569, 'historical'), (1773, 'historiography'), (1714, 'history\r\n\r\n\r\n\r\nduring'), (1966, 'history\r\n\r\nthe'), (2064, 'history\r\n\r\nwhile'), (2063, 'history'), (4497, 'hitting'), (5187, 'hodgepodge;'), (2239, 'hold'), (1937, 'holy'), (3566, 'home\r\n computer'), (3565, 'home'), (3772, 'home<'), (1521, 'homes'), (3288, 'homework'), (3650, 'homicidal'), (2031, 'honduras'), (3104, 'honest'), (3076, 'honestly'), (4428, 'honesty'), (5139, 'hoodwinked'), (3217, 'hopefully\r\n in'), (4213, 'hopefully\r\n your'), (2965, 'hopefully'), (4223, 'hopes'), (3855, 'horrible'), (4878, 'horror'), (3597, 'hour'), (2837, 'hours'), (4086, 'house'), (1621, 'housed'), (1896, 'household'), (1933, 'households'), (1578, 'houses'); INSERT INTO `search_invertedindex` VALUES (3099, 'how\r\n obvious'), (2959, 'how\r\n the'), (696, 'however'), (2922, 'html'), (1291, 'hudson'), (2730, 'huffman'), (771, 'human'), (2152, 'humanity'), (4515, 'humans'), (1022, 'hundreds'), (2048, 'hurricanes'), (4531, 'hurt'), (3040, 'hypothesis'), (2328, 'i\r\n find'), (5144, 'i\r\n hope'), (1645, 'iconographic'), (393, 'idea'), (864, 'ideal'), (4440, 'idealists:'), (2390, 'ideally'), (3360, 'ideas'), (1094, 'identifiably-maya'), (3165, 'identify'), (1488, 'identity'), (2137, 'ideologies'), (4699, 'if\r\n nothing'), (3388, 'if\r\n someone'), (4212, 'if\r\n the'), (2304, 'if\r\n there'), (3371, 'if\r\n you'), (5337, 'iframe><'), (2746, 'ignore'), (2833, 'ignored'), (458, 'ignores'), (3654, 'illness'), (1263, 'illuminate'), (4289, 'illusion'), (2917, 'illustrates'), (4834, 'image'), (1352, 'imitate'), (4076, 'immature\r\n using'), (4075, 'immature'), (4650, 'immature<'), (4280, 'immediate'), (1510, 'immediately'), (3996, 'impact\r\n on'), (3712, 'impact'), (1160, 'impacts'), (4746, 'impede'), (3027, 'imperfect\r\n knowledge'), (2190, 'imperfect'), (2191, 'imperfectly\r\n documented'), (3006, 'implanted\r\n in'), (2824, 'implement'), (2721, 'implementation'), (4139, 'implementations'), (218, 'implemented'), (3135, 'implicitly'), (3672, 'implies'), (5376, 'import'), (27, 'importance'), (4426, 'important\r\n skills'), (3963, 'important\r\n than'), (3053, 'important\r\n to'), (39, 'important'), (3756, 'important<'), (3432, 'importantly\r\n however'), (4010, 'importantly'), (2159, 'imported_lesson'), (3079, 'impossibility\r\n of'), (5203, 'impossible\r\n it'), (3062, 'impossible\r\n to'), (3073, 'impossible'), (5272, 'impossible<'), (2527, 'impractical'), (3609, 'impress'), (3376, 'impression'), (1443, 'impressive'), (2549, 'improper'), (2733, 'improve'), (2720, 'improved'), (2599, 'improvement'), (2400, 'improvement;'), (1564, 'improvements'), (2578, 'improving'), (4408, 'in\r\n a'), (4340, 'in\r\n it'), (3462, 'in\r\n order'), (5017, 'in\r\n public'), (2797, 'in\r\n the'), (4955, 'in\r\n this'), (2362, 'in\r\n which'), (4309, 'in\r\n your'), (4024, 'in?\r\n \r\n you'), (2547, 'inability'), (3518, 'inactive\r\n and'), (850, 'inappropriate'), (741, 'inca'), (4096, 'incentive'), (1135, 'inception'), (698, 'inclining'), (951, 'include'), (3023, 'include:\r\n \r\n •'), (886, 'included'), (364, 'includes'), (1090, 'including'), (5120, 'incompressible'), (3433, 'inconsistent'), (2057, 'incorporate'), (4070, 'incorporated\r\n into'), (3809, 'increase\r\n performance'), (366, 'increase'), (2775, 'increases'), (1718, 'increasing'), (1889, 'increasingly'), (1389, 'indeed'), (3671, 'independence'), (4156, 'independent\r\n and'), (1427, 'independent'), (1016, 'independently'), (2614, 'index'), (1327, 'indicating'), (2680, 'indices'), (1807, 'indigenous'), (370, 'indirect'), (4396, 'indistinguishable'), (4944, 'individual\r\n both'), (1170, 'individual'), (4893, 'individually'), (1152, 'individuals'), (363, 'inductive'), (4561, 'industries'), (3909, 'inefficiency;'), (3782, 'inefficient'), (3623, 'inertia'), (3952, 'inessential'), (1952, 'inevitable'), (2218, 'inevitably'), (2623, 'inexpert'), (715, 'infinite'), (908, 'influence'), (2106, 'influenced'), (904, 'influences'), (4762, 'inform\r\n everyone'), (2522, 'inform'), (4195, 'informal'), (3306, 'information\r\n sources\r\n respect'), (3759, 'information\r\n sources<'), (2438, 'information\r\n that'), (488, 'information'), (2428, 'informative'), (4281, 'informing'), (2303, 'ingenuity'), (1634, 'inhabitants'), (2065, 'inhabited'), (4964, 'initial'), (429, 'initialization'), (533, 'initialized'), (57, 'initializes'), (1824, 'initially'), (4785, 'initiate'), (1780, 'initiated'), (5240, 'initiates'), (1336, 'inkpots'), (2618, 'inner'), (4080, 'inoperability'), (4522, 'input\r\n rate'), (2507, 'input'), (247, 'inquisition'), (756, 'inscribed'), (1019, 'inscriptions'), (4171, 'insecure'), (575, 'insert'), (343, 'inserted'), (646, 'inside'), (5118, 'insight'), (3465, 'insist'), (3390, 'insists'), (3249, 'install'), (1429, 'instance'), (1585, 'instances'), (2713, 'instantaneously'), (2298, 'instead\r\n it'), (1042, 'instead'), (3989, 'instigate'), (1383, 'instigated'), (4909, 'instrument'), (2395, 'insufficiently'), (2873, 'insured'), (1214, 'intact'), (2150, 'intangible'), (671, 'integer'), (1699, 'integral'), (1417, 'integrate'), (3999, 'integrating'), (3817, 'integration'), (4021, 'integration?\r\n •'), (3028, 'integrity'), (1971, 'intellectual'), (2813, 'intelligence'), (3692, 'intelligent'), (5088, 'intend'), (2416, 'intended'), (1977, 'intensive'), (4887, 'intentional'), (2384, 'intentionally'), (2184, 'interact'), (2116, 'interaction'), (4355, 'interchange'), (1158, 'interest'), (977, 'interested'), (4784, 'interesting'), (1868, 'interestingly'), (5166, 'interests\r\n of'), (3786, 'interface'), (4140, 'interfaces'), (1458, 'interior'), (4591, 'intermediate\r\n programmer'), (2422, 'intermediate'), (2827, 'intermittent'), (3347, 'intern'), (526, 'internal'), (3234, 'internet'), (3673, 'interpersonal'), (1091, 'interpretation'), (3238, 'interpretation:'), (759, 'interpreting'), (829, 'intersection'), (3962, 'interview\r\n it'), (3960, 'interview'), (3968, 'interviewee'), (3913, 'interviewees\r\n evaluating'), (3912, 'interviewees'), (4642, 'interviewees<'), (3936, 'interviewers'), (3924, 'interviewing'), (3839, 'intimate'), (5060, 'intimately'), (3843, 'intimidated'), (4538, 'into\r\n memory'), (3618, 'into\r\n what'), (578, 'into'), (579, 'introduction'), (4598, 'intuit'), (3683, 'inured'), (1920, 'invariably'), (964, 'invented'), (4033, 'invest'), (4575, 'invested'), (3119, 'investigation'), (4921, 'invoke'), (3627, 'involved'), (2233, 'involves'), (4677, 'ipos'), (4383, 'irrelevant'), (4612, 'is\r\n about'), (4333, 'is\r\n both'), (2482, 'is\r\n currently'), (4196, 'is\r\n done'), (4145, 'is\r\n hard'), (3067, 'is\r\n impossible'), (4227, 'is\r\n not'), (4759, 'is\r\n nothing'), (4472, 'is\r\n perhaps'), (3605, 'is\r\n programmers'), (3579, 'is\r\n serious'), (2423, 'is\r\n sometimes'), (2510, 'is\r\n spent'), (3172, 'is\r\n the'), (3544, 'is\r\n very'), (2342, 'is\r\n where'), (4842, 'is\r\n your'), (717, 'is:\r\n \r\n \r\n \r\n \r\n '), (328, 'is:\r\n \r\n v'), (86, 'is:\r\n a'), (687, 'is:\r\n k'), (4131, 'isolate'), (279, 'isolated'), (5033, 'issue\r\n from'), (3816, 'issue'), (4772, 'issues\r\n you'), (2509, 'issues'), (3423, 'it\r\n clear'), (4149, 'it\r\n disagreement'), (2739, 'it\r\n for'), (5248, 'it\r\n help?'), (4088, 'it\r\n is'), (4306, 'it\r\n should'), (3634, 'it\r\n takes'), (4089, 'it:\r\n \r\n 1'), (4535, 'it;\r\n no'), (3439, 'it;\r\n •'), (5256, 'it?\r\n \r\n \r\n \r\n\r\n'), (5274, 'it?\r\n <'), (3132, 'item'), (1942, 'items'), (291, 'itself'), (1726, 'itza'), (1758, 'itzá'), (816, 'itzamna'), (344, 'j:=v'), (2020, 'jade'), (1120, 'january'), (2895, 'java™'), (367, 'jk+1'), (5064, 'job;'), (4862, 'jobs'), (1367, 'jolja'), (139, 'journey'), (2369, 'judge'), (2966, 'judgment\r\n that'), (2417, 'judgment'), (1049, 'julian'), (2282, 'jump;'), (1679, 'jungle'), (193, 'just'), (5081, 'kawasaki'), (1684, 'keen'), (159, 'keep'), (924, 'keeper'), (3049, 'keeping'), (1592, 'kept'), (3812, 'keys'), (4394, 'keystrokes'), (774, 'killed'), (2628, 'kind'), (3900, 'kindness'), (2265, 'kinds'), (1897, 'king'), (1855, 'kingdom'), (1769, 'kingdoms'), (1151, 'knew'), (2995, 'knife'), (2269, 'know'), (5071, 'knowing\r\n what'), (902, 'knowing'), (4177, 'knowledge\r\n changes'), (935, 'knowledge'), (4413, 'knowledge?'), (116, 'known'), (4573, 'knows'), (3131, 'knuckleheads'), (2090, 'komchen'), (559, 'kruskal'), (1693, 'kukulcan'), (1848, 'k’uhul'), (3101, 'labor'), (1245, 'laborious'), (1526, 'lack'), (1465, 'lacked'), (1532, 'lacking'), (1994, 'lacks'), (1757, 'lake'), (1761, 'lakes'), (1861, 'land'), (1212, 'landa'), (1798, 'lands'), (1876, 'landscape'), (3407, 'language\r\n in'), (3858, 'language\r\n that'), (1077, 'language'), (5229, 'languages\r\n embedding'), (5146, 'languages\r\n the'), (4318, 'languages\r\n there'), (2141, 'languages'), (4322, 'languages---they'), (4663, 'languages<'), (356, 'large'), (1468, 'large-scale'), (1851, 'larger'), (1922, 'largest'), (4923, 'larry'), (324, 'last'), (1247, 'late'), (744, 'later'), (2957, 'latest'), (4350, 'latin'), (982, 'latitude'), (4292, 'latter'), (4977, 'lavishly'), (2840, 'laws\r\n of'), (4675, 'layoffs'), (5316, 'layout'), (1499, 'layouts'), (4925, 'laziness'), (204, 'lead'), (3706, 'leader'), (3722, 'leaders'), (4791, 'leadership'), (491, 'leading'), (637, 'leads'), (2788, 'leak'), (2790, 'leaks'), (4850, 'leaps'), (2160, 'learn'), (5320, 'learn:\r\n\r\nhow'), (5356, 'learn:<'), (4722, 'learned'), (1281, 'learning'), (3312, 'learns'), (162, 'least'), (3127, 'leave\r\n anything'), (3874, 'leave'), (278, 'leaves'), (4420, 'lectures'), (702, 'left'), (776, 'legs'), (1037, 'length'), (1791, 'lengthy'), (395, 'less'), (2774, 'lessens'), (1511, 'lesser'), (5322, 'lesson\r\n'), (581, 'lesson'), (5360, 'lesson<'), (5381, 'lessons\r\nhow'), (5287, 'lessons'), (3545, 'lets'), (2481, 'level'), (275, 'levels'), (5255, 'leverage'), (5345, 'li>\r\n<'), (5368, 'li>\r\nannouncements<'), (5367, 'li>\r\ncalendar<'), (5364, 'li>\r\nchat<'), (5369, 'li>\r\ncomments<'), (5343, 'li>\r\ncreate'), (5359, 'li>\r\nhow'), (5365, 'li>\r\npersonal'), (5351, 'li>\r\nuse'), (2624, 'libraries'), (3243, 'library'), (2920, 'licensed'), (857, 'lies'), (868, 'life'), (855, 'life-cycle'), (1700, 'lifestyle'), (4520, 'light'), (4532, 'lightly'), (2235, 'like\r\n the'), (797, 'like'), (2375, 'like:'), (3088, 'likely'), (3171, 'likewise'), (4838, 'limbs'), (1430, 'limestone'), (1569, 'limestone-stucco'), (1591, 'limitations'), (2435, 'limited;'), (2365, 'line\r\n makes'), (229, 'line'), (3199, 'line-by-line'), (4362, 'linear'), (1026, 'lines'), (4374, 'lingua'), (1270, 'linguist'), (1576, 'lintel'), (1175, 'lintels'), (3272, 'lisp'), (3280, 'list'), (3372, 'listen'), (4778, 'listening'), (1324, 'literacy\r\n\r\n\r\n\r\nscribes'), (1339, 'literacy'), (882, 'literally'), (1157, 'little'), (2180, 'live'), (1302, 'lives'), (4496, 'load'), (4533, 'loaded'), (4619, 'local\r\n copy'), (909, 'local'), (1934, 'locales'), (1088, 'localities'), (1857, 'locality'), (2705, 'locally'), (2083, 'located'), (1428, 'location'), (1440, 'loft'), (2427, 'log\r\n logging'), (3740, 'log<'), (4605, 'logarithm'), (2258, 'logging\r\n are'), (2254, 'logging'), (2841, 'logic'), (693, 'logically'), (1064, 'logograms'), (1066, 'logographic'), (4947, 'logoized'), (1068, 'logosyllabic'), (2434, 'logs'), (1289, 'london:'), (1244, 'long'), (2407, 'longer'), (605, 'look'), (2242, 'looking'), (2346, 'looks'), (2659, 'loop'), (2653, 'loops\r\n sometimes'), (2619, 'loops'), (3745, 'loops<'), (5191, 'loose'), (2053, 'loosely'), (4093, 'lore'), (2291, 'lose'), (5030, 'loss'), (1163, 'lost'), (3404, 'lousy'), (3066, 'love'), (5148, 'loves'), (2629, 'low-hanging'), (2045, 'low-lying'), (3800, 'low?\r\n \r\n •'), (274, 'lower'), (1974, 'lowland'), (1721, 'lowlands'), (406, 'lt;='), (730, 'lt;=cost'), (3964, 'luck'), (2372, 'lucky'), (1228, 'lumps'), (894, 'lunation'), (4197, 'lunches'), (4890, 'lux!\r\n \r\n \r\n \r\n\r\n'), (5262, 'lux!\r\n <'), (3014, 'luxury'), (2212, 'machine'), (3008, 'machines'), (4439, 'made\r\n by'), (4767, 'made\r\n harder'), (609, 'made'), (2040, 'madre'), (1216, 'madrid'), (2223, 'magic'), (4731, 'magnitude'), (74, 'main'), (1295, 'mainly'), (2131, 'maintain'), (885, 'maintained'), (4100, 'maintainers?\r\n \r\n 7'), (4622, 'maintaining'), (3799, 'maintenance'), (856, 'maize'), (802, 'major'), (1257, 'majority'), (5025, 'make\r\n more'), (3831, 'make\r\n things'), (5107, 'make\r\n us'), (495, 'make'), (4170, 'maker'), (4160, 'makers'), (4064, 'makes\r\n porting'), (2462, 'makes'), (2220, 'making'), (3653, 'malfunctioning\r\n or'), (4410, 'manage\r\n a'), (2743, 'manage'), (4548, 'managed'), (2352, 'management'), (3156, 'manager'), (4709, 'managerial'), (3065, 'managers'), (5385, 'managing'), (5171, 'mandated'), (3174, 'mandatory'), (4370, 'manipulation'), (4719, 'mankind'), (1540, 'manpower'), (1181, 'manufactured'), (584, 'many'), (1686, 'mapped'), (227, 'mark'), (3509, 'marked'), (5073, 'market'), (3057, 'marketing'), (4256, 'marking'), (3917, 'marriage'), (3910, 'marrying'), (840, 'massive'), (2707, 'master'), (2709, 'master---period'), (4804, 'mastered'), (2148, 'masterpiece'), (4017, 'match'), (2820, 'matched'), (3540, 'matches?'), (3539, 'matching\r\n algorithm'), (1387, 'matching'), (1239, 'material'), (1523, 'materials\r\n\r\n\r\n\r\na'), (1542, 'materials'), (1584, 'materials;'), (3244, 'math'), (600, 'mathematical'), (1008, 'mathematics\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n maya'), (1007, 'mathematics'), (1118, 'matter'), (765, 'matters'), (3801, 'mature'), (4082, 'matures'), (1864, 'maxam'), (677, 'maximize'), (624, 'maximized'), (409, 'maximum'), (4583, 'may\r\n have'), (732, 'maya'), (2121, 'maya;'), (853, 'mayan'), (1731, 'mayapan'), (2157, 'mayas\r\n\r\n\r\n\r\n\r\n'), (593, 'maybe'), (3361, 'maybe;\r\n they'), (2389, 'mean'), (3437, 'mean?'), (3120, 'meaning\r\n of'), (2631, 'meaning\r\n that'), (606, 'meaning'), (3094, 'means\r\n with'), (44, 'means'), (3092, 'means:\r\n \r\n i'), (3438, 'means:\r\n \r\n •'), (903, 'meant'), (355, 'meanwhile'), (4876, 'measurable'), (1036, 'measure'), (4437, 'measured'), (2557, 'measuring'), (3557, 'meditate'), (3460, 'meet'), (4193, 'meeting'), (4185, 'meeting;'), (3638, 'meetings'), (5007, 'member'), (3208, 'members'), (2814, 'memory\r\n and'), (2744, 'memory\r\n memory'), (2351, 'memory'), (3749, 'memory<'), (2356, 'mental'), (2950, 'mentor'), (2290, 'mentor---we'), (5208, 'mere\r\n work'), (4230, 'merely'), (837, 'merge'), (2135, 'merger'), (5252, 'meshes'), (1099, 'mesoamerica'), (1011, 'mesoamerican'), (3487, 'mess'), (5336, 'messages\r\ncalendar\r\nannouncements\r\ncomments\r\n\r\n '), (5366, 'messages<'), (4446, 'messy'), (1537, 'metal'), (1600, 'meters'), (245, 'method'), (439, 'methods'), (4735, 'metric'), (1931, 'mexican'), (1828, 'mexico'), (1881, 'mexico:'), (1268, 'michael'), (2089, 'mid-sized'), (952, 'middle'), (3330, 'might\r\n be'), (627, 'might'), (3655, 'mild'), (2122, 'miles'), (4279, 'milestone'), (4255, 'milestones'), (2003, 'military'), (2066, 'millennium'), (1023, 'millions'), (1559, 'mimicked'), (634, 'mind'), (3007, 'minds'), (1415, 'minimal'), (432, 'minimoum'), (10, 'minimum'), (2661, 'minutes\r\n considering'), (3326, 'minutes'), (1668, 'mirador'), (3879, 'miscommunicate'), (3081, 'miscommunication'), (4504, 'miserable'), (3615, 'mislead\r\n the'), (4278, 'miss'), (4291, 'missed'), (2779, 'mistake'), (3878, 'misunderstanding'), (2099, 'mixe-zoque–'), (1558, 'mixed'), (4519, 'model\r\n some'), (267, 'model'), (4873, 'models'), (2796, 'moderately'), (3271, 'modern\r\n database'), (597, 'modern'), (1536, 'modes'), (1520, 'modest'), (5070, 'modesty'), (2250, 'modification'), (1395, 'modifications'), (2455, 'modify'), (2276, 'modifying'), (5375, 'modules\r\n'), (5197, 'modules'), (2393, 'moment'), (4556, 'money'), (973, 'monte'), (3327, 'month'), (920, 'months'), (1900, 'monumental'), (1174, 'monuments'), (896, 'moon'), (1915, 'moral'), (4401, 'morale'), (3651, 'more\r\n than'), (195, 'more'), (1724, 'more;'), (1555, 'mortar'), (5219, 'most\r\n attractive'), (4359, 'most\r\n boring'), (3106, 'most\r\n engineers'), (115, 'most'), (1172, 'mostly'), (4549, 'motivated\r\n it'), (1813, 'motivated'), (4669, 'motivated<'), (4402, 'motivates'), (4569, 'motivating'), (4562, 'motivational'), (3948, 'motivations'), (2079, 'mounds'), (2038, 'mountainous'), (2964, 'move\r\n on'), (655, 'move'), (828, 'movements'), (648, 'moving'), (170, 'msec'), (2582, 'much\r\n sense'), (852, 'much'), (3351, 'much;'), (2870, 'multi-threaded'), (879, 'multiple'), (4187, 'multiplied'), (2893, 'multithreaded\r\n application'), (3295, 'multitude'), (1436, 'municipalities'), (3245, 'mushrooms'), (4313, 'must\r\n explicitly'), (120, 'must'), (4466, 'mutators\r\n and'), (2214, 'mute'), (4343, 'myself'), (3547, 'mysteries'), (2297, 'mystery'), (2341, 'mystery?'), (3246, 'mysticism'), (4711, 'myth'), (1647, 'mythology'), (4710, 'myths\r\n the'), (1373, 'myths'), (4728, 'myths:\r\n \r\n •'), (5258, 'myths<'), (60, 'n\r\n \r\n at'), (1191, 'nahuatl-language'), (2086, 'nakbe'), (1031, 'naked'), (414, 'name'), (989, 'named'), (5026, 'namely\r\n the'), (4360, 'namely'), (1859, 'naranjo'), (826, 'narratives'), (5250, 'narrowly'), (1121, 'national'), (2028, 'nations'), (1420, 'natural'), (5018, 'naturally'), (747, 'nature'), (4883, 'nature:'), (640, 'near'), (1127, 'nearly'), (937, 'nebula'), (681, 'necessarily'), (1530, 'necessary'), (1568, 'necessity'), (2860, 'need\r\n when'), (172, 'need'), (3409, 'need:'), (4019, 'need?\r\n •'), (1630, 'needed'), (2749, 'needs'), (4797, 'neglect'), (5040, 'negotiate'), (1949, 'negras'), (1849, 'neighborhood'), (2098, 'neighboring'), (1015, 'neighbors'), (2124, 'neither'), (706, 'network'), (1874, 'never'), (3511, 'new\r\n name'), (4732, 'new\r\n persons'), (548, 'newly'), (4882, 'news'), (188, 'next'), (2603, 'next-most-expensive'), (3785, 'nice'), (4552, 'nifty'), (818, 'night'), (2831, 'nightmare'), (919, 'nine'), (4884, 'no\r\n large'), (4385, 'no\r\n matter'), (4737, 'no\r\n success'), (4574, 'no\r\n trust'), (1512, 'nobles'), (3600, 'noblesse'), (3383, 'nobody'), (73, 'node'), (273, 'nodes'), (268, 'non-cycle'), (3822, 'non-engineers\r\n engineers'), (3821, 'non-engineers'), (3827, 'non-engineers;'), (4640, 'non-engineers<'), (4542, 'non-linear'), (2012, 'non-mesoamerican'), (4488, 'non-portable'), (3419, 'non-programmers'), (3837, 'non-team'), (4398, 'non-technical'), (2787, 'noncollectable'), (1927, 'none'), (1350, 'nonsensical'), (3659, 'normally'), (1390, 'north'), (1432, 'northern'), (2528, 'not\r\n always'), (5065, 'not\r\n big'), (3013, 'not\r\n have'), (4530, 'not\r\n help'), (5004, 'not\r\n occasional'), (2560, 'not\r\n occur'), (2644, 'not\r\n only'), (3870, 'not\r\n understand'), (4377, 'not\r\n work'), (1587, 'notable'), (1100, 'notably'), (4594, 'notation'), (5193, 'notations\r\n '), (5178, 'notations'), (1300, 'note'), (2109, 'noted'), (3959, 'notes'), (4877, 'nothing\r\n is'), (565, 'nothing'), (51, 'notice'), (2883, 'noticeable'), (2768, 'notices'), (1243, 'now-lost'), (145, 'number'), (728, 'number:\r\n cost'), (1338, 'numbered'), (546, 'numbering'), (1009, 'numbers\r\n \r\n \r\n\r\nin'), (397, 'numbers'), (1402, 'numerous'), (2101, 'oaxaca'), (2839, 'obey'), (3446, 'obfuscate'), (4460, 'object\r\n oriented'), (1005, 'object'), (3225, 'objective'), (786, 'objects'), (3601, 'oblige\r\n and'), (1032, 'observation'), (997, 'observations'), (1027, 'observations;'), (1505, 'observatories'), (2229, 'observe\r\n something'), (2406, 'observe\r\n that'), (2832, 'observe'), (755, 'observed'), (2021, 'obsidian'), (3484, 'obtain'), (5137, 'obvious'), (277, 'obviously'), (1020, 'occasion'), (4956, 'occasionally\r\n means'), (1497, 'occasionally'), (1991, 'occupation'), (1832, 'occupied'), (985, 'occur'), (2944, 'occurred'), (2217, 'occurring'), (2802, 'occurs'), (4232, 'of\r\n a'), (4342, 'of\r\n cases'), (2921, 'of\r\n code'), (2472, 'of\r\n execution'), (4304, 'of\r\n existing'), (5201, 'of\r\n language'), (5012, 'of\r\n low'), (4122, 'of\r\n maintenance'), (4716, 'of\r\n religious'), (5227, 'of\r\n success'), (2486, 'of\r\n the'), (3947, 'of\r\n their'), (2585, 'of\r\n thumb'), (3332, 'of\r\n time'), (3781, 'of\r\n your'), (3978, 'off\r\n with'), (4119, 'offends'), (4414, 'offer\r\n to'), (523, 'offer'), (790, 'offered'), (783, 'offering'), (3642, 'office'), (3500, 'official'), (4963, 'often\r\n cause'), (3898, 'often\r\n find'), (2881, 'often\r\n finishing'), (2425, 'often\r\n messy'), (3525, 'often\r\n taboo'), (2374, 'often\r\n the'), (118, 'often'), (1128, 'oldest'), (1112, 'olmec'), (1108, 'olmecs'), (2812, 'on\r\n garbage'), (3047, 'on\r\n the'), (4935, 'on\r\n you'), (3115, 'on-the-spot'), (126, 'once'), (4614, 'one\r\n can'), (4432, 'one\r\n sign'), (5170, 'one-dimensional'), (5189, 'one-language'), (3504, 'one-person'), (1627, 'one-story'), (443, 'ones'), (5244, 'oneself'), (63, 'only'), (1467, 'onset'), (5105, 'onto'), (780, 'open'), (4008, 'open-source'), (4959, 'openly'), (2819, 'operation\r\n is'), (2822, 'operation'), (55, 'operations'), (3236, 'opinion'), (1618, 'opponents'), (3889, 'opportunities'), (3202, 'opportunity\r\n for'), (2642, 'opportunity'), (1386, 'opposed'), (643, 'optimal'), (4028, 'optimistic'), (3445, 'optimizations'), (2665, 'optimize\r\n the'), (2652, 'optimize'), (2583, 'optimizing'), (5239, 'optional'), (3266, 'options'), (2319, 'or\r\n '), (3469, 'or\r\n all'), (3662, 'or\r\n amphetamines'), (2637, 'or\r\n chop'), (4708, 'or\r\n project'), (4919, 'or\r\n the'), (2493, 'or\r\n visibility'), (2323, 'or\r\n we'), (2237, 'or\r\n whether'), (4258, 'or\r\n your'), (2149, 'oral'), (1507, 'orbits'), (140, 'order'), (336, 'ordered'), (4261, 'ordering\r\n equipment'), (1238, 'organic'), (4826, 'organisms'), (3329, 'organization'), (4673, 'organizational\r\n chaos\r\n there'), (4685, 'organizational\r\n chaos'), (5257, 'organizational\r\n chaos<'), (4697, 'organizational\r\n mayhem'), (4672, 'organizational'), (4220, 'organizations'), (4311, 'organize'), (4266, 'organized'), (5286, 'organizing'), (1504, 'orientation'), (967, 'oriented'), (2925, 'origin'), (2415, 'original\r\n author'), (4988, 'original\r\n fault'), (473, 'original'), (2120, 'originate'), (936, 'orion'), (536, 'oristiko'), (4555, 'other\r\n roles'), (180, 'other'), (1437, 'others'), (36, 'otherwise'), (3011, 'ought'), (1284, 'ourselves'), (761, 'outlook'), (2312, 'output'), (1795, 'outset'), (647, 'outside'), (3876, 'outsider'), (3869, 'outsiders'), (3476, 'outweigh'), (4475, 'outweighs'), (1665, 'over'), (692, 'overadded'), (3797, 'overall'), (4996, 'overburden'), (4294, 'overestimated'), (3149, 'overestimating\r\n is'), (981, 'overhead'), (2104, 'overlapping'), (1803, 'overthrown'), (4917, 'overused'), (5327, 'overview'), (3572, 'overwhelming'), (4771, 'overworked\r\n or'), (3576, 'overworked'), (4069, 'owner'), (4477, 'owns'), (1989, 'oxkintok'), (5342, 'p>\r\n\r\nadd'), (5363, 'p>\r\n\r\nforum<'), (5357, 'p>\r\n\r\nhow'), (5353, 'p>\r\n<'), (5340, 'p>\r\nafter'), (5355, 'p>\r\nanother'), (5361, 'p>\r\nefront'), (5354, 'p>\r\nfirst'), (5348, 'p>\r\nin'), (5339, 'p>\r\nresponsible'), (5347, 'p>\r\n <'), (2070, 'pacific'), (5122, 'pack'), (3250, 'package'), (3138, 'padding'), (1188, 'padifolia'), (2897, 'page'), (2901, 'page-turning'), (1199, 'pages'), (5136, 'painfully'), (4144, 'painless'), (1230, 'paint'), (1179, 'painted'), (2156, 'painting'), (317, 'pair'), (13, 'pairs'), (1623, 'palace'), (1619, 'palaces'), (2023, 'palenqua'), (1962, 'palenque'), (2014, 'panama'), (1180, 'paper'), (1892, 'paradigm'), (383, 'paragraph'), (598, 'parallel'), (3882, 'paraphrase'), (1217, 'paris'), (642, 'part'), (5284, 'part1'), (5331, 'part2'), (4188, 'participants'), (2006, 'participated'), (4544, 'participating\r\n machines'), (5328, 'participation'), (4043, 'particular\r\n product'), (1087, 'particular'), (1973, 'particularly'), (4949, 'parties'), (300, 'partly'), (1249, 'parts'), (508, 'parts:'), (4087, 'party'), (85, 'pass'), (979, 'passages'), (980, 'passes'), (123, 'passing'), (3728, 'passively'), (762, 'past'), (3227, 'patch'), (653, 'path'), (3696, 'patience'), (4811, 'patient'), (1853, 'patronage'), (3606, 'patsies'), (3604, 'patsy'), (2808, 'pattern'), (3680, 'patterns'), (4455, 'paul'), (5396, 'payments'), (4863, 'payoff'), (417, 'peak'), (1138, 'peaking'), (14, 'peaks'), (1785, 'peninsula'), (4783, 'people\r\n outside'), (3666, 'people\r\n you'), (773, 'people'), (3774, 'people<'), (1808, 'peoples'), (5165, 'perceive'), (5044, 'perception\r\n of'), (3480, 'perception'), (2391, 'perfect\r\n understanding'), (2182, 'perfect'), (875, 'perfection'), (1573, 'perfectly'), (3022, 'perform'), (2450, 'performance'), (1603, 'performed'), (767, 'performing'), (5104, 'perhaps\r\n because'), (2601, 'perhaps\r\n reanalyze'), (1611, 'perhaps'), (3702, 'period\r\n of'), (1778, 'period\r\n\r\n\r\n\r\n\r\nshortly'), (899, 'period'), (895, 'periods'), (3009, 'peripheral\r\n equipment'), (854, 'permanence'), (847, 'permanent'), (2197, 'permanently'), (319, 'permutes'), (353, 'permutes:'), (2750, 'persist'), (1144, 'persisted'), (3491, 'person\r\n and'), (778, 'person'), (3593, 'person;'), (3276, 'personal'), (4166, 'personality'), (4564, 'personally\r\n motivating'), (3598, 'personally'), (4270, 'persons'), (3362, 'perspective'), (3258, 'pertinent'), (1829, 'peru'), (3352, 'pester'), (3356, 'pestered'), (1748, 'peten'), (1754, 'petén'), (4457, 'pgsite'), (4312, 'phase'), (1687, 'phases'), (996, 'phenomena'), (859, 'philosophy'), (1062, 'phonetic'), (4006, 'phrase'), (2096, 'physical'), (2951, 'physically'), (3017, 'physicists'), (4608, 'physics---and'), (2632, 'picked'), (787, 'pictorial'), (371, 'picture'), (2474, 'piece'), (2955, 'pieces'), (1948, 'piedras'), (1983, 'pilas'), (941, 'pin-point'), (1655, 'place'), (306, 'placed'), (304, 'places'), (5119, 'plain'), (1431, 'plains'), (4127, 'plan\r\n should'), (3063, 'plan'), (803, 'planes'), (1029, 'planets'), (3055, 'planning\r\n the'), (1414, 'planning'), (4038, 'plans'), (1229, 'plaster'), (1606, 'platform'), (1480, 'platforms'), (1071, 'play'), (4159, 'player'), (4416, 'playing'), (4417, 'playtime'), (1455, 'plazas'), (3109, 'please'), (968, 'pleiades'), (1547, 'pliable'), (5091, 'pocketbooks'), (2260, 'point\r\n in'), (61, 'point'), (423, 'pointer'), (190, 'pointers'), (503, 'points'), (502, 'points:'), (5152, 'pointy-haired'), (2281, 'poke'), (1580, 'poles'), (570, 'policy'), (3228, 'politely'), (1385, 'political'), (1811, 'polities'), (1830, 'polity'), (1820, 'poor'), (2626, 'poorly'), (1774, 'popol'), (293, 'popular'), (2113, 'populated'), (1147, 'population'), (2130, 'populations'), (2718, 'portability'), (4484, 'portable'), (4487, 'ported?'), (3920, 'portion'), (2058, 'portions'), (4483, 'poses'), (3349, 'position\r\n can'), (2025, 'position\r\n\r\nthe'), (316, 'position'), (5401, 'positions'), (381, 'positive'), (5387, 'possesses'), (490, 'possibility'), (136, 'possible'), (3931, 'possibly'), (1111, 'post'), (1461, 'post-classic'), (2136, 'post-conquest'), (1712, 'postclassic'), (1283, 'posterity'), (3231, 'posting'), (4760, 'postponing'), (4819, 'potency'), (615, 'potential'), (1178, 'pottery'), (743, 'power'), (4368, 'powerful'), (2264, 'practical'), (3069, 'practically'), (4427, 'practice\r\n courage'), (2301, 'practice'), (770, 'practiced'), (3885, 'practices'), (4776, 'practicing'), (4978, 'praise'), (4986, 'praised'), (4979, 'praiseworthy'), (1286, 'prayer'), (1364, 'pre-classic'), (1073, 'pre-columbian'), (1109, 'pre-maya'), (798, 'pre-modern'), (933, 'pre-telescopic'), (1097, 'preceded'), (380, 'precedence'), (3317, 'precious\r\n commodity'), (1817, 'precious'), (2471, 'precise'), (2490, 'precisely'), (965, 'preclassic'), (5160, 'precludes'), (2080, 'precursors'), (1469, 'predetermined'), (3070, 'predict'), (4547, 'predictability\r\n so'), (3061, 'predictability'), (3427, 'prefer'), (4814, 'preparation'), (4037, 'prepare'), (4798, 'prepared\r\n to'), (3708, 'prepared'), (4260, 'preparing'), (1783, 'presence'), (695, 'present'), (2027, 'present-day'), (4356, 'presented'), (3370, 'president'), (3118, 'pressure\r\n permits'), (5093, 'pressure\r\n time-to-market'), (2334, 'pressure'), (5270, 'pressure<'), (1653, 'presumably'), (689, 'presuming'), (4582, 'pretend'), (3578, 'pretty'), (1446, 'prevailed'), (5224, 'preview'), (411, 'previous'), (4481, 'price\r\n to'), (758, 'priest'), (1209, 'priests'), (217, 'prim'), (1001, 'primarily'), (1583, 'primary'), (496, 'principal'), (3675, 'principles'), (2324, 'printline'), (2249, 'printlining'), (1516, 'privacy'), (4176, 'private'), (4981, 'private;'), (1936, 'privileged'), (3164, 'probabilities'), (3173, 'probability'), (2615, 'probably\r\n made'), (154, 'probably'), (3558, 'problem\r\n magically'), (296, 'problem\r\n we'), (8, 'problem'), (22, 'problem:\r\n \r\n in'), (4901, 'problems\r\n it'), (2487, 'problems\r\n learning'), (4779, 'problems\r\n lie'), (2564, 'problems\r\n most'), (2484, 'problems\r\n that'), (117, 'problems'), (4054, 'problems:\r\n \r\n •'), (3742, 'problems<'), (248, 'procedure'), (2548, 'proceed'), (290, 'process'), (1182, 'processed'), (5402, 'processes'), (2941, 'processing'), (2531, 'processor'), (2687, 'processors'), (3635, 'procure'), (5108, 'produce\r\n software'), (260, 'produce'), (264, 'produced'), (369, 'produces'), (5113, 'producing\r\n an'), (2431, 'producing'), (340, 'producing-examining'), (2658, 'product'), (4372, 'product-dependent'), (2445, 'production'), (3221, 'productive'), (4903, 'productivity\r\n of'), (4050, 'productivity'), (4305, 'products'), (4341, 'professional'), (3982, 'professionally\r\n assume'), (3981, 'professionally'), (4644, 'professionally<'), (5133, 'professionals'), (5277, 'professor'), (5325, 'professors'), (5397, 'profiles'), (2526, 'profiling'), (613, 'profit'), (679, 'profit?\r\n \r\n an'), (4607, 'profound'), (138, 'program'), (4407, 'program?'), (2370, 'program?’'), (2158, 'programmer'), (4800, 'programmers\r\n are'), (2823, 'programmers\r\n often'), (2179, 'programmers'), (3019, 'programming\r\n can'), (3783, 'programming\r\n consists'), (4371, 'programming\r\n language'), (4321, 'programming\r\n languages'), (462, 'programming\r\n the'), (402, 'programming'), (2203, 'programs'), (1288, 'progress'), (4444, 'progresses'), (3513, 'progressive'), (3123, 'progressively'), (4267, 'project\r\n plan'), (4891, 'project\r\n to'), (673, 'project'), (5263, 'project<'), (1913, 'projecting'), (663, 'projects'), (5235, 'promethean'), (1269, 'prominent'), (3093, 'promise'), (4226, 'promised'), (4091, 'promises'), (4922, 'promote'), (5038, 'promoted'), (5037, 'promotion\r\n to'), (5036, 'promotion'), (5268, 'promotion<'), (3725, 'prone'), (5063, 'pronouncements'), (4696, 'proof'), (515, 'proofed'), (1676, 'propaganda'), (258, 'proper'), (1067, 'properly'), (276, 'properties'), (333, 'property'), (760, 'prophetic'), (2942, 'proportional'), (4786, 'proposal\r\n of'), (2650, 'proposal\r\n will'), (5067, 'proposal'), (3899, 'propose'), (3815, 'proposed'), (3289, 'pros'), (542, 'prosorino'), (1814, 'prospects'), (4897, 'prototype'), (3117, 'prototyping'), (1790, 'prove'), (455, 'proven'), (4061, 'proves'), (2612, 'provide\r\n a'), (1312, 'provide'), (2439, 'provided'), (2765, 'provides'), (4546, 'providing'), (5199, 'psychological;'), (5200, 'psychology'), (4777, 'public\r\n speaking'), (1454, 'public'), (1103, 'publication'), (4473, 'publish'), (1123, 'published'), (1538, 'pulleys'), (793, 'pure'), (3930, 'purpose'), (5391, 'pursuing'), (2734, 'pushing'), (815, 'putrefaction'), (1893, 'puts'), (551, 'putting'), (2060, 'puuc'), (1398, 'pyramid'), (1363, 'pyramids'), (2940, 'quadratic'), (2592, 'quality'), (595, 'quantities'), (591, 'quantity'), (1550, 'quarried'), (1545, 'quarries'), (1565, 'quarrying'), (305, 'queen'), (295, 'queens'), (4369, 'query'), (464, 'quest'), (177, 'question'), (4036, 'questions'), (2910, 'queues'), (1765, 'quexil'), (1770, 'quiché'), (181, 'quick'), (2340, 'quickly'), (3392, 'quietly'), (1316, 'quills'), (2033, 'quintana'), (3620, 'quit'), (3814, 'quite\r\n low'), (1572, 'quite'), (213, 'quot;'), (1749, 'quot;classic'), (1891, 'quot;court'), (211, 'quot;data'), (1953, 'quot;death'), (1110, 'quot;epi-olmec'), (1590, 'quot;false'), (880, 'quot;gods'), (848, 'quot;good'), (764, 'quot;heavens'), (1709, 'quot;i'), (1322, 'quot;land'), (1736, 'quot;maya'), (437, 'quot;minimum'), (1694, 'quot;observatories'), (1275, 'quot;our'), (639, 'quot;pretty'), (522, 'quot;principal'), (1789, 'quot;the'), (1997, 'quot;tree-stones'), (4869, 'quote\r\n in'), (2144, 'rabinal'), (738, 'rain'), (1441, 'raise'), (3587, 'raising'), (1706, 'ramps'), (530, 'random'), (4395, 'rapid'), (1254, 'rapidly'), (3716, 'rare'), (1085, 'rarely'), (5129, 'rather\r\n to'), (1594, 'rather'), (3239, 'ratio'), (1485, 're-built'), (3475, 're-test'), (657, 'reach'), (806, 'reached'), (4173, 'react'), (1153, 'read'), (3384, 'read;'), (2717, 'readability'), (2724, 'readable'), (3448, 'reader'), (1543, 'readily'), (2701, 'reading'), (707, 'real'), (4268, 'reality'), (4818, 'realize'), (2935, 'realized'), (2810, 'reallocated'), (4703, 'really\r\n sure'), (3877, 'really\r\n there'), (2168, 'really'), (1702, 'realm'), (2489, 'reason\r\n that'), (265, 'reason'), (3588, 'reason---every'), (3701, 'reasonable'), (1213, 'reasonably'), (3709, 'reasons\r\n for'), (652, 'reasons'), (3204, 'reassignment'), (1382, 'rebuilding'), (1381, 'rebuilt'), (3310, 'receiving'), (1259, 'recent'), (2890, 'recently'), (1105, 'recently-discovered'), (4479, 'recode'), (1360, 'recognizable'), (3564, 'recognize'), (3823, 'recognized'), (3136, 'recommend'), (2679, 'recomputing'), (4162, 'reconsidering'), (1752, 'reconstituted'), (1296, 'record'), (893, 'recorded'), (1970, 'recording'), (2429, 'records'), (5029, 'recover\r\n from'), (1171, 'recovered'), (1242, 'recovery'), (3363, 'recruit'), (3922, 'recruitment'), (1227, 'rectangular'), (842, 'recur'), (2656, 'recursive'), (2456, 'redeploy'), (2640, 'redesign'), (3489, 'redesigned'), (1567, 'reduced'), (4112, 'reducing'), (2785, 'reference\r\n remains'), (1266, 'reference'), (2784, 'references'), (2786, 'referent'), (1626, 'referred'), (2993, 'referring'), (2760, 'refers'), (2712, 'reflect'), (5021, 'reflected'), (5095, 'reflects\r\n a'), (4126, 'regained'), (5032, 'regard'), (3461, 'regardless'), (1762, 'region'), (1873, 'regional'), (1975, 'regions'), (4206, 'regular'), (843, 'regularity'), (4743, 'reinforces'), (338, 'reject'), (249, 'rejected'), (4796, 'rejection'), (2848, 'related'), (4567, 'relating\r\n each'), (2613, 'relational'), (763, 'relations'), (4720, 'relationship'), (1116, 'relationships'), (5046, 'relative'), (2567, 'relatively'), (4233, 'release'), (4071, 'release;'), (2566, 'released'), (2449, 'relevant'), (4734, 'reliably'), (1961, 'relief'), (1646, 'reliefs'), (735, 'religion\r\n\r\n\r\n\r\n \r\n \r\n '), (734, 'religion'), (4727, 'religious\r\n person'), (768, 'religious'), (2811, 'rely'), (3291, 'remain\r\n indecisive'), (524, 'remain'), (1304, 'remainder'), (1546, 'remained'), (690, 'remaining'), (1235, 'remains'), (4259, 'remember\r\n to'), (2974, 'remember'), (1406, 'remnants'), (1380, 'remodeled'), (2381, 'remove'), (1552, 'removed'), (552, 'removing'), (2868, 'reoccur\r\n to'), (3872, 'repeat'), (4930, 'repeatable'), (4411, 'replacement'), (921, 'replicated'), (4888, 'reply'), (4130, 'reported\r\n after'), (5323, 'reporting'), (1826, 'reports'), (214, 'represent'), (2698, 'representation'), (1681, 'representations'), (881, 'represented'), (612, 'representing'), (272, 'represents'), (2404, 'reproduce'), (2447, 'reproduced'), (4174, 'reptilian\r\n part'), (4739, 'reputation'), (4503, 'request'), (46, 'requested'), (602, 'require'), (166, 'required'), (256, 'requirement'), (325, 'requirement:'), (352, 'requirements'), (161, 'requires'), (2405, 'rerun'), (1104, 'research'), (5074, 'researchers\r\n are'), (1113, 'researchers'), (1060, 'resemblance'), (3636, 'reserving'), (5318, 'reset'), (1632, 'residence'), (4636, 'resident'), (4245, 'resides'), (1664, 'residing'), (2861, 'resign'), (4138, 'resillient'), (3727, 'resist'), (1806, 'resistance'), (2947, 'resolve'), (3690, 'resolved\r\n somehow'), (2516, 'resource'), (1473, 'resources'), (4406, 'respect\r\n for'), (3945, 'respect\r\n this'), (1877, 'respect'), (5167, 'respected'), (4158, 'respectful'), (2102, 'respectively'), (4951, 'respects'), (3026, 'response'), (3983, 'responsibility'), (1771, 'responsible'), (4577, 'responsive'), (415, 'rest'), (3097, 'restate'), (3866, 'restated'), (4056, 'restrict'), (512, 'restricted'), (4802, 'rests'), (206, 'result'), (3468, 'resulting\r\n document'), (3254, 'results'), (4854, 'resurrected'), (2600, 'rethink'), (3943, 'retract'), (477, 'retroactive'), (238, 'return'), (131, 'returning'), (4052, 'reuse'), (1301, 'reveal'), (3932, 'revealing'), (1004, 'reveals'), (4179, 'reversed'), (4215, 'review'), (4217, 'reviewed'), (3510, 'revision'), (1733, 'revolt'), (3486, 'reworking'), (2426, 'rewrite'), (4143, 'rewrites'), (5196, 'rewriting'), (3633, 'rhythm'), (4329, 'rich'), (1827, 'riches'), (2945, 'right\r\n away'), (3903, 'right'), (1492, 'rigid'), (2809, 'ring'), (1320, 'rise'), (2918, 'risk'), (4942, 'riskiest'), (4219, 'risks\r\n a'), (3210, 'risks'), (4659, 'risks<'), (2354, 'risky'), (1602, 'rites'), (1282, 'ritual'), (748, 'rituals'), (1072, 'role'), (1050, 'roman'), (1670, 'roof'), (1577, 'roofs'), (3080, 'room'), (1909, 'rooms'), (271, 'root'), (2807, 'rotation'), (1167, 'rough'), (497, 'roughly'), (1691, 'round'), (29, 'route'), (434, 'routes\r\n the'), (11, 'routes'), (1496, 'royal'), (1907, 'royalty'), (4723, 'rude'), (2825, 'rudimentary'), (1695, 'ruin'), (2024, 'ruins\r\n\r\n\r\n\r\n\r\n'), (1776, 'ruins'), (84, 'rule'), (3440, 'rule;\r\n •'), (1732, 'ruled'), (1384, 'ruler'), (1299, 'rulers'), (3583, 'rules'), (1730, 'ruling'), (3791, 'run-of-the-mill'), (2202, 'running'), (1860, 'saal'), (1479, 'sacbé'), (1477, 'sacbeob'), (1514, 'sacred'), (772, 'sacrifice'), (4953, 'sacrifices'), (791, 'sacrificial'), (3674, 'sacrificing\r\n your'), (3444, 'sacrificing'), (4992, 'said'), (5022, 'salaries'), (3059, 'sales'), (109, 'salesman'), (2018, 'salt'), (2030, 'salvador'), (318, 'same'), (913, 'santa'), (4782, 'satisfaction'), (342, 'satisfied'), (323, 'satisfies'), (4524, 'satisfy'), (351, 'satisfying'), (3470, 'save'), (4686, 'saved'), (4015, 'savvy'), (3612, 'saying'), (498, 'says'), (1704, 'scale'), (3574, 'scarcity'), (3846, 'scared'), (2553, 'schedule'), (4300, 'scheduled\r\n periodic'), (4295, 'scheduled'), (796, 'scholars'), (3951, 'school'), (2975, 'science'), (3004, 'science’'), (3001, 'science’---which'), (2401, 'scientific\r\n method'), (2979, 'scientific'), (2751, 'scope'), (5377, 'scorm'), (5282, 'scorm_2004_4ed_v1_1_tr_20090814'), (4885, 'scratch'), (2231, 'screen'), (1328, 'scribes'), (1079, 'script'), (2464, 'scroll'), (3233, 'search'), (3229, 'searching'), (851, 'season'), (827, 'seasonal'), (4101, 'seasoned'), (1046, 'seasons'), (4752, 'second\r\n best'), (1460, 'secondary'), (2532, 'seconds'), (4690, 'secret'), (4868, 'section'), (3387, 'security'), (2072, 'sedentary'), (4273, 'seduced'), (5380, 'see:\r\n\r\n\r\nhow'), (4816, 'seed'), (614, 'seek'), (553, 'seem'), (1486, 'seemed'), (1529, 'seemingly'), (1393, 'seems'), (970, 'seen'), (4438, 'sees'), (1146, 'segments'), (1816, 'seizure'), (5313, 'select'), (700, 'selected'), (4214, 'selection'), (200, 'selects'), (3729, 'self-assesment'), (3939, 'self-deception'), (4683, 'self-esteem'), (3436, 'self-explanatory\r\n code?'), (3422, 'self-explanatory'), (1944, 'self-proclaimed'), (3832, 'sell'), (3975, 'selling'), (1445, 'semblance'), (2041, 'semi-arid'), (3298, 'semi-conscious'), (3176, 'seminar?'), (3652, 'send'), (585, 'sense'), (4120, 'sensibilities'), (3973, 'sensible'), (4136, 'sent'), (3531, 'sentence'), (3087, 'sentence:\r\n \r\n i'), (3421, 'sentiment:\r\n write'), (623, 'separate'), (2385, 'separated'), (4554, 'separates'), (2306, 'sequence'), (3046, 'series'), (3523, 'serious'), (5049, 'seriously\r\n unappreciated'), (2639, 'seriously'), (4025, 'serve'), (1674, 'served'), (2538, 'server'), (2894, 'servers'), (3929, 'serves'), (5164, 'serving'), (428, 'set:'), (683, 'set:l='), (261, 'sets'), (3264, 'sets?’'), (4792, 'setting'), (1954, 'settlement'), (1923, 'settlements'), (2313, 'seven'), (1025, 'several'), (1236, 'severely'), (4198, 'shame'), (334, 'shape'), (1698, 'shapes'), (3862, 'share'), (2542, 'shared'), (2115, 'shares'), (1490, 'sharply'), (1197, 'sheet'), (1334, 'shell'), (2019, 'shells'), (3205, 'shifting'), (1872, 'shifts'), (4132, 'shoddiness'), (3457, 'shoes'), (3381, 'short'), (4489, 'shortand-\r\n easily-ported'), (3857, 'shorthand'), (1204, 'shortly'), (635, 'shortsighted'), (4995, 'should\r\n challenge'), (4378, 'should\r\n have'), (2789, 'should\r\n look'), (4271, 'should\r\n shift'), (3278, 'should\r\n start'), (676, 'should'), (3602, 'shoulder'), (407, 'show'), (820, 'showing'), (4970, 'shown'), (3358, 'showoff'), (62, 'shows'), (1513, 'shrines;'), (630, 'shrinking'), (3294, 'shut'), (3168, 'sick'), (4302, 'sickness'), (390, 'side'), (386, 'sides'), (2039, 'sierra'), (1084, 'sign'), (4717, 'significance'), (957, 'significant'), (1070, 'signs'), (1819, 'silver'), (1878, 'similar'), (2535, 'similarly'), (192, 'simple'), (2299, 'simple---any'), (3533, 'simple:'), (2666, 'simple;'), (4344, 'simpler'), (3096, 'simpleton'), (531, 'simplicity'), (4958, 'simply\r\n disagree'), (479, 'simply'), (4512, 'simulate'), (4518, 'simulations'), (178, 'since'), (1195, 'single'), (1478, 'singular:'), (1368, 'site'), (966, 'sites'), (667, 'situation'), (2525, 'situations'), (2129, 'sizable'), (475, 'size'), (4523, 'size---until'), (4231, 'skeptical'), (1143, 'skill'), (5409, 'skill-gap'), (4940, 'skills\r\n are'), (4397, 'skills\r\n learning'), (2948, 'skills\r\n to'), (2643, 'skills'), (3753, 'skills<'), (1995, 'slabs'), (5014, 'slack'), (3396, 'slacken'), (3148, 'slacking'), (4135, 'slashdot'), (3560, 'sleep'), (4419, 'sleeping'), (2195, 'slightest\r\n bump'), (3808, 'slightly'), (4284, 'slipped'), (4761, 'slips'), (2497, 'slow'), (2616, 'slower'), (3521, 'slows'), (577, 'small'), (198, 'smaller'), (2316, 'smaller:'), (1710, 'smallest'), (2968, 'smart'), (4505, 'smashing\r\n success?'), (4704, 'smile'), (4844, 'smoothly'), (953, 'smudge'), (4181, 'so!’'), (4003, 'so-called'), (3685, 'social\r\n pressure'), (1912, 'social'), (799, 'societies'), (2069, 'soconusco'), (4111, 'software\r\n and'), (4081, 'software\r\n before'), (3261, 'software\r\n that'), (2186, 'software'), (4094, 'software?\r\n \r\n 3'), (891, 'solar'), (3259, 'solid'), (5147, 'solitary'), (988, 'solstice'), (1642, 'solstices'), (3443, 'solution\r\n faster;\r\n •'), (21, 'solution'), (151, 'solutions'), (33, 'solve'), (15, 'solves'), (3584, 'solving'), (2956, 'some\r\n books'), (2573, 'some\r\n other'), (2475, 'some\r\n variable'), (385, 'some'), (3607, 'somebody'), (3161, 'somehow'), (152, 'someone'), (3103, 'something\r\n big'), (3790, 'something\r\n other'), (2204, 'something'), (452, 'sometimes'), (1423, 'somewhat'), (3464, 'somewhere'), (5298, 'soon'), (5106, 'sooner'), (2110, 'sophisticated'), (3677, 'sort'), (3253, 'sorting'), (622, 'sought'), (4960, 'sound'), (3972, 'sounds'), (3305, 'sour'), (1735, 'source'), (1919, 'sources'), (1768, 'southern'), (2295, 'space\r\n debugging'), (4589, 'space\r\n you'), (1452, 'space'), (3737, 'space<'), (1901, 'spaces'), (5123, 'span'), (5338, 'span><'), (1880, 'spaniards'), (1149, 'spanish'), (1357, 'spans'), (4770, 'speak'), (4606, 'speaking'), (468, 'special'), (1929, 'specialization'), (1184, 'species'), (1637, 'specific'), (2084, 'specifically'), (220, 'specified'), (1356, 'spectacular'), (4442, 'speculate'), (4462, 'speculative\r\n code'), (4451, 'speculative'), (4117, 'speed'), (5253, 'spend\r\n much'), (2660, 'spend'), (467, 'spending'), (2502, 'spent'), (4855, 'spiral'), (4763, 'spirit'), (2338, 'split'), (2293, 'splitting'), (1076, 'spoken'), (1435, 'sprawling'), (1411, 'spread'), (5028, 'spreading'), (2943, 'square\r\n of'), (310, 'square'), (4597, 'squared'), (298, 'squares'), (2257, 'stable'), (3374, 'staff'), (1613, 'stake'), (3105, 'stall'), (3113, 'stalled'), (3110, 'stalling'), (3847, 'stand'), (4352, 'standard'), (4324, 'standardization'), (4373, 'standardized'), (4354, 'standards'), (3619, 'stands'), (2225, 'staring'), (962, 'stars'), (2559, 'start'), (361, 'starting'), (3084, 'startling'), (562, 'starts'), (2551, 'starvation\r\n is'), (2545, 'starvation'), (1841, 'state'), (1274, 'stated:\r\n\r\n\r\n\r\n'), (2479, 'statement'), (2325, 'statements'), (1767, 'states'), (2448, 'statistics'), (1635, 'stature'), (3514, 'stay'), (1176, 'stelae'), (940, 'stellar'), (169, 'step'), (1362, 'stepped'), (163, 'steps'), (3178, 'stick'), (320, 'still'), (1173, 'stone'), (1570, 'stones'), (4691, 'stop'), (4618, 'store'), (492, 'stored'), (3577, 'stories'), (525, 'storing'), (2050, 'storms'), (4715, 'story'), (3442, 'straightforward'), (3345, 'strange'), (1185, 'strangler'), (4787, 'strawman'), (4208, 'strengths'), (3928, 'stress'), (4701, 'stressed-out'), (4165, 'stressful'), (4937, 'stretch'), (4998, 'stretched'), (514, 'strictly'), (3194, 'strikes'), (2930, 'stripper'), (3195, 'strong'), (3209, 'stronger'), (4452, 'strongly\r\n recommend'), (3324, 'strongly'), (1554, 'structural'), (212, 'structure'), (2138, 'structured'), (1839, 'structures\r\n\r\n\r\n\r\n\r\na'), (1388, 'structures'), (4361, 'structuring'), (1562, 'stucco'), (2909, 'stuck'), (5317, 'student'), (2933, 'studied\r\n it'), (3286, 'studied'), (2949, 'study'), (4349, 'studying'), (2667, 'stuff'), (4559, 'stuff;'), (3556, 'stumped\r\n when'), (3554, 'stumped'), (3770, 'stumped<'), (3594, 'stupid'), (2869, 'stupidest'), (2973, 'style'), (2982, 'styles'), (5226, 'styling'), (1404, 'stylistic'), (509, 'sub-problem'), (474, 'sub-problems'), (2036, 'sub-region'), (1482, 'sub-structure'), (284, 'sub-tree'), (3302, 'subconscious'), (2360, 'subdivided'), (3841, 'subdivisions'), (1810, 'subdue'), (1834, 'subdued'), (435, 'subgraph'), (3248, 'subject\r\n and'), (2977, 'subject'), (3237, 'subjective'), (1781, 'subjugate'), (1882, 'subordinated'), (2752, 'subroutine'), (2125, 'subsequent'), (1162, 'subsequently'), (289, 'subsets'), (1796, 'substantive'), (2496, 'subsystem'), (2625, 'subsystems'), (3124, 'subtasks'), (2261, 'subtly'), (5228, 'succeed'), (2961, 'succeeded'), (1130, 'succeeding'), (3987, 'success'), (2314, 'successfully'), (4736, 'succinctness'), (3610, 'succumb'), (142, 'such'), (4536, 'sufficient'), (931, 'suggest'), (1376, 'suggested'), (1126, 'suggesting'), (2670, 'suggestions:\r\n \r\n •'), (2076, 'suggests'), (4241, 'suitability'), (3881, 'summarize'), (2738, 'summation'), (3346, 'summer'), (518, 'sums'), (1641, 'sun’s'), (1059, 'superficial'), (4899, 'superior\r\n to'), (1030, 'superior'), (3337, 'superiors'), (821, 'supernatural'), (959, 'support'), (4894, 'supporters\r\n for'), (942, 'supports'), (3285, 'suppose'), (459, 'suppresses'), (2321, 'sure'), (4228, 'surest'), (2280, 'surgery'), (1524, 'surprising'), (1494, 'surrounded'), (1678, 'surrounding'), (4780, 'survival'), (1218, 'survive'), (1215, 'survived'), (998, 'surviving'), (2047, 'susceptible'), (2854, 'suspect'), (4694, 'sustain\r\n nothing'), (4693, 'sustain'), (4060, 'swapped'), (4971, 'switch'), (3562, 'switching'), (1069, 'syllabic'), (412, 'symbolism'), (874, 'symbolized'), (1063, 'symbols'), (224, 'symmetrical'), (2550, 'synchronization'), (2880, 'synchronize'), (2543, 'synchronized'), (3819, 'synergize'), (3905, 'synergizing'), (4051, 'synergy'), (898, 'synodic'), (4320, 'syntactic'), (4379, 'syntax'), (5236, 'system\r\n into'), (2866, 'system\r\n may'), (4815, 'system\r\n the'), (4495, 'system\r\n works'), (2761, 'system\r\n you'), (1014, 'system'), (5261, 'system<'), (521, 'systematic'), (156, 'systematically'), (1098, 'systems'), (4057, 'systems?\r\n \r\n •'), (2032, 'tabasco'), (2782, 'table'), (3736, 'table>\r\n'), (4238, 'tackled'), (3203, 'tactical'), (2923, 'tags'), (975, 'takalik'), (3395, 'take\r\n to'), (633, 'take'), (81, 'taken'), (2529, 'takes'), (4775, 'taking'), (946, 'tale'), (4990, 'talent\r\n nietschze'), (4989, 'talent'), (5266, 'talent<'), (3269, 'talk\r\n to'), (3273, 'talk'), (3328, 'talking\r\n to'), (89, 'talking'), (1234, 'tantalizing'), (2882, 'task'), (5183, 'task;'), (4918, 'tasks\r\n sometimes'), (3842, 'tasks'), (5264, 'tasks<'), (3679, 'taught'), (4733, 'taxing'), (1753, 'tayasal'), (3735, 'tbody>\r\n<'), (3733, 'td>\r\n <'), (3367, 'teach'), (4218, 'team\r\n members'), (4952, 'team\r\n spirit'), (3189, 'team'), (3190, 'team-wide'), (3710, 'teammate'), (4943, 'teammates\r\n to'), (3522, 'teammates'), (5265, 'teammates<'), (3834, 'teams'), (3941, 'technical\r\n skills'), (3348, 'technical'), (4920, 'technique\r\n for'), (2305, 'technique'), (1566, 'techniques'), (5154, 'technological\r\n decision'), (4204, 'technologies\r\n and'), (1528, 'technologies'), (3820, 'technology\r\n to'), (3787, 'technology'), (3788, 'technology?'), (963, 'telescope'), (2907, 'tell'), (4749, 'telling'), (1697, 'temple'), (1379, 'temples'), (2286, 'temporarily'), (543, 'temporary'), (3657, 'tempted'), (4047, 'tend'), (1416, 'tended'), (3085, 'tendency'), (471, 'tends'), (1932, 'tenochtitlan'), (2716, 'tension'), (1491, 'teotihuacan'), (442, 'term'), (1788, 'termed'), (426, 'terminal'), (540, 'terminally'), (236, 'terminates'), (2485, 'terms'), (2056, 'terrain'), (753, 'terrestrial'), (3919, 'terrible'), (1784, 'territories'), (1321, 'territory'), (3474, 'test\r\n burden'), (4494, 'test\r\n stress'), (3526, 'test\r\n unit'), (3532, 'test\r\n will'), (107, 'test'), (3768, 'test<'), (3530, 'tested'), (4307, 'testing\r\n integration'), (2792, 'testing'), (4661, 'testing<'), (5394, 'tests\r\n\r\n\r\n\r\n\r\n\r\n'), (5389, 'tests'), (1996, 'tetun'), (2924, 'text'), (788, 'texts'), (1290, 'thames'), (3687, 'than\r\n you'), (196, 'than'), (2931, 'thank'), (3488, 'that\r\n are'), (3966, 'that\r\n can'), (3275, 'that\r\n has'), (3988, 'that\r\n help'), (4627, 'that\r\n needs'), (2444, 'that\r\n occur'), (3581, 'that\r\n other'), (2252, 'that\r\n print'), (3235, 'that\r\n smacks'), (3147, 'that\r\n the'), (2704, 'that\r\n value'), (2397, 'that\r\n your'), (43, 'that'), (510, 'that:\r\n \r\n \r\n minimum'), (4828, 'that;'), (1582, 'thatch'), (2994, 'the\r\n 1960s'), (4781, 'the\r\n advanced'), (4338, 'the\r\n audience'), (4474, 'the\r\n benefit'), (5115, 'the\r\n best'), (4078, 'the\r\n biggest'), (2939, 'the\r\n code'), (2735, 'the\r\n computation'), (4168, 'the\r\n confidence'), (4316, 'the\r\n course'), (4154, 'the\r\n decision'), (4123, 'the\r\n decrease'), (2292, 'the\r\n delicate'), (2540, 'the\r\n end'), (4142, 'the\r\n eventual'), (3911, 'the\r\n idea'), (3357, 'the\r\n intern'), (3230, 'the\r\n internet'), (4859, 'the\r\n milestones'), (3570, 'the\r\n need'), (5161, 'the\r\n part'), (4682, 'the\r\n programmer'), (4116, 'the\r\n project'), (3016, 'the\r\n realm'), (3137, 'the\r\n results'), (5215, 'the\r\n risks'), (4282, 'the\r\n scheduled'), (2865, 'the\r\n solution'), (2350, 'the\r\n space'), (4264, 'the\r\n start'), (2590, 'the\r\n system'), (4954, 'the\r\n team'), (3398, 'the\r\n truth'), (4822, 'the\r\n uses'), (2847, 'the\r\n variability'), (4881, 'the\r\n voter'), (2262, 'the\r\n way'), (3682, 'the\r\n workplace'), (4210, 'their\r\n financial'), (3333, 'their\r\n position'), (4915, 'their\r\n strengths'), (3580, 'their\r\n teammates'), (253, 'their'), (3888, 'theirs'), (3368, 'them\r\n something'), (128, 'them'), (5372, 'theme'), (5370, 'themes'), (1661, 'themselves'), (4810, 'then\r\n patiently'), (67, 'then'), (516, 'theorem'), (3068, 'theoretically'), (943, 'theory'), (3835, 'there\r\n are'), (3586, 'there\r\n can'), (4969, 'there\r\n is'), (4499, 'there\r\n may'), (25, 'there'), (1255, 'thereafter'), (446, 'therefore'), (4269, 'these\r\n decisions'), (4742, 'these\r\n myths'), (2355, 'these\r\n other'), (158, 'these'), (345, 'these:j-1'), (2270, 'they\r\n are'), (5109, 'they\r\n can'), (3186, 'they\r\n exist'), (3844, 'they\r\n may'), (3628, 'they\r\n work'), (444, 'they'), (2318, 'thing'), (2399, 'things\r\n that'), (2234, 'things'), (2174, 'think'), (3648, 'thinking\r\n suicidal'), (75, 'thinking'), (3144, 'thinks'), (2732, 'third'), (2919, 'third-party'), (3018, 'thirty'), (2878, 'this\r\n case'), (4687, 'this\r\n for'), (2715, 'this\r\n is'), (5151, 'this\r\n issue'), (2467, 'this\r\n reason'), (5168, 'this\r\n the'), (7, 'this'), (3614, 'this:\r\n \r\n •'), (4040, 'thorough'), (539, 'those'), (638, 'though'), (810, 'thought'), (3649, 'thoughts'), (1080, 'thousand'), (1278, 'thousands'), (2469, 'thread'), (2900, 'threads'), (2315, 'three\r\n are'), (3142, 'three\r\n days'), (4240, 'three\r\n products'), (801, 'three'), (1908, 'throne'), (69, 'through'), (1189, 'throughout'), (2196, 'throw'), (3496, 'throw-away'), (739, 'thunder\r\n \r\n \r\n\r\nlike'), (4390, 'tiemann2'), (2696, 'tight\r\n loop'), (4615, 'tightly'), (1392, 'tikal'), (4908, 'timbre'), (4599, 'time\r\n against'), (3100, 'time\r\n estimation'), (4729, 'time\r\n on'), (3222, 'time\r\n the'), (4252, 'time\r\n to'), (71, 'time'), (2568, 'time-to-market'), (3170, 'time;'), (3757, 'time<'), (70, 'times'), (3573, 'timeto-\r\n market'), (1276, 'tiny'), (5039, 'title'), (2727, 'to\r\n be'), (3893, 'to\r\n bring'), (3784, 'to\r\n build'), (3811, 'to\r\n consider'), (4002, 'to\r\n constantly'), (2534, 'to\r\n deal'), (5112, 'to\r\n do'), (5138, 'to\r\n everyone'), (4501, 'to\r\n figure'), (4721, 'to\r\n forget'), (4392, 'to\r\n listen'), (4857, 'to\r\n mark'), (3048, 'to\r\n provide'), (2166, 'to\r\n remove'), (3632, 'to\r\n satisfy'), (3425, 'to\r\n see'), (5176, 'to\r\n serve'), (4756, 'to\r\n slip'), (2506, 'to\r\n that'), (3976, 'to\r\n the'), (4172, 'to\r\n their'), (2927, 'to\r\n this'), (3025, 'to\r\n understand'), (2780, 'to\r\n use'), (4634, 'to\r\n using'), (3595, 'to\r\n work'), (3338, 'to\r\n you'), (4129, 'to\r\n your'), (5301, 'to:\r\n\r\nadd'), (5349, 'to:<'), (2127, 'today'), (2143, 'today;'), (2333, 'together'), (3355, 'tolerated?'), (1660, 'tombs'), (3780, 'too\r\n complicated'), (2339, 'too\r\n many'), (2461, 'too\r\n much'), (2946, 'took\r\n us'), (2891, 'took'), (2247, 'tool'), (1310, 'tools\r\n\r\n\r\n\r\nalthough'), (1333, 'tools'), (5335, 'tools:\r\n\r\nforum\r\nchat\r\npersonal'), (5362, 'tools:<'), (2998, 'topic'), (632, 'topical;'), (1426, 'topography'), (1777, 'topoxte\r\n\r\n\r\n\r\n\r\n'), (1669, 'topped'), (781, 'tore'), (3925, 'torturous'), (678, 'total'), (4381, 'touch-type'), (1696, 'tour-guides'), (1658, 'toward'), (1652, 'towering'), (1442, 'towers'), (186, 'town'), (1850, 'towns'), (3734, 'tr>\r\n <'), (3493, 'track'), (897, 'tracked'), (2008, 'trade'); INSERT INTO `search_invertedindex` VALUES (4611, 'traded'), (4114, 'tradeoff'), (5117, 'tradeoffs'), (795, 'tradition'), (949, 'traditional'), (3575, 'traditionally'), (2133, 'traditions'), (5329, 'traffic'), (3892, 'trained'), (5309, 'trainees'), (922, 'training'), (846, 'traits'), (697, 'transfer'), (5403, 'transferred'), (1115, 'transitional'), (48, 'transitive'), (3718, 'transitory'), (132, 'transportation'), (694, 'transpositions'), (2858, 'trap'), (1326, 'trappings'), (113, 'traveling'), (108, 'travelling'), (5310, 'traverse'), (4827, 'treating'), (705, 'tree\r\n let'), (270, 'tree'), (1183, 'tree-bark'), (564, 'trees'), (3153, 'tremendous'), (5234, 'tremendously\r\n powerful'), (2044, 'tremendously'), (4244, 'tribal\r\n knowledge'), (4689, 'tribal'), (3344, 'tribe'), (2224, 'trick'), (3971, 'tried'), (4865, 'triple'), (5043, 'trite'), (3247, 'trivial'), (983, 'tropic'), (2049, 'tropical'), (2343, 'true'), (3143, 'truly'), (3139, 'trust'), (4571, 'trusted\r\n to'), (4570, 'trusted'), (4670, 'trusted<'), (4572, 'trustworthy'), (3241, 'truth'), (3041, 'trying'), (1867, 'tsuk'), (1369, 'tunich'), (4005, 'turn'), (2934, 'turning'), (2898, 'turns'), (986, 'twice'), (1397, 'twin'), (2598, 'two-fold'), (1666, 'two-hundred'), (4380, 'type\r\n learn'), (1675, 'type'), (4364, 'type-'), (4664, 'type<'), (2678, 'typecasts'), (4167, 'types\r\n this'), (884, 'types'), (358, 'typical'), (1193, 'typically'), (5202, 'tyranny'), (1612, 'tzompantli'), (1649, 'uaxactun'), (972, 'ujuxte'), (5346, 'ul>\r\n <'), (4858, 'ultra-competitive'), (2454, 'unanticipated\r\n specific'), (2488, 'unavoidable'), (839, 'unbounded'), (1117, 'unclear'), (3335, 'uncomfortable'), (4072, 'uncomfortably'), (5156, 'unconventional'), (3967, 'uncover'), (1345, 'uncovered'), (4534, 'under\r\n heavy'), (4449, 'under\r\n pressure'), (82, 'under'), (4871, 'under-emphasize'), (4293, 'underestimated'), (725, 'undergraph'), (1755, 'underlay'), (3466, 'understand\r\n it'), (3373, 'understand\r\n the'), (3852, 'understand\r\n why'), (2285, 'understand'), (4435, 'understandable'), (2277, 'understandable---it'), (2685, 'understanding\r\n of'), (1407, 'understanding'), (281, 'understood'), (804, 'underworld'), (2153, 'unesco'), (4830, 'unfinished'), (825, 'unfolding'), (3567, 'unfortunate'), (1155, 'unfortunately'), (5100, 'unhealthy'), (3629, 'uninterrupted'), (1886, 'unions'), (1355, 'unique'), (4308, 'unit\r\n tested'), (5382, 'unit\r\nhow'), (675, 'unit'), (659, 'units'), (5159, 'unity'), (4553, 'universal\r\n but'), (3420, 'universal'), (870, 'universe'), (1273, 'university'), (3180, 'unk-unks'), (2364, 'unknown'), (3179, 'unknowns'), (2588, 'unless'), (4630, 'unlike'), (3167, 'unlikely'), (3571, 'unloaded'), (2674, 'unnecessarily'), (2617, 'unnecessary'), (4073, 'unofficial'), (4755, 'unpleasant'), (2523, 'unpredictable\r\n circumstance'), (4514, 'unpredictable'), (3559, 'unravels'), (5135, 'unrealistic'), (4042, 'unreasonable'), (1119, 'unsettled'), (4681, 'unsettling'), (4724, 'unsuccessful\r\n to'), (454, 'until'), (3411, 'unto'), (2938, 'unusual'), (4229, 'unwise'), (4062, 'unworkable'), (4290, 'up\r\n the'), (4254, 'up-to-date'), (4277, 'up-to-dateness'), (1964, 'upakal'), (5373, 'upload'), (1285, 'upon'), (2803, 'upper'), (3515, 'upto-\r\n date'), (1448, 'urban'), (1969, 'urbanism'), (3851, 'us---technical'), (2574, 'usability'), (4084, 'usable'), (4083, 'usage'), (210, 'used'), (5251, 'used;'), (4845, 'useful\r\n artifact'), (216, 'useful'), (2757, 'useless'), (5059, 'user\r\n is'), (5058, 'user\r\n it'), (2794, 'user'), (5269, 'user<'), (4095, 'user?\r\n \r\n 4'), (4507, 'users'), (3807, 'uses'), (4516, 'using\r\n a'), (219, 'using'), (4912, 'usually\r\n be'), (449, 'usually'), (1439, 'usumacinta'), (2876, 'utilization'), (3304, 'utilize'), (1034, 'utilized'), (1727, 'uxmal'), (3129, 'vacation'), (4303, 'vacations'), (5216, 'vague'), (56, 'valid'), (98, 'valid:\r\n a'), (3342, 'valuable\r\n than'), (2521, 'valuable'), (58, 'value'), (1916, 'values'), (4224, 'vapor'), (4090, 'vapor?'), (2853, 'variability'), (4604, 'variable\r\n n'), (4465, 'variable'), (53, 'variables'), (1083, 'variations'), (1412, 'varied'), (4904, 'varies'), (651, 'variety'), (1346, 'various'), (2043, 'vary'), (1682, 'vast'), (900, 'venus'), (2165, 'verb'), (4790, 'verbally'), (3024, 'verify'), (4074, 'version'), (3494, 'versions'), (292, 'very'), (2978, 'vested'), (3369, 'vice'), (792, 'victims'), (2004, 'victories'), (3906, 'view'), (1013, 'vigesimal'), (4924, 'virtue'), (2194, 'visibility'), (2230, 'visible'), (3512, 'visibly'), (2348, 'vision'), (121, 'visit'), (191, 'visited'), (141, 'visiting'), (4334, 'visual'), (4846, 'visualize'), (4874, 'vital'), (3861, 'vocabulary\r\n create'), (5127, 'volume'), (2867, 'wait'), (4421, 'waiting'), (1863, 'wakab’nal'), (3456, 'walked'), (4541, 'wall\r\n '), (1673, 'wall'), (2517, 'wall--clock'), (4537, 'wall-clock\r\n time'), (2520, 'wall-clock'), (4632, 'wall;'), (645, 'walls'), (4747, 'want\r\n to'), (9, 'want'), (5131, 'want?’'), (5213, 'wanted'), (5072, 'wants'), (1870, 'warfare'), (3625, 'warmed-up'), (1298, 'wars'), (18, 'warshall'), (4190, 'wasted'), (5099, 'wasteful'), (3863, 'wastes'), (3880, 'watch\r\n carefully'), (3955, 'watch'), (5083, 'watching'), (5124, 'water'), (4997, 'way\r\n they'), (4610, 'way!\r\n \r\n time'), (838, 'ways'), (5048, 'ways-\r\n --after'), (4007, 'ways:\r\n \r\n it'), (5190, 'ways:\r\n \r\n •'), (4833, 'we\r\n have'), (3089, 'we\r\n will'), (3197, 'weak'), (3207, 'weaker\r\n team'), (5027, 'weaker'), (4209, 'weaknesses'), (1815, 'wealth'), (2913, 'week'), (2892, 'weeks'), (3321, 'weighed\r\n against'), (1593, 'weighty'), (4357, 'welcome'), (4511, 'well\r\n enough'), (4766, 'well\r\n to'), (389, 'well'), (1947, 'well-documented'), (4110, 'well-established'), (4751, 'well-informed'), (3806, 'well-isolated'), (1980, 'well-known'), (5015, 'well-motivated\r\n and'), (5008, 'well-motivated'), (2954, 'well-written'), (5260, 'well<'), (1475, 'wells'), (1140, 'went'), (42, 'were'), (916, 'western'), (4412, 'what\r\n can'), (3133, 'what\r\n is'), (2336, 'what\r\n the'), (3954, 'what\r\n they'), (482, 'what'), (2326, 'whatever'), (2176, 'whatnot'), (1535, 'wheel-based'), (2227, 'when\r\n it'), (2952, 'when\r\n they'), (4327, 'when\r\n to'), (2850, 'when\r\n we'), (4616, 'when\r\n you'), (221, 'when'), (185, 'whenever'), (3950, 'where\r\n they'), (189, 'where'), (684, 'whereas'), (4849, 'wherever\r\n they'), (4895, 'wherever'), (24, 'whether'), (2396, 'which\r\n you'), (54, 'which'), (134, 'whichever'), (3956, 'whiff'), (312, 'while'), (2863, 'whim'), (4788, 'white-paper'), (4852, 'whole\r\n time;'), (283, 'whole'), (3713, 'whole-heartedly'), (4768, 'whom'), (362, 'whose'), (1561, 'widely'), (1917, 'wider'), (1340, 'widespread'), (1200, 'width'), (3529, 'will\r\n be'), (4765, 'will\r\n have'), (2468, 'will\r\n identify'), (2287, 'will\r\n make'), (2804, 'will\r\n need'), (5221, 'will\r\n often'), (4386, 'will\r\n probably'), (3341, 'will\r\n save'), (4764, 'will\r\n want'), (92, 'will'), (819, 'window'), (102, 'winner'), (3364, 'wisdom'), (2569, 'wise'), (3380, 'wisely\r\n life'), (3379, 'wisely'), (3761, 'wisely<'), (4236, 'wiser'), (4031, 'wish'), (3086, 'wishfully'), (1371, 'witch'), (4085, 'with\r\n a'), (5163, 'with\r\n experience'), (3044, 'with\r\n others'), (2627, 'with\r\n respect'), (3937, 'with\r\n themselves'), (2458, 'with\r\n those'), (160, 'with'), (4287, 'with;'), (1164, 'within'), (4902, 'without\r\n consideration'), (3503, 'without\r\n one'), (3694, 'without\r\n prejudice'), (5053, 'without\r\n visibility'), (466, 'without'), (1968, 'witnessed'), (1303, 'women'), (2256, 'wonderful'), (2773, 'wonderful:'), (4441, 'wonderfully\r\n abstract'), (1579, 'wooden'), (535, 'word'), (4476, 'wordiness'), (3848, 'words'), (5177, 'work\r\n more'), (4875, 'work\r\n on'), (1261, 'work'), (3160, 'work---note'), (4067, 'workarounds'), (1549, 'worked'), (5205, 'working\r\n programmers'), (3993, 'working\r\n with'), (1021, 'working'), (5020, 'works\r\n hard'), (2226, 'works'), (1074, 'world'), (830, 'worlds'), (3548, 'worry\r\n about'), (2288, 'worse'), (873, 'worshiped'), (596, 'worst'), (3825, 'worth'), (171, 'would'), (3502, 'wouldn'), (1154, 'write'), (3405, 'writer'), (1056, 'writing'), (1125, 'writings'), (3435, 'written\r\n perfectly'), (1203, 'written'), (205, 'wrong'), (2216, 'wrote'), (2852, 'wyoming'), (1746, 'yalain'), (1272, 'yale'), (1396, 'yaxhá'), (892, 'year'), (1048, 'years'), (1358, 'years;'), (4157, 'yes-man'), (2181, 'you\r\n are'), (4957, 'you\r\n believe'), (3873, 'you\r\n can'), (2662, 'you\r\n compute'), (2215, 'you\r\n create'), (2347, 'you\r\n don'), (2283, 'you\r\n have'), (4068, 'you\r\n make'), (3471, 'you\r\n rewrote'), (2307, 'you\r\n run'), (2409, 'you\r\n should'), (3707, 'you\r\n think'), (2498, 'you\r\n try'), (2371, 'you\r\n will'), (2491, 'you\r\n write'), (865, 'young'), (3334, 'your\r\n boss'), (3214, 'your\r\n manager'), (2418, 'your\r\n own'), (2183, 'your'), (3343, 'yours'), (4938, 'yourself\r\n not'), (2649, 'yourself'), (2367, 'yourself:'), (1433, 'yucatán'), (1738, 'yucatec'), (1766, 'zacpeten'), (1129, 'zapotec'), (1101, 'zapotecs'), (2100, 'zapotec–speaking'), (1208, 'zealous'), (978, 'zenial'), (713, 'zero'), (1988, 'zone'), (2082, 'zones'), (2054, 'zones:'), (3451, '``bar'), (3538, '``did'), (3410, '``do'), (3534, '``does'), (3452, '``doit'), (3450, '``foo'), (5180, '``learning'), (4585, '``not'), (4454, '``succinctness'), (3391, '``yes'), (2392, '‘a-ha!’'), (5217, '‘build'), (3000, '‘computer'), (3260, '‘does'), (2376, '‘either'), (4180, '‘i\r\n told'), (2243, '‘innards’'), (3003, '‘knife'), (5128, '‘no’'), (2903, '‘stuck’'), (3965, '‘take-home’'), (2928, '‘the'), (2849, '‘this'), (4500, '‘wall’'), (5130, '‘what'), (2363, '‘which'), (3845, '‘yes’'), (2320, '’\r\n \r\n can'), (2067, '“maya”'); -- -------------------------------------------------------- -- -- Table structure for table `search_keywords` -- CREATE TABLE `search_keywords` ( `keyword` mediumint(8) unsigned DEFAULT NULL, `foreign_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `table_name` tinyint(1) NOT NULL, `position` tinyint(1) NOT NULL DEFAULT '1', KEY `keyword` (`keyword`), KEY `foreign_ID` (`foreign_ID`), KEY `table_name` (`table_name`), KEY `position` (`position`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `search_keywords` -- INSERT INTO `search_keywords` VALUES (1, 1, 1, 0), (2, 1, 1, 0), (1, 1, 3, 0), (2, 1, 3, 0), (3, 1, 0, 0), (4, 1, 0, 0), (5, 1, 0, 1), (6, 1, 0, 1), (7, 1, 0, 1), (8, 1, 0, 1), (9, 1, 0, 1), (10, 1, 0, 1), (11, 1, 0, 1), (12, 1, 0, 1), (13, 1, 0, 1), (14, 1, 0, 1), (3, 1, 0, 1), (4, 1, 0, 1), (15, 1, 0, 1), (16, 1, 0, 1), (17, 1, 0, 1), (18, 1, 0, 1), (19, 1, 0, 1), (20, 1, 0, 1), (21, 1, 0, 1), (22, 1, 0, 1), (23, 1, 0, 1), (24, 1, 0, 1), (25, 1, 0, 1), (26, 1, 0, 1), (27, 1, 0, 1), (28, 1, 0, 1), (29, 1, 0, 1), (30, 1, 0, 1), (31, 1, 0, 1), (32, 1, 0, 1), (33, 1, 0, 1), (34, 1, 0, 1), (35, 1, 0, 1), (36, 1, 0, 1), (37, 1, 0, 1), (38, 1, 0, 1), (39, 1, 0, 1), (40, 1, 0, 1), (41, 1, 0, 1), (42, 1, 0, 1), (43, 1, 0, 1), (44, 1, 0, 1), (45, 1, 0, 1), (46, 1, 0, 1), (47, 1, 0, 1), (48, 1, 0, 1), (49, 1, 0, 1), (50, 1, 0, 1), (51, 1, 0, 1), (52, 1, 0, 1), (53, 1, 0, 1), (54, 1, 0, 1), (55, 1, 0, 1), (56, 1, 0, 1), (57, 1, 0, 1), (58, 1, 0, 1), (59, 1, 0, 1), (60, 1, 0, 1), (61, 1, 0, 1), (62, 1, 0, 1), (63, 1, 0, 1), (64, 1, 0, 1), (65, 1, 0, 1), (66, 1, 0, 1), (67, 1, 0, 1), (68, 1, 0, 1), (69, 1, 0, 1), (70, 1, 0, 1), (71, 1, 0, 1), (72, 1, 0, 1), (73, 1, 0, 1), (74, 1, 0, 1), (75, 1, 0, 1), (76, 1, 0, 1), (77, 1, 0, 1), (78, 1, 0, 1), (79, 1, 0, 1), (80, 1, 0, 1), (81, 1, 0, 1), (82, 1, 0, 1), (83, 1, 0, 1), (84, 1, 0, 1), (85, 1, 0, 1), (86, 1, 0, 1), (87, 1, 0, 1), (88, 1, 0, 1), (89, 1, 0, 1), (90, 1, 0, 1), (91, 1, 0, 1), (92, 1, 0, 1), (93, 1, 0, 1), (94, 1, 0, 1), (95, 1, 0, 1), (96, 1, 0, 1), (97, 1, 0, 1), (98, 1, 0, 1), (99, 1, 0, 1), (100, 1, 0, 1), (101, 1, 0, 1), (102, 1, 0, 1), (103, 1, 0, 1), (104, 1, 0, 1), (105, 2, 0, 0), (106, 2, 0, 0), (107, 2, 0, 0), (108, 3, 0, 0), (109, 3, 0, 0), (8, 3, 0, 0), (110, 3, 0, 1), (109, 3, 0, 1), (8, 3, 0, 1), (111, 3, 0, 1), (112, 3, 0, 1), (4, 3, 0, 1), (113, 3, 0, 1), (114, 3, 0, 1), (115, 3, 0, 1), (116, 3, 0, 1), (117, 3, 0, 1), (118, 3, 0, 1), (47, 3, 0, 1), (119, 3, 0, 1), (120, 3, 0, 1), (121, 3, 0, 1), (122, 3, 0, 1), (123, 3, 0, 1), (69, 3, 0, 1), (124, 3, 0, 1), (125, 3, 0, 1), (63, 3, 0, 1), (126, 3, 0, 1), (127, 3, 0, 1), (30, 3, 0, 1), (128, 3, 0, 1), (54, 3, 0, 1), (129, 3, 0, 1), (130, 3, 0, 1), (131, 3, 0, 1), (38, 3, 0, 1), (132, 3, 0, 1), (133, 3, 0, 1), (134, 3, 0, 1), (135, 3, 0, 1), (136, 3, 0, 1), (137, 3, 0, 1), (138, 3, 0, 1), (139, 3, 0, 1), (46, 3, 0, 1), (43, 3, 0, 1), (140, 3, 0, 1), (141, 3, 0, 1), (142, 3, 0, 1), (10, 3, 0, 1), (143, 3, 0, 1), (144, 3, 0, 1), (145, 3, 0, 1), (146, 3, 0, 1), (147, 3, 0, 1), (148, 3, 0, 1), (25, 3, 0, 1), (149, 3, 0, 1), (150, 3, 0, 1), (151, 3, 0, 1), (152, 3, 0, 1), (153, 3, 0, 1), (154, 3, 0, 1), (155, 3, 0, 1), (156, 3, 0, 1), (28, 3, 0, 1), (157, 3, 0, 1), (158, 3, 0, 1), (93, 3, 0, 1), (159, 3, 0, 1), (160, 3, 0, 1), (161, 3, 0, 1), (162, 3, 0, 1), (163, 3, 0, 1), (164, 3, 0, 1), (165, 3, 0, 1), (42, 3, 0, 1), (166, 3, 0, 1), (167, 3, 0, 1), (168, 3, 0, 1), (72, 3, 0, 1), (169, 3, 0, 1), (170, 3, 0, 1), (171, 3, 0, 1), (172, 3, 0, 1), (90, 3, 0, 1), (173, 3, 0, 1), (174, 3, 0, 1), (175, 3, 0, 1), (176, 3, 0, 1), (177, 3, 0, 1), (178, 3, 0, 1), (179, 3, 0, 1), (180, 3, 0, 1), (181, 3, 0, 1), (182, 3, 0, 1), (183, 3, 0, 1), (21, 3, 0, 1), (92, 3, 0, 1), (184, 3, 0, 1), (7, 3, 0, 1), (185, 3, 0, 1), (186, 3, 0, 1), (187, 3, 0, 1), (188, 3, 0, 1), (26, 3, 0, 1), (189, 3, 0, 1), (190, 3, 0, 1), (191, 3, 0, 1), (192, 3, 0, 1), (84, 3, 0, 1), (193, 3, 0, 1), (194, 3, 0, 1), (195, 3, 0, 1), (196, 3, 0, 1), (197, 3, 0, 1), (198, 3, 0, 1), (199, 3, 0, 1), (1, 3, 0, 1), (200, 3, 0, 1), (201, 3, 0, 1), (202, 3, 0, 1), (203, 3, 0, 1), (24, 3, 0, 1), (204, 3, 0, 1), (205, 3, 0, 1), (206, 3, 0, 1), (207, 3, 0, 1), (41, 4, 0, 0), (34, 4, 0, 0), (208, 4, 0, 1), (209, 4, 0, 1), (41, 4, 0, 1), (34, 4, 0, 1), (210, 4, 0, 1), (211, 4, 0, 1), (212, 4, 0, 1), (213, 4, 0, 1), (214, 4, 0, 1), (215, 4, 0, 1), (216, 4, 0, 1), (217, 4, 0, 1), (4, 4, 0, 1), (218, 4, 0, 1), (219, 4, 0, 1), (7, 4, 0, 1), (220, 4, 0, 1), (26, 4, 0, 1), (54, 4, 0, 1), (44, 4, 0, 1), (221, 4, 0, 1), (222, 4, 0, 1), (223, 4, 0, 1), (224, 4, 0, 1), (225, 4, 0, 1), (163, 4, 0, 1), (226, 4, 0, 1), (227, 4, 0, 1), (228, 4, 0, 1), (19, 4, 0, 1), (229, 4, 0, 1), (230, 4, 0, 1), (231, 4, 0, 1), (232, 4, 0, 1), (12, 4, 0, 1), (35, 4, 0, 1), (43, 4, 0, 1), (233, 4, 0, 1), (234, 4, 0, 1), (160, 4, 0, 1), (235, 4, 0, 1), (162, 4, 0, 1), (236, 4, 0, 1), (237, 4, 0, 1), (238, 4, 0, 1), (169, 4, 0, 1), (239, 4, 0, 1), (72, 4, 0, 1), (73, 4, 0, 1), (240, 4, 0, 1), (144, 4, 0, 1), (241, 4, 0, 1), (242, 4, 0, 1), (243, 5, 0, 0), (244, 5, 0, 1), (243, 5, 0, 1), (245, 5, 0, 1), (246, 5, 0, 1), (156, 5, 0, 1), (247, 5, 0, 1), (136, 5, 0, 1), (151, 5, 0, 1), (189, 5, 0, 1), (69, 5, 0, 1), (248, 5, 0, 1), (249, 5, 0, 1), (250, 5, 0, 1), (251, 5, 0, 1), (252, 5, 0, 1), (253, 5, 0, 1), (145, 5, 0, 1), (254, 5, 0, 1), (198, 5, 0, 1), (255, 5, 0, 1), (39, 5, 0, 1), (256, 5, 0, 1), (54, 5, 0, 1), (120, 5, 0, 1), (257, 5, 0, 1), (43, 5, 0, 1), (25, 5, 0, 1), (258, 5, 0, 1), (259, 5, 0, 1), (260, 5, 0, 1), (261, 5, 0, 1), (262, 5, 0, 1), (263, 5, 0, 1), (264, 5, 0, 1), (7, 5, 0, 1), (265, 5, 0, 1), (176, 5, 0, 1), (266, 5, 0, 1), (267, 5, 0, 1), (268, 5, 0, 1), (91, 5, 0, 1), (194, 5, 0, 1), (92, 5, 0, 1), (269, 5, 0, 1), (270, 5, 0, 1), (271, 5, 0, 1), (272, 5, 0, 1), (273, 5, 0, 1), (274, 5, 0, 1), (275, 5, 0, 1), (214, 5, 0, 1), (276, 5, 0, 1), (277, 5, 0, 1), (278, 5, 0, 1), (279, 5, 0, 1), (280, 5, 0, 1), (281, 5, 0, 1), (180, 5, 0, 1), (282, 5, 0, 1), (221, 5, 0, 1), (73, 5, 0, 1), (283, 5, 0, 1), (284, 5, 0, 1), (285, 5, 0, 1), (286, 5, 0, 1), (195, 5, 0, 1), (287, 5, 0, 1), (37, 5, 0, 1), (288, 5, 0, 1), (289, 5, 0, 1), (119, 5, 0, 1), (290, 5, 0, 1), (291, 5, 0, 1), (292, 5, 0, 1), (293, 5, 0, 1), (294, 5, 0, 1), (295, 5, 0, 1), (296, 5, 0, 1), (297, 5, 0, 1), (298, 5, 0, 1), (299, 5, 0, 1), (300, 5, 0, 1), (301, 5, 0, 1), (302, 5, 0, 1), (303, 5, 0, 1), (304, 5, 0, 1), (305, 5, 0, 1), (306, 5, 0, 1), (307, 5, 0, 1), (231, 5, 0, 1), (308, 5, 0, 1), (8, 5, 0, 1), (309, 5, 0, 1), (310, 5, 0, 1), (72, 5, 0, 1), (311, 5, 0, 1), (21, 5, 0, 1), (312, 5, 0, 1), (56, 5, 0, 1), (137, 5, 0, 1), (313, 5, 0, 1), (314, 5, 0, 1), (315, 5, 0, 1), (316, 5, 0, 1), (317, 5, 0, 1), (190, 5, 0, 1), (318, 5, 0, 1), (319, 5, 0, 1), (320, 5, 0, 1), (321, 5, 0, 1), (158, 5, 0, 1), (322, 5, 0, 1), (323, 5, 0, 1), (324, 5, 0, 1), (325, 5, 0, 1), (326, 5, 0, 1), (327, 5, 0, 1), (328, 5, 0, 1), (329, 5, 0, 1), (31, 5, 0, 1), (330, 5, 0, 1), (4, 5, 0, 1), (331, 5, 0, 1), (332, 5, 0, 1), (128, 5, 0, 1), (333, 5, 0, 1), (165, 5, 0, 1), (334, 5, 0, 1), (335, 5, 0, 1), (76, 5, 0, 1), (336, 5, 0, 1), (160, 5, 0, 1), (337, 5, 0, 1), (147, 5, 0, 1), (338, 5, 0, 1), (339, 5, 0, 1), (340, 5, 0, 1), (341, 5, 0, 1), (178, 5, 0, 1), (342, 5, 0, 1), (188, 5, 0, 1), (343, 5, 0, 1), (344, 5, 0, 1), (345, 5, 0, 1), (346, 5, 0, 1), (347, 5, 0, 1), (348, 5, 0, 1), (349, 5, 0, 1), (350, 5, 0, 1), (351, 5, 0, 1), (352, 5, 0, 1), (96, 5, 0, 1), (353, 5, 0, 1), (354, 5, 0, 1), (355, 5, 0, 1), (356, 5, 0, 1), (142, 5, 0, 1), (357, 5, 0, 1), (77, 5, 0, 1), (358, 5, 0, 1), (359, 5, 0, 1), (360, 5, 0, 1), (361, 5, 0, 1), (362, 5, 0, 1), (363, 5, 0, 1), (364, 5, 0, 1), (365, 5, 0, 1), (366, 5, 0, 1), (17, 5, 0, 1), (367, 5, 0, 1), (368, 5, 0, 1), (369, 5, 0, 1), (370, 5, 0, 1), (371, 5, 0, 1), (202, 5, 0, 1), (372, 5, 0, 1), (373, 5, 0, 1), (374, 5, 0, 1), (219, 5, 0, 1), (375, 5, 0, 1), (376, 5, 0, 1), (377, 6, 0, 0), (4, 6, 0, 0), (378, 6, 0, 1), (379, 6, 0, 1), (4, 6, 0, 1), (182, 6, 0, 1), (11, 6, 0, 1), (38, 6, 0, 1), (380, 6, 0, 1), (144, 6, 0, 1), (148, 6, 0, 1), (43, 6, 0, 1), (72, 6, 0, 1), (381, 6, 0, 1), (145, 6, 0, 1), (318, 6, 0, 1), (382, 6, 0, 1), (383, 6, 0, 1), (91, 6, 0, 1), (23, 6, 0, 1), (251, 6, 0, 1), (384, 6, 0, 1), (54, 6, 0, 1), (44, 6, 0, 1), (63, 6, 0, 1), (385, 6, 0, 1), (386, 6, 0, 1), (223, 6, 0, 1), (269, 6, 0, 1), (67, 6, 0, 1), (180, 6, 0, 1), (194, 6, 0, 1), (387, 6, 0, 1), (388, 6, 0, 1), (389, 6, 0, 1), (178, 6, 0, 1), (390, 6, 0, 1), (129, 6, 0, 1), (391, 6, 0, 1), (392, 6, 0, 1), (225, 6, 0, 1), (393, 6, 0, 1), (7, 6, 0, 1), (246, 6, 0, 1), (394, 6, 0, 1), (303, 6, 0, 1), (195, 6, 0, 1), (196, 6, 0, 1), (16, 6, 0, 1), (17, 6, 0, 1), (395, 6, 0, 1), (396, 6, 0, 1), (37, 6, 0, 1), (26, 6, 0, 1), (397, 6, 0, 1), (19, 6, 0, 1), (29, 6, 0, 1), (78, 6, 0, 1), (92, 6, 0, 1), (30, 6, 0, 1), (361, 6, 0, 1), (61, 6, 0, 1), (398, 6, 0, 1), (399, 6, 0, 1), (188, 6, 0, 1), (291, 6, 0, 1), (283, 6, 0, 1), (248, 6, 0, 1), (156, 6, 0, 1), (400, 6, 0, 1), (401, 6, 0, 1), (402, 6, 0, 1), (403, 6, 0, 1), (404, 6, 0, 1), (405, 6, 0, 1), (377, 6, 0, 1), (406, 6, 0, 1), (407, 6, 0, 1), (408, 6, 0, 1), (409, 6, 0, 1), (410, 6, 0, 1), (339, 6, 0, 1), (411, 6, 0, 1), (412, 6, 0, 1), (413, 6, 0, 1), (414, 6, 0, 1), (415, 6, 0, 1), (14, 6, 0, 1), (416, 6, 0, 1), (417, 6, 0, 1), (160, 6, 0, 1), (418, 6, 0, 1), (217, 6, 0, 1), (266, 6, 0, 1), (419, 6, 0, 1), (420, 6, 0, 1), (116, 6, 0, 1), (10, 6, 0, 1), (421, 6, 0, 1), (422, 6, 0, 1), (423, 6, 0, 1), (76, 6, 0, 1), (77, 6, 0, 1), (64, 6, 0, 1), (424, 6, 0, 1), (103, 6, 0, 1), (183, 6, 0, 1), (425, 6, 0, 1), (426, 6, 0, 1), (427, 6, 0, 1), (24, 6, 0, 1), (198, 6, 0, 1), (142, 6, 0, 1), (120, 6, 0, 1), (428, 6, 0, 1), (429, 6, 0, 1), (277, 6, 0, 1), (430, 6, 0, 1), (202, 6, 0, 1), (431, 6, 0, 1), (242, 6, 0, 1), (432, 7, 0, 0), (11, 7, 0, 0), (433, 7, 0, 1), (434, 7, 0, 1), (38, 7, 0, 1), (29, 7, 0, 1), (91, 7, 0, 1), (435, 7, 0, 1), (54, 7, 0, 1), (436, 7, 0, 1), (291, 7, 0, 1), (133, 7, 0, 1), (11, 7, 0, 1), (30, 7, 0, 1), (25, 7, 0, 1), (162, 7, 0, 1), (160, 7, 0, 1), (10, 7, 0, 1), (7, 7, 0, 1), (47, 7, 0, 1), (437, 7, 0, 1), (213, 7, 0, 1), (225, 7, 0, 1), (96, 7, 0, 1), (2, 7, 0, 1), (147, 7, 0, 1), (438, 7, 0, 1), (1, 7, 0, 1), (245, 7, 0, 1), (401, 7, 0, 1), (402, 7, 0, 1), (439, 7, 0, 1), (207, 7, 0, 1), (112, 8, 0, 0), (2, 8, 0, 0), (440, 8, 0, 1), (441, 8, 0, 1), (442, 8, 0, 1), (112, 8, 0, 1), (210, 8, 0, 1), (2, 8, 0, 1), (54, 8, 0, 1), (28, 8, 0, 1), (151, 8, 0, 1), (133, 8, 0, 1), (136, 8, 0, 1), (443, 8, 0, 1), (444, 8, 0, 1), (445, 8, 0, 1), (43, 8, 0, 1), (183, 8, 0, 1), (92, 8, 0, 1), (78, 8, 0, 1), (446, 8, 0, 1), (129, 8, 0, 1), (447, 8, 0, 1), (448, 8, 0, 1), (158, 8, 0, 1), (449, 8, 0, 1), (21, 8, 0, 1), (450, 8, 0, 1), (451, 8, 0, 1), (280, 8, 0, 1), (452, 8, 0, 1), (453, 8, 0, 1), (4, 8, 0, 1), (320, 8, 0, 1), (47, 8, 0, 1), (454, 8, 0, 1), (7, 8, 0, 1), (455, 8, 0, 1), (245, 8, 0, 1), (30, 8, 0, 1), (116, 8, 0, 1), (439, 8, 0, 1), (142, 8, 0, 1), (456, 8, 0, 1), (140, 8, 0, 1), (457, 8, 0, 1), (458, 8, 0, 1), (251, 8, 0, 1), (459, 8, 0, 1), (385, 8, 0, 1), (8, 8, 0, 1), (144, 8, 0, 1), (460, 8, 0, 1), (207, 8, 0, 1), (401, 9, 0, 0), (402, 9, 0, 0), (461, 9, 0, 1), (462, 9, 0, 1), (318, 9, 0, 1), (105, 9, 0, 1), (8, 9, 0, 1), (463, 9, 0, 1), (413, 9, 0, 1), (1, 9, 0, 1), (245, 9, 0, 1), (43, 9, 0, 1), (464, 9, 0, 1), (465, 9, 0, 1), (183, 9, 0, 1), (21, 9, 0, 1), (466, 9, 0, 1), (467, 9, 0, 1), (468, 9, 0, 1), (71, 9, 0, 1), (469, 9, 0, 1), (124, 9, 0, 1), (72, 9, 0, 1), (373, 9, 0, 1), (151, 9, 0, 1), (470, 9, 0, 1), (402, 9, 0, 1), (471, 9, 0, 1), (472, 9, 0, 1), (473, 9, 0, 1), (474, 9, 0, 1), (187, 9, 0, 1), (127, 9, 0, 1), (30, 9, 0, 1), (198, 9, 0, 1), (475, 9, 0, 1), (476, 9, 0, 1), (78, 9, 0, 1), (219, 9, 0, 1), (443, 9, 0, 1), (69, 9, 0, 1), (477, 9, 0, 1), (97, 9, 0, 1), (54, 9, 0, 1), (478, 9, 0, 1), (7, 9, 0, 1), (61, 9, 0, 1), (479, 9, 0, 1), (480, 9, 0, 1), (481, 9, 0, 1), (482, 9, 0, 1), (210, 9, 0, 1), (483, 9, 0, 1), (484, 9, 0, 1), (357, 9, 0, 1), (485, 9, 0, 1), (486, 9, 0, 1), (487, 9, 0, 1), (488, 9, 0, 1), (90, 9, 0, 1), (489, 9, 0, 1), (320, 9, 0, 1), (490, 9, 0, 1), (491, 9, 0, 1), (492, 9, 0, 1), (493, 9, 0, 1), (494, 9, 0, 1), (495, 9, 0, 1), (47, 9, 0, 1), (213, 9, 0, 1), (496, 9, 0, 1), (497, 9, 0, 1), (20, 9, 0, 1), (498, 9, 0, 1), (136, 9, 0, 1), (135, 9, 0, 1), (67, 9, 0, 1), (120, 9, 0, 1), (499, 9, 0, 1), (92, 9, 0, 1), (87, 9, 0, 1), (330, 9, 0, 1), (358, 9, 0, 1), (165, 9, 0, 1), (500, 9, 0, 1), (137, 9, 0, 1), (10, 9, 0, 1), (11, 9, 0, 1), (147, 9, 0, 1), (501, 9, 0, 1), (12, 9, 0, 1), (502, 9, 0, 1), (144, 9, 0, 1), (148, 9, 0, 1), (503, 9, 0, 1), (180, 9, 0, 1), (44, 9, 0, 1), (504, 9, 0, 1), (29, 9, 0, 1), (505, 9, 0, 1), (133, 9, 0, 1), (506, 9, 0, 1), (507, 9, 0, 1), (508, 9, 0, 1), (509, 9, 0, 1), (68, 9, 0, 1), (280, 9, 0, 1), (281, 9, 0, 1), (510, 9, 0, 1), (511, 9, 0, 1), (192, 9, 0, 1), (512, 9, 0, 1), (513, 9, 0, 1), (514, 9, 0, 1), (515, 9, 0, 1), (516, 9, 0, 1), (314, 9, 0, 1), (190, 9, 0, 1), (326, 9, 0, 1), (517, 9, 0, 1), (518, 9, 0, 1), (160, 9, 0, 1), (45, 9, 0, 1), (50, 9, 0, 1), (74, 9, 0, 1), (80, 9, 0, 1), (4, 9, 0, 1), (519, 9, 0, 1), (520, 9, 0, 1), (521, 9, 0, 1), (400, 9, 0, 1), (522, 9, 0, 1), (169, 9, 0, 1), (195, 9, 0, 1), (249, 9, 0, 1), (63, 9, 0, 1), (523, 9, 0, 1), (524, 9, 0, 1), (232, 9, 0, 1), (525, 9, 0, 1), (526, 9, 0, 1), (163, 9, 0, 1), (527, 9, 0, 1), (128, 9, 0, 1), (207, 9, 0, 1), (217, 10, 0, 0), (4, 10, 0, 0), (528, 10, 0, 1), (529, 10, 0, 1), (19, 10, 0, 1), (417, 10, 0, 1), (199, 10, 0, 1), (530, 10, 0, 1), (140, 10, 0, 1), (54, 10, 0, 1), (531, 10, 0, 1), (532, 10, 0, 1), (7, 10, 0, 1), (261, 10, 0, 1), (190, 10, 0, 1), (533, 10, 0, 1), (225, 10, 0, 1), (81, 10, 0, 1), (30, 10, 0, 1), (534, 10, 0, 1), (535, 10, 0, 1), (536, 10, 0, 1), (44, 10, 0, 1), (426, 10, 0, 1), (92, 10, 0, 1), (537, 10, 0, 1), (538, 10, 0, 1), (539, 10, 0, 1), (14, 10, 0, 1), (540, 10, 0, 1), (541, 10, 0, 1), (270, 10, 0, 1), (76, 10, 0, 1), (77, 10, 0, 1), (513, 10, 0, 1), (542, 10, 0, 1), (543, 10, 0, 1), (544, 10, 0, 1), (415, 10, 0, 1), (357, 10, 0, 1), (399, 10, 0, 1), (160, 10, 0, 1), (73, 10, 0, 1), (43, 10, 0, 1), (444, 10, 0, 1), (493, 10, 0, 1), (72, 10, 0, 1), (545, 10, 0, 1), (217, 10, 0, 1), (4, 10, 0, 1), (253, 10, 0, 1), (546, 10, 0, 1), (165, 10, 0, 1), (250, 10, 0, 1), (547, 10, 0, 1), (423, 10, 0, 1), (548, 10, 0, 1), (233, 10, 0, 1), (343, 10, 0, 1), (221, 10, 0, 1), (25, 10, 0, 1), (549, 10, 0, 1), (71, 10, 0, 1), (219, 10, 0, 1), (1, 10, 0, 1), (245, 10, 0, 1), (133, 10, 0, 1), (386, 10, 0, 1), (354, 10, 0, 1), (235, 10, 0, 1), (10, 10, 0, 1), (38, 10, 0, 1), (67, 10, 0, 1), (234, 10, 0, 1), (550, 10, 0, 1), (551, 10, 0, 1), (147, 10, 0, 1), (552, 10, 0, 1), (114, 10, 0, 1), (553, 10, 0, 1), (554, 10, 0, 1), (555, 10, 0, 1), (280, 10, 0, 1), (281, 10, 0, 1), (96, 10, 0, 1), (556, 10, 0, 1), (557, 10, 0, 1), (558, 10, 0, 1), (559, 11, 0, 0), (4, 11, 0, 0), (560, 11, 0, 1), (561, 11, 0, 1), (559, 11, 0, 1), (4, 11, 0, 1), (562, 11, 0, 1), (160, 11, 0, 1), (563, 11, 0, 1), (54, 11, 0, 1), (517, 11, 0, 1), (564, 11, 0, 1), (124, 11, 0, 1), (157, 11, 0, 1), (270, 11, 0, 1), (63, 11, 0, 1), (73, 11, 0, 1), (565, 11, 0, 1), (566, 11, 0, 1), (72, 11, 0, 1), (169, 11, 0, 1), (567, 11, 0, 1), (7, 11, 0, 1), (399, 11, 0, 1), (476, 11, 0, 1), (446, 11, 0, 1), (159, 11, 0, 1), (568, 11, 0, 1), (395, 11, 0, 1), (454, 11, 0, 1), (10, 11, 0, 1), (569, 11, 0, 1), (235, 11, 0, 1), (390, 11, 0, 1), (162, 11, 0, 1), (38, 11, 0, 1), (44, 11, 0, 1), (43, 11, 0, 1), (320, 11, 0, 1), (82, 11, 0, 1), (1, 11, 0, 1), (570, 11, 0, 1), (199, 11, 0, 1), (478, 11, 0, 1), (273, 11, 0, 1), (326, 11, 0, 1), (318, 11, 0, 1), (249, 11, 0, 1), (252, 11, 0, 1), (571, 11, 0, 1), (37, 11, 0, 1), (153, 11, 0, 1), (260, 11, 0, 1), (572, 11, 0, 1), (92, 11, 0, 1), (573, 11, 0, 1), (574, 11, 0, 1), (188, 11, 0, 1), (140, 11, 0, 1), (354, 11, 0, 1), (575, 11, 0, 1), (576, 11, 0, 1), (577, 11, 0, 1), (578, 11, 0, 1), (242, 11, 0, 1), (579, 12, 0, 0), (580, 12, 0, 1), (7, 12, 0, 1), (581, 12, 0, 1), (582, 12, 0, 1), (105, 12, 0, 1), (439, 12, 0, 1), (54, 12, 0, 1), (118, 12, 0, 1), (583, 12, 0, 1), (584, 12, 0, 1), (39, 12, 0, 1), (117, 12, 0, 1), (189, 12, 0, 1), (145, 12, 0, 1), (136, 12, 0, 1), (151, 12, 0, 1), (321, 12, 0, 1), (585, 12, 0, 1), (43, 12, 0, 1), (586, 12, 0, 1), (427, 12, 0, 1), (539, 12, 0, 1), (193, 12, 0, 1), (28, 12, 0, 1), (587, 12, 0, 1), (263, 12, 0, 1), (352, 12, 0, 1), (356, 12, 0, 1), (397, 12, 0, 1), (165, 12, 0, 1), (588, 12, 0, 1), (589, 12, 0, 1), (590, 12, 0, 1), (591, 12, 0, 1), (142, 12, 0, 1), (183, 12, 0, 1), (592, 12, 0, 1), (593, 12, 0, 1), (594, 12, 0, 1), (595, 12, 0, 1), (251, 12, 0, 1), (596, 12, 0, 1), (597, 12, 0, 1), (598, 12, 0, 1), (599, 12, 0, 1), (545, 12, 0, 1), (192, 12, 0, 1), (600, 12, 0, 1), (601, 12, 0, 1), (171, 12, 0, 1), (602, 12, 0, 1), (90, 12, 0, 1), (173, 12, 0, 1), (603, 12, 0, 1), (604, 12, 0, 1), (8, 12, 0, 1), (605, 12, 0, 1), (606, 12, 0, 1), (25, 12, 0, 1), (180, 12, 0, 1), (607, 12, 0, 1), (196, 12, 0, 1), (78, 12, 0, 1), (549, 12, 0, 1), (608, 12, 0, 1), (609, 12, 0, 1), (610, 12, 0, 1), (611, 12, 0, 1), (532, 12, 0, 1), (612, 12, 0, 1), (124, 12, 0, 1), (21, 12, 0, 1), (38, 12, 0, 1), (613, 12, 0, 1), (119, 12, 0, 1), (465, 12, 0, 1), (446, 12, 0, 1), (614, 12, 0, 1), (10, 12, 0, 1), (92, 12, 0, 1), (147, 12, 0, 1), (269, 12, 0, 1), (9, 12, 0, 1), (615, 12, 0, 1), (207, 12, 0, 1), (616, 13, 0, 0), (617, 13, 0, 0), (618, 13, 0, 0), (619, 13, 0, 1), (617, 13, 0, 1), (618, 13, 0, 1), (620, 13, 0, 1), (245, 13, 0, 1), (621, 13, 0, 1), (142, 13, 0, 1), (592, 13, 0, 1), (189, 13, 0, 1), (183, 13, 0, 1), (21, 13, 0, 1), (622, 13, 0, 1), (321, 13, 0, 1), (145, 13, 0, 1), (484, 13, 0, 1), (96, 13, 0, 1), (7, 13, 0, 1), (613, 13, 0, 1), (72, 13, 0, 1), (623, 13, 0, 1), (169, 13, 0, 1), (248, 13, 0, 1), (624, 13, 0, 1), (466, 13, 0, 1), (625, 13, 0, 1), (626, 13, 0, 1), (627, 13, 0, 1), (357, 13, 0, 1), (188, 13, 0, 1), (163, 13, 0, 1), (628, 13, 0, 1), (206, 13, 0, 1), (330, 13, 0, 1), (356, 13, 0, 1), (249, 13, 0, 1), (1, 13, 0, 1), (54, 13, 0, 1), (629, 13, 0, 1), (630, 13, 0, 1), (253, 13, 0, 1), (396, 13, 0, 1), (37, 13, 0, 1), (439, 13, 0, 1), (409, 13, 0, 1), (136, 13, 0, 1), (631, 13, 0, 1), (43, 13, 0, 1), (632, 13, 0, 1), (202, 13, 0, 1), (633, 13, 0, 1), (634, 13, 0, 1), (283, 13, 0, 1), (8, 13, 0, 1), (446, 13, 0, 1), (635, 13, 0, 1), (636, 13, 0, 1), (222, 13, 0, 1), (537, 13, 0, 1), (637, 13, 0, 1), (322, 13, 0, 1), (118, 13, 0, 1), (369, 13, 0, 1), (638, 13, 0, 1), (639, 13, 0, 1), (640, 13, 0, 1), (213, 13, 0, 1), (114, 13, 0, 1), (19, 13, 0, 1), (165, 13, 0, 1), (479, 13, 0, 1), (641, 13, 0, 1), (642, 13, 0, 1), (504, 13, 0, 1), (643, 13, 0, 1), (644, 13, 0, 1), (645, 13, 0, 1), (125, 13, 0, 1), (567, 13, 0, 1), (503, 13, 0, 1), (646, 13, 0, 1), (647, 13, 0, 1), (71, 13, 0, 1), (648, 13, 0, 1), (649, 13, 0, 1), (539, 13, 0, 1), (70, 13, 0, 1), (650, 13, 0, 1), (651, 13, 0, 1), (652, 13, 0, 1), (653, 13, 0, 1), (160, 13, 0, 1), (162, 13, 0, 1), (654, 13, 0, 1), (655, 13, 0, 1), (30, 13, 0, 1), (61, 13, 0, 1), (656, 13, 0, 1), (171, 13, 0, 1), (657, 13, 0, 1), (658, 13, 0, 1), (659, 13, 0, 1), (660, 13, 0, 1), (25, 13, 0, 1), (28, 13, 0, 1), (661, 13, 0, 1), (395, 13, 0, 1), (38, 13, 0, 1), (662, 13, 0, 1), (207, 13, 0, 1), (140, 14, 0, 0), (663, 14, 0, 0), (664, 14, 0, 0), (665, 14, 0, 1), (663, 14, 0, 1), (666, 14, 0, 1), (90, 14, 0, 1), (427, 14, 0, 1), (667, 14, 0, 1), (54, 14, 0, 1), (1, 14, 0, 1), (439, 14, 0, 1), (197, 14, 0, 1), (183, 14, 0, 1), (21, 14, 0, 1), (292, 14, 0, 1), (39, 14, 0, 1), (8, 14, 0, 1), (668, 14, 0, 1), (137, 14, 0, 1), (124, 14, 0, 1), (157, 14, 0, 1), (539, 14, 0, 1), (25, 14, 0, 1), (669, 14, 0, 1), (670, 14, 0, 1), (671, 14, 0, 1), (145, 14, 0, 1), (71, 14, 0, 1), (659, 14, 0, 1), (613, 14, 0, 1), (672, 14, 0, 1), (63, 14, 0, 1), (673, 14, 0, 1), (257, 14, 0, 1), (250, 14, 0, 1), (674, 14, 0, 1), (545, 14, 0, 1), (128, 14, 0, 1), (161, 14, 0, 1), (675, 14, 0, 1), (482, 14, 0, 1), (140, 14, 0, 1), (676, 14, 0, 1), (436, 14, 0, 1), (677, 14, 0, 1), (678, 14, 0, 1), (679, 14, 0, 1), (680, 14, 0, 1), (136, 14, 0, 1), (7, 14, 0, 1), (253, 14, 0, 1), (263, 14, 0, 1), (681, 14, 0, 1), (160, 14, 0, 1), (682, 14, 0, 1), (165, 14, 0, 1), (269, 14, 0, 1), (96, 14, 0, 1), (683, 14, 0, 1), (684, 14, 0, 1), (17, 14, 0, 1), (396, 14, 0, 1), (335, 14, 0, 1), (19, 14, 0, 1), (685, 14, 0, 1), (686, 14, 0, 1), (164, 14, 0, 1), (67, 14, 0, 1), (283, 14, 0, 1), (687, 14, 0, 1), (688, 14, 0, 1), (689, 14, 0, 1), (43, 14, 0, 1), (234, 14, 0, 1), (143, 14, 0, 1), (144, 14, 0, 1), (532, 14, 0, 1), (4, 14, 0, 1), (562, 14, 0, 1), (72, 14, 0, 1), (169, 14, 0, 1), (200, 14, 0, 1), (409, 14, 0, 1), (690, 14, 0, 1), (92, 14, 0, 1), (320, 14, 0, 1), (103, 14, 0, 1), (691, 14, 0, 1), (24, 14, 0, 1), (692, 14, 0, 1), (693, 14, 0, 1), (694, 14, 0, 1), (35, 14, 0, 1), (695, 14, 0, 1), (373, 14, 0, 1), (171, 14, 0, 1), (357, 14, 0, 1), (592, 14, 0, 1), (596, 14, 0, 1), (194, 14, 0, 1), (321, 14, 0, 1), (696, 14, 0, 1), (37, 14, 0, 1), (120, 14, 0, 1), (697, 14, 0, 1), (698, 14, 0, 1), (699, 14, 0, 1), (664, 14, 0, 1), (700, 14, 0, 1), (701, 14, 0, 1), (221, 14, 0, 1), (195, 14, 0, 1), (702, 14, 0, 1), (703, 14, 0, 1), (207, 14, 0, 1), (10, 15, 0, 0), (569, 15, 0, 0), (270, 15, 0, 0), (704, 15, 0, 1), (569, 15, 0, 1), (705, 15, 0, 1), (144, 15, 0, 1), (148, 15, 0, 1), (706, 15, 0, 1), (160, 15, 0, 1), (38, 15, 0, 1), (382, 15, 0, 1), (386, 15, 0, 1), (43, 15, 0, 1), (44, 15, 0, 1), (707, 15, 0, 1), (145, 15, 0, 1), (272, 15, 0, 1), (375, 15, 0, 1), (25, 15, 0, 1), (408, 15, 0, 1), (417, 15, 0, 1), (291, 15, 0, 1), (446, 15, 0, 1), (202, 15, 0, 1), (326, 15, 0, 1), (449, 15, 0, 1), (14, 15, 0, 1), (708, 15, 0, 1), (26, 15, 0, 1), (381, 15, 0, 1), (670, 15, 0, 1), (31, 15, 0, 1), (709, 15, 0, 1), (66, 15, 0, 1), (45, 15, 0, 1), (710, 15, 0, 1), (711, 15, 0, 1), (64, 15, 0, 1), (712, 15, 0, 1), (713, 15, 0, 1), (714, 15, 0, 1), (390, 15, 0, 1), (576, 15, 0, 1), (67, 15, 0, 1), (30, 15, 0, 1), (17, 15, 0, 1), (715, 15, 0, 1), (628, 15, 0, 1), (716, 15, 0, 1), (717, 15, 0, 1), (718, 15, 0, 1), (719, 15, 0, 1), (720, 15, 0, 1), (721, 15, 0, 1), (722, 15, 0, 1), (280, 15, 0, 1), (723, 15, 0, 1), (724, 15, 0, 1), (725, 15, 0, 1), (678, 15, 0, 1), (554, 15, 0, 1), (726, 15, 0, 1), (270, 15, 0, 1), (189, 15, 0, 1), (727, 15, 0, 1), (728, 15, 0, 1), (50, 15, 0, 1), (92, 15, 0, 1), (427, 15, 0, 1), (2, 15, 0, 1), (54, 15, 0, 1), (33, 15, 0, 1), (8, 15, 0, 1), (494, 15, 0, 1), (10, 15, 0, 1), (323, 15, 0, 1), (729, 15, 0, 1), (730, 15, 0, 1), (72, 15, 0, 1), (731, 15, 0, 1), (217, 15, 0, 1), (559, 15, 0, 1), (4, 15, 0, 1), (207, 15, 0, 1), (732, 2, 1, 0), (733, 2, 1, 0), (732, 2, 3, 0), (733, 2, 3, 0), (734, 16, 0, 0), (735, 16, 0, 1), (736, 16, 0, 1), (737, 16, 0, 1), (738, 16, 0, 1), (739, 16, 0, 1), (740, 16, 0, 1), (741, 16, 0, 1), (742, 16, 0, 1), (743, 16, 0, 1), (744, 16, 0, 1), (732, 16, 0, 1), (745, 16, 0, 1), (746, 16, 0, 1), (747, 16, 0, 1), (71, 16, 0, 1), (748, 16, 0, 1), (749, 16, 0, 1), (42, 16, 0, 1), (292, 16, 0, 1), (750, 16, 0, 1), (751, 16, 0, 1), (160, 16, 0, 1), (752, 16, 0, 1), (753, 16, 0, 1), (754, 16, 0, 1), (54, 16, 0, 1), (444, 16, 0, 1), (755, 16, 0, 1), (756, 16, 0, 1), (623, 16, 0, 1), (757, 16, 0, 1), (758, 16, 0, 1), (759, 16, 0, 1), (158, 16, 0, 1), (486, 16, 0, 1), (760, 16, 0, 1), (761, 16, 0, 1), (527, 16, 0, 1), (762, 16, 0, 1), (246, 16, 0, 1), (145, 16, 0, 1), (763, 16, 0, 1), (253, 16, 0, 1), (147, 16, 0, 1), (155, 16, 0, 1), (764, 16, 0, 1), (213, 16, 0, 1), (765, 16, 0, 1), (766, 16, 0, 1), (767, 16, 0, 1), (263, 16, 0, 1), (768, 16, 0, 1), (769, 16, 0, 1), (770, 16, 0, 1), (771, 16, 0, 1), (772, 16, 0, 1), (385, 16, 0, 1), (773, 16, 0, 1), (774, 16, 0, 1), (568, 16, 0, 1), (775, 16, 0, 1), (776, 16, 0, 1), (777, 16, 0, 1), (312, 16, 0, 1), (778, 16, 0, 1), (144, 16, 0, 1), (779, 16, 0, 1), (780, 16, 0, 1), (781, 16, 0, 1), (782, 16, 0, 1), (783, 16, 0, 1), (7, 16, 0, 1), (784, 16, 0, 1), (785, 16, 0, 1), (786, 16, 0, 1), (142, 16, 0, 1), (787, 16, 0, 1), (788, 16, 0, 1), (116, 16, 0, 1), (789, 16, 0, 1), (43, 16, 0, 1), (287, 16, 0, 1), (118, 16, 0, 1), (790, 16, 0, 1), (791, 16, 0, 1), (792, 16, 0, 1), (37, 16, 0, 1), (793, 16, 0, 1), (794, 16, 0, 1), (795, 16, 0, 1), (320, 16, 0, 1), (281, 16, 0, 1), (796, 16, 0, 1), (797, 16, 0, 1), (115, 16, 0, 1), (798, 16, 0, 1), (799, 16, 0, 1), (800, 16, 0, 1), (801, 16, 0, 1), (802, 16, 0, 1), (803, 16, 0, 1), (804, 16, 0, 1), (805, 16, 0, 1), (806, 16, 0, 1), (69, 16, 0, 1), (807, 16, 0, 1), (808, 16, 0, 1), (809, 16, 0, 1), (810, 16, 0, 1), (811, 16, 0, 1), (812, 16, 0, 1), (813, 16, 0, 1), (814, 16, 0, 1), (815, 16, 0, 1), (816, 16, 0, 1), (817, 16, 0, 1), (393, 16, 0, 1), (818, 16, 0, 1), (129, 16, 0, 1), (819, 16, 0, 1), (820, 16, 0, 1), (821, 16, 0, 1), (822, 16, 0, 1), (823, 16, 0, 1), (824, 16, 0, 1), (304, 16, 0, 1), (825, 16, 0, 1), (826, 16, 0, 1), (827, 16, 0, 1), (828, 16, 0, 1), (829, 16, 0, 1), (136, 16, 0, 1), (830, 16, 0, 1), (831, 16, 0, 1), (832, 16, 0, 1), (833, 16, 0, 1), (534, 16, 0, 1), (834, 16, 0, 1), (835, 16, 0, 1), (836, 16, 0, 1), (128, 16, 0, 1), (837, 16, 0, 1), (17, 16, 0, 1), (838, 16, 0, 1), (553, 16, 0, 1), (839, 16, 0, 1), (25, 16, 0, 1), (840, 16, 0, 1), (34, 16, 0, 1), (841, 16, 0, 1), (63, 16, 0, 1), (842, 16, 0, 1), (843, 16, 0, 1), (844, 16, 0, 1), (845, 16, 0, 1), (846, 16, 0, 1), (847, 16, 0, 1), (80, 16, 0, 1), (848, 16, 0, 1), (849, 16, 0, 1), (482, 16, 0, 1), (850, 16, 0, 1), (282, 16, 0, 1), (851, 16, 0, 1), (627, 16, 0, 1), (87, 16, 0, 1), (85, 16, 0, 1), (178, 16, 0, 1), (852, 16, 0, 1), (853, 16, 0, 1), (854, 16, 0, 1), (855, 16, 0, 1), (856, 16, 0, 1), (857, 16, 0, 1), (858, 16, 0, 1), (859, 16, 0, 1), (860, 16, 0, 1), (861, 16, 0, 1), (862, 16, 0, 1), (863, 16, 0, 1), (864, 16, 0, 1), (513, 16, 0, 1), (865, 16, 0, 1), (866, 16, 0, 1), (267, 16, 0, 1), (867, 16, 0, 1), (868, 16, 0, 1), (869, 16, 0, 1), (870, 16, 0, 1), (871, 16, 0, 1), (310, 16, 0, 1), (715, 16, 0, 1), (872, 16, 0, 1), (873, 16, 0, 1), (572, 16, 0, 1), (874, 16, 0, 1), (875, 16, 0, 1), (876, 16, 0, 1), (877, 16, 0, 1), (878, 16, 0, 1), (452, 16, 0, 1), (879, 16, 0, 1), (880, 16, 0, 1), (881, 16, 0, 1), (565, 16, 0, 1), (195, 16, 0, 1), (196, 16, 0, 1), (600, 16, 0, 1), (641, 16, 0, 1), (124, 16, 0, 1), (882, 16, 0, 1), (193, 16, 0, 1), (883, 16, 0, 1), (135, 16, 0, 1), (397, 16, 0, 1), (30, 16, 0, 1), (133, 16, 0, 1), (584, 16, 0, 1), (884, 16, 0, 1), (885, 16, 0, 1), (39, 16, 0, 1), (886, 16, 0, 1), (887, 16, 0, 1), (888, 16, 0, 1), (889, 16, 0, 1), (890, 16, 0, 1), (891, 16, 0, 1), (892, 16, 0, 1), (893, 16, 0, 1), (894, 16, 0, 1), (895, 16, 0, 1), (896, 16, 0, 1), (897, 16, 0, 1), (898, 16, 0, 1), (899, 16, 0, 1), (900, 16, 0, 1), (901, 16, 0, 1), (902, 16, 0, 1), (903, 16, 0, 1), (904, 16, 0, 1), (586, 16, 0, 1), (695, 16, 0, 1), (905, 16, 0, 1), (906, 16, 0, 1), (907, 16, 0, 1), (908, 16, 0, 1), (909, 16, 0, 1), (910, 16, 0, 1), (911, 16, 0, 1), (685, 16, 0, 1), (912, 16, 0, 1), (913, 16, 0, 1), (914, 16, 0, 1), (915, 16, 0, 1), (916, 16, 0, 1), (917, 16, 0, 1), (918, 16, 0, 1), (318, 16, 0, 1), (919, 16, 0, 1), (920, 16, 0, 1), (921, 16, 0, 1), (454, 16, 0, 1), (922, 16, 0, 1), (923, 16, 0, 1), (924, 16, 0, 1), (925, 16, 0, 1), (47, 16, 0, 1), (926, 16, 0, 1), (927, 16, 0, 1), (928, 17, 0, 0), (929, 17, 0, 1), (25, 17, 0, 1), (385, 17, 0, 1), (930, 17, 0, 1), (931, 17, 0, 1), (732, 17, 0, 1), (932, 17, 0, 1), (63, 17, 0, 1), (933, 17, 0, 1), (733, 17, 0, 1), (934, 17, 0, 1), (935, 17, 0, 1), (936, 17, 0, 1), (937, 17, 0, 1), (938, 17, 0, 1), (939, 17, 0, 1), (940, 17, 0, 1), (941, 17, 0, 1), (488, 17, 0, 1), (54, 17, 0, 1), (942, 17, 0, 1), (7, 17, 0, 1), (943, 17, 0, 1), (944, 17, 0, 1), (30, 17, 0, 1), (945, 17, 0, 1), (946, 17, 0, 1), (43, 17, 0, 1), (947, 17, 0, 1), (160, 17, 0, 1), (948, 17, 0, 1), (144, 17, 0, 1), (872, 17, 0, 1), (253, 17, 0, 1), (949, 17, 0, 1), (950, 17, 0, 1), (951, 17, 0, 1), (952, 17, 0, 1), (953, 17, 0, 1), (954, 17, 0, 1), (955, 17, 0, 1), (956, 17, 0, 1), (957, 17, 0, 1), (958, 17, 0, 1), (959, 17, 0, 1), (393, 17, 0, 1), (960, 17, 0, 1), (961, 17, 0, 1), (339, 17, 0, 1), (503, 17, 0, 1), (962, 17, 0, 1), (250, 17, 0, 1), (963, 17, 0, 1), (964, 17, 0, 1), (584, 17, 0, 1), (965, 17, 0, 1), (966, 17, 0, 1), (967, 17, 0, 1), (968, 17, 0, 1), (969, 17, 0, 1), (970, 17, 0, 1), (971, 17, 0, 1), (972, 17, 0, 1), (973, 17, 0, 1), (974, 17, 0, 1), (975, 17, 0, 1), (976, 17, 0, 1), (769, 17, 0, 1), (42, 17, 0, 1), (292, 17, 0, 1), (977, 17, 0, 1), (978, 17, 0, 1), (979, 17, 0, 1), (71, 17, 0, 1), (221, 17, 0, 1), (980, 17, 0, 1), (398, 17, 0, 1), (981, 17, 0, 1), (982, 17, 0, 1), (115, 17, 0, 1), (122, 17, 0, 1), (314, 17, 0, 1), (983, 17, 0, 1), (984, 17, 0, 1), (158, 17, 0, 1), (171, 17, 0, 1), (985, 17, 0, 1), (986, 17, 0, 1), (892, 17, 0, 1), (987, 17, 0, 1), (988, 17, 0, 1), (214, 17, 0, 1), (316, 17, 0, 1), (989, 17, 0, 1), (990, 17, 0, 1), (991, 17, 0, 1), (992, 17, 0, 1), (544, 17, 0, 1), (993, 17, 0, 1), (994, 17, 0, 1), (995, 17, 0, 1), (996, 17, 0, 1), (997, 17, 0, 1), (174, 17, 0, 1), (998, 17, 0, 1), (788, 17, 0, 1), (999, 17, 0, 1), (1000, 17, 0, 1), (1001, 17, 0, 1), (1002, 17, 0, 1), (747, 17, 0, 1), (176, 17, 0, 1), (1003, 17, 0, 1), (1004, 17, 0, 1), (900, 17, 0, 1), (39, 17, 0, 1), (1005, 17, 0, 1), (251, 17, 0, 1), (195, 17, 0, 1), (128, 17, 0, 1), (196, 17, 0, 1), (1006, 17, 0, 1), (1007, 18, 0, 0), (1008, 18, 0, 1), (1009, 18, 0, 1), (1010, 18, 0, 1), (160, 18, 0, 1), (180, 18, 0, 1), (1011, 18, 0, 1), (1012, 18, 0, 1), (732, 18, 0, 1), (210, 18, 0, 1), (130, 18, 0, 1), (1013, 18, 0, 1), (546, 18, 0, 1), (1014, 18, 0, 1), (147, 18, 0, 1), (965, 18, 0, 1), (253, 18, 0, 1), (1015, 18, 0, 1), (1016, 18, 0, 1), (1017, 18, 0, 1), (1018, 18, 0, 1), (713, 18, 0, 1), (1019, 18, 0, 1), (407, 18, 0, 1), (128, 18, 0, 1), (1020, 18, 0, 1), (1021, 18, 0, 1), (518, 18, 0, 1), (1022, 18, 0, 1), (1023, 18, 0, 1), (1024, 18, 0, 1), (356, 18, 0, 1), (171, 18, 0, 1), (633, 18, 0, 1), (1025, 18, 0, 1), (1026, 18, 0, 1), (193, 18, 0, 1), (214, 18, 0, 1), (444, 18, 0, 1), (264, 18, 0, 1), (554, 18, 0, 1), (448, 18, 0, 1), (995, 18, 0, 1), (1027, 18, 0, 1), (1028, 18, 0, 1), (828, 18, 0, 1), (896, 18, 0, 1), (1029, 18, 0, 1), (391, 18, 0, 1), (1030, 18, 0, 1), (539, 18, 0, 1), (733, 18, 0, 1), (30, 18, 0, 1), (1031, 18, 0, 1), (1032, 18, 0, 1), (1033, 18, 0, 1), (1034, 18, 0, 1), (1035, 18, 0, 1), (1036, 18, 0, 1), (1037, 18, 0, 1), (891, 18, 0, 1), (892, 18, 0, 1), (195, 18, 0, 1), (196, 18, 0, 1), (43, 18, 0, 1), (1038, 18, 0, 1), (1039, 18, 0, 1), (1040, 18, 0, 1), (1041, 18, 0, 1), (7, 18, 0, 1), (862, 18, 0, 1), (696, 18, 0, 1), (1042, 18, 0, 1), (42, 18, 0, 1), (246, 18, 0, 1), (1043, 18, 0, 1), (1044, 18, 0, 1), (54, 18, 0, 1), (44, 18, 0, 1), (1045, 18, 0, 1), (169, 18, 0, 1), (1046, 18, 0, 1), (72, 18, 0, 1), (1047, 18, 0, 1), (1048, 18, 0, 1), (608, 18, 0, 1), (1049, 18, 0, 1), (1050, 18, 0, 1), (70, 18, 0, 1), (454, 18, 0, 1), (90, 18, 0, 1), (1051, 18, 0, 1), (907, 18, 0, 1), (1052, 18, 0, 1), (1053, 18, 0, 1), (597, 18, 0, 1), (1054, 18, 0, 1), (144, 18, 0, 1), (447, 18, 0, 1), (1055, 18, 0, 1), (927, 18, 0, 1), (1056, 19, 0, 0), (1057, 19, 0, 1), (732, 19, 0, 1), (1056, 19, 0, 1), (1014, 19, 0, 1), (118, 19, 0, 1), (47, 19, 0, 1), (1058, 19, 0, 1), (30, 19, 0, 1), (1059, 19, 0, 1), (1060, 19, 0, 1), (785, 19, 0, 1), (1061, 19, 0, 1), (135, 19, 0, 1), (1062, 19, 0, 1), (1063, 19, 0, 1), (1064, 19, 0, 1), (115, 19, 0, 1), (1065, 19, 0, 1), (1066, 19, 0, 1), (195, 19, 0, 1), (1067, 19, 0, 1), (1068, 19, 0, 1), (54, 19, 0, 1), (1069, 19, 0, 1), (1070, 19, 0, 1), (1071, 19, 0, 1), (957, 19, 0, 1), (1072, 19, 0, 1), (63, 19, 0, 1), (1073, 19, 0, 1), (1074, 19, 0, 1), (116, 19, 0, 1), (1075, 19, 0, 1), (214, 19, 0, 1), (1076, 19, 0, 1), (1077, 19, 0, 1), (1078, 19, 0, 1), (678, 19, 0, 1), (1079, 19, 0, 1), (196, 19, 0, 1), (1080, 19, 0, 1), (567, 19, 0, 1), (1081, 19, 0, 1), (1082, 19, 0, 1), (1083, 19, 0, 1), (318, 19, 0, 1), (1084, 19, 0, 1), (606, 19, 0, 1), (584, 19, 0, 1), (932, 19, 0, 1), (1085, 19, 0, 1), (1086, 19, 0, 1), (1087, 19, 0, 1), (1088, 19, 0, 1), (71, 19, 0, 1), (1089, 19, 0, 1), (42, 19, 0, 1), (385, 19, 0, 1), (1090, 19, 0, 1), (1091, 19, 0, 1), (1092, 19, 0, 1), (1093, 19, 0, 1), (1019, 19, 0, 1), (1094, 19, 0, 1), (1095, 19, 0, 1), (88, 19, 0, 1), (1096, 19, 0, 1), (696, 19, 0, 1), (7, 19, 0, 1), (1097, 19, 0, 1), (1025, 19, 0, 1), (180, 19, 0, 1), (1098, 19, 0, 1), (1017, 19, 0, 1), (1099, 19, 0, 1), (1100, 19, 0, 1), (43, 19, 0, 1), (1101, 19, 0, 1), (96, 19, 0, 1), (1102, 19, 0, 1), (1103, 19, 0, 1), (1104, 19, 0, 1), (1105, 19, 0, 1), (1106, 19, 0, 1), (1107, 19, 0, 1), (1108, 19, 0, 1), (25, 19, 0, 1), (1109, 19, 0, 1), (1110, 19, 0, 1), (213, 19, 0, 1), (1111, 19, 0, 1), (1112, 19, 0, 1), (1113, 19, 0, 1), (1114, 19, 0, 1), (1115, 19, 0, 1), (12, 19, 0, 1), (1116, 19, 0, 1), (158, 19, 0, 1), (524, 19, 0, 1), (1117, 19, 0, 1), (1118, 19, 0, 1), (1119, 19, 0, 1), (1120, 19, 0, 1), (1121, 19, 0, 1), (1122, 19, 0, 1), (1123, 19, 0, 1), (1124, 19, 0, 1), (1125, 19, 0, 1), (153, 19, 0, 1), (1126, 19, 0, 1), (1127, 19, 0, 1), (1128, 19, 0, 1), (1011, 19, 0, 1), (1129, 19, 0, 1), (1130, 19, 0, 1), (173, 19, 0, 1), (253, 19, 0, 1), (578, 19, 0, 1), (513, 19, 0, 1), (1131, 19, 0, 1), (1132, 19, 0, 1), (77, 19, 0, 1), (78, 19, 0, 1), (1133, 19, 0, 1), (1134, 19, 0, 1), (1135, 19, 0, 1), (1136, 19, 0, 1), (1137, 19, 0, 1), (1138, 19, 0, 1), (282, 19, 0, 1), (869, 19, 0, 1), (899, 19, 0, 1), (1139, 19, 0, 1), (1140, 19, 0, 1), (1141, 19, 0, 1), (1142, 19, 0, 1), (660, 19, 0, 1), (1143, 19, 0, 1), (935, 19, 0, 1), (1144, 19, 0, 1), (1145, 19, 0, 1), (1146, 19, 0, 1), (1147, 19, 0, 1), (1148, 19, 0, 1), (1149, 19, 0, 1), (1150, 19, 0, 1), (1151, 19, 0, 1), (1152, 19, 0, 1), (320, 19, 0, 1), (1153, 19, 0, 1), (1154, 19, 0, 1), (1155, 19, 0, 1), (1156, 19, 0, 1), (1157, 19, 0, 1), (1158, 19, 0, 1), (206, 19, 0, 1), (1159, 19, 0, 1), (1160, 19, 0, 1), (1161, 19, 0, 1), (799, 19, 0, 1), (1162, 19, 0, 1), (1163, 19, 0, 1), (154, 19, 0, 1), (1164, 19, 0, 1), (1165, 19, 0, 1), (1166, 19, 0, 1), (1167, 19, 0, 1), (1168, 19, 0, 1), (1169, 19, 0, 1), (1170, 19, 0, 1), (788, 19, 0, 1), (357, 19, 0, 1), (1171, 19, 0, 1), (1172, 19, 0, 1), (756, 19, 0, 1), (1173, 19, 0, 1), (1174, 19, 0, 1), (1175, 19, 0, 1), (1176, 19, 0, 1), (1177, 19, 0, 1), (1178, 19, 0, 1), (147, 19, 0, 1), (264, 19, 0, 1), (1179, 19, 0, 1), (1180, 19, 0, 1), (1181, 19, 0, 1), (1182, 19, 0, 1), (1183, 19, 0, 1), (1184, 19, 0, 1), (1185, 19, 0, 1), (564, 19, 0, 1), (142, 19, 0, 1), (1186, 19, 0, 1), (1187, 19, 0, 1), (1188, 19, 0, 1), (1010, 19, 0, 1), (1189, 19, 0, 1), (1190, 19, 0, 1), (1191, 19, 0, 1), (414, 19, 0, 1), (1192, 19, 0, 1), (1193, 19, 0, 1), (1194, 19, 0, 1), (1195, 19, 0, 1), (1196, 19, 0, 1), (1197, 19, 0, 1), (1198, 19, 0, 1), (1199, 19, 0, 1), (391, 19, 0, 1), (1200, 19, 0, 1), (1201, 19, 0, 1), (260, 19, 0, 1), (992, 19, 0, 1), (1202, 19, 0, 1), (1203, 19, 0, 1), (817, 19, 0, 1), (386, 19, 0, 1), (1204, 19, 0, 1), (1205, 19, 0, 1), (336, 19, 0, 1), (1206, 19, 0, 1), (1207, 19, 0, 1), (1208, 19, 0, 1), (1209, 19, 0, 1), (1210, 19, 0, 1), (1211, 19, 0, 1), (1212, 19, 0, 1), (801, 19, 0, 1), (1213, 19, 0, 1), (1214, 19, 0, 1), (438, 19, 0, 1), (1215, 19, 0, 1), (69, 19, 0, 1), (695, 19, 0, 1), (1216, 19, 0, 1), (991, 19, 0, 1), (1217, 19, 0, 1), (1218, 19, 0, 1), (1219, 19, 0, 1), (1220, 19, 0, 1), (362, 19, 0, 1), (1221, 19, 0, 1), (452, 19, 0, 1), (1222, 19, 0, 1), (777, 19, 0, 1), (1223, 19, 0, 1), (341, 19, 0, 1), (1224, 19, 0, 1), (1225, 19, 0, 1), (853, 19, 0, 1), (966, 19, 0, 1), (1004, 19, 0, 1), (1226, 19, 0, 1), (1227, 19, 0, 1), (1228, 19, 0, 1), (1229, 19, 0, 1), (1230, 19, 0, 1), (1231, 19, 0, 1), (1232, 19, 0, 1), (1233, 19, 0, 1), (1234, 19, 0, 1), (1235, 19, 0, 1), (1236, 19, 0, 1), (1237, 19, 0, 1), (1238, 19, 0, 1), (1239, 19, 0, 1), (568, 19, 0, 1), (1240, 19, 0, 1), (1241, 19, 0, 1), (1242, 19, 0, 1), (1243, 19, 0, 1), (1244, 19, 0, 1), (1245, 19, 0, 1), (290, 19, 0, 1), (35, 19, 0, 1), (19, 19, 0, 1), (1246, 19, 0, 1), (1247, 19, 0, 1), (906, 19, 0, 1), (1248, 19, 0, 1), (907, 19, 0, 1), (1249, 19, 0, 1), (160, 19, 0, 1), (397, 19, 0, 1), (1041, 19, 0, 1), (928, 19, 0, 1), (802, 19, 0, 1), (1250, 19, 0, 1), (742, 19, 0, 1), (361, 19, 0, 1), (1251, 19, 0, 1), (1252, 19, 0, 1), (1253, 19, 0, 1), (1254, 19, 0, 1), (1255, 19, 0, 1), (796, 19, 0, 1), (1256, 19, 0, 1), (1257, 19, 0, 1), (356, 19, 0, 1), (1258, 19, 0, 1), (1259, 19, 0, 1), (1260, 19, 0, 1), (1261, 19, 0, 1), (1262, 19, 0, 1), (1263, 19, 0, 1), (1264, 19, 0, 1), (1265, 19, 0, 1), (1266, 19, 0, 1), (1267, 19, 0, 1), (1268, 19, 0, 1), (1269, 19, 0, 1), (1270, 19, 0, 1), (1271, 19, 0, 1), (1272, 19, 0, 1), (1273, 19, 0, 1), (1274, 19, 0, 1), (1275, 19, 0, 1), (810, 19, 0, 1), (120, 19, 0, 1), (1276, 19, 0, 1), (1277, 19, 0, 1), (283, 19, 0, 1), (371, 19, 0, 1), (1278, 19, 0, 1), (1279, 19, 0, 1), (1280, 19, 0, 1), (1281, 19, 0, 1), (1282, 19, 0, 1), (893, 19, 0, 1), (1047, 19, 0, 1), (597, 19, 0, 1), (70, 19, 0, 1), (638, 19, 0, 1), (1283, 19, 0, 1), (1284, 19, 0, 1), (246, 19, 0, 1), (1285, 19, 0, 1), (1286, 19, 0, 1), (1287, 19, 0, 1), (144, 19, 0, 1), (1288, 19, 0, 1), (1289, 19, 0, 1), (1290, 19, 0, 1), (1291, 19, 0, 1), (1292, 19, 0, 1), (1293, 19, 0, 1), (998, 19, 0, 1), (76, 19, 0, 1), (250, 19, 0, 1), (1294, 19, 0, 1), (1295, 19, 0, 1), (1296, 19, 0, 1), (1297, 19, 0, 1), (1298, 19, 0, 1), (1299, 19, 0, 1), (1300, 19, 0, 1), (1301, 19, 0, 1), (488, 19, 0, 1), (90, 19, 0, 1), (1302, 19, 0, 1), (1303, 19, 0, 1), (852, 19, 0, 1), (1304, 19, 0, 1), (1305, 19, 0, 1), (1306, 19, 0, 1), (1307, 19, 0, 1), (1308, 19, 0, 1), (1309, 19, 0, 1), (1310, 19, 0, 1), (1311, 19, 0, 1), (202, 19, 0, 1), (1312, 19, 0, 1), (62, 19, 0, 1), (505, 19, 0, 1), (1313, 19, 0, 1), (609, 19, 0, 1), (1314, 19, 0, 1), (1315, 19, 0, 1), (1316, 19, 0, 1), (1317, 19, 0, 1), (449, 19, 0, 1), (1318, 19, 0, 1), (1319, 19, 0, 1), (486, 19, 0, 1), (1320, 19, 0, 1), (740, 19, 0, 1), (1321, 19, 0, 1), (1322, 19, 0, 1), (1323, 19, 0, 1), (1324, 19, 0, 1), (316, 19, 0, 1), (809, 19, 0, 1), (1325, 19, 0, 1), (1326, 19, 0, 1), (1327, 19, 0, 1), (444, 19, 0, 1), (1328, 19, 0, 1), (162, 19, 0, 1), (1329, 19, 0, 1), (1330, 19, 0, 1), (1331, 19, 0, 1), (1332, 19, 0, 1), (1333, 19, 0, 1), (1334, 19, 0, 1), (1335, 19, 0, 1), (1336, 19, 0, 1), (1337, 19, 0, 1), (145, 19, 0, 1), (166, 19, 0, 1), (387, 19, 0, 1), (1338, 19, 0, 1), (1022, 19, 0, 1), (1339, 19, 0, 1), (681, 19, 0, 1), (1340, 19, 0, 1), (1341, 19, 0, 1), (1342, 19, 0, 1), (1343, 19, 0, 1), (1344, 19, 0, 1), (1345, 19, 0, 1), (1346, 19, 0, 1), (1347, 19, 0, 1), (1348, 19, 0, 1), (1349, 19, 0, 1), (1350, 19, 0, 1), (1351, 19, 0, 1), (1352, 19, 0, 1), (1006, 19, 0, 1), (1353, 20, 0, 0), (1354, 20, 0, 1), (1355, 20, 0, 1), (1356, 20, 0, 1), (534, 20, 0, 1), (1050, 20, 0, 1), (1353, 20, 0, 1), (732, 20, 0, 1), (1357, 20, 0, 1), (584, 20, 0, 1), (1278, 20, 0, 1), (1358, 20, 0, 1), (118, 20, 0, 1), (115, 20, 0, 1), (1359, 20, 0, 1), (280, 20, 0, 1), (1360, 20, 0, 1), (1361, 20, 0, 1), (1362, 20, 0, 1), (1363, 20, 0, 1), (30, 20, 0, 1), (426, 20, 0, 1), (1364, 20, 0, 1), (899, 20, 0, 1), (1341, 20, 0, 1), (1365, 20, 0, 1), (147, 20, 0, 1), (1366, 20, 0, 1), (966, 20, 0, 1), (43, 20, 0, 1), (39, 20, 0, 1), (158, 20, 0, 1), (951, 20, 0, 1), (1367, 20, 0, 1), (1368, 20, 0, 1), (1369, 20, 0, 1), (1370, 20, 0, 1), (807, 20, 0, 1), (1371, 20, 0, 1), (25, 20, 0, 1), (1372, 20, 0, 1), (1373, 20, 0, 1), (133, 20, 0, 1), (385, 20, 0, 1), (320, 20, 0, 1), (210, 20, 0, 1), (597, 20, 0, 1), (1374, 20, 0, 1), (917, 20, 0, 1), (1375, 20, 0, 1), (77, 20, 0, 1), (1376, 20, 0, 1), (1332, 20, 0, 1), (1244, 20, 0, 1), (1377, 20, 0, 1), (1041, 20, 0, 1), (72, 20, 0, 1), (1378, 20, 0, 1), (1048, 20, 0, 1), (888, 20, 0, 1), (1379, 20, 0, 1), (42, 20, 0, 1), (1380, 20, 0, 1), (1381, 20, 0, 1), (999, 20, 0, 1), (1382, 20, 0, 1), (290, 20, 0, 1), (1383, 20, 0, 1), (1384, 20, 0, 1), (1385, 20, 0, 1), (765, 20, 0, 1), (1386, 20, 0, 1), (1387, 20, 0, 1), (696, 20, 0, 1), (1388, 20, 0, 1), (1389, 20, 0, 1), (1010, 20, 0, 1), (1100, 20, 0, 1), (1390, 20, 0, 1), (1391, 20, 0, 1), (1392, 20, 0, 1), (1393, 20, 0, 1), (678, 20, 0, 1), (1394, 20, 0, 1), (1395, 20, 0, 1), (1396, 20, 0, 1), (1397, 20, 0, 1), (1398, 20, 0, 1), (1399, 20, 0, 1), (1400, 20, 0, 1), (1401, 20, 0, 1), (1032, 20, 0, 1), (1402, 20, 0, 1), (1403, 20, 0, 1), (35, 20, 0, 1), (1404, 20, 0, 1), (1405, 20, 0, 1), (1406, 20, 0, 1), (357, 20, 0, 1), (240, 20, 0, 1), (1407, 20, 0, 1), (1408, 20, 0, 1), (253, 20, 0, 1), (785, 20, 0, 1), (733, 20, 0, 1), (1409, 20, 0, 1), (1410, 20, 0, 1), (122, 20, 0, 1), (1411, 20, 0, 1), (1189, 20, 0, 1), (1412, 20, 0, 1), (1413, 20, 0, 1), (1099, 20, 0, 1), (1414, 20, 0, 1), (1415, 20, 0, 1), (1416, 20, 0, 1), (1417, 20, 0, 1), (1418, 20, 0, 1), (1419, 20, 0, 1), (1420, 20, 0, 1), (1421, 20, 0, 1), (1422, 20, 0, 1), (1423, 20, 0, 1), (1424, 20, 0, 1), (1425, 20, 0, 1), (1426, 20, 0, 1), (124, 20, 0, 1), (1427, 20, 0, 1), (1428, 20, 0, 1), (1429, 20, 0, 1), (871, 20, 0, 1), (1430, 20, 0, 1), (1431, 20, 0, 1), (1432, 20, 0, 1), (1433, 20, 0, 1), (1434, 20, 0, 1), (578, 20, 0, 1), (1435, 20, 0, 1), (1436, 20, 0, 1), (312, 20, 0, 1), (1437, 20, 0, 1), (1438, 20, 0, 1), (1439, 20, 0, 1), (1034, 20, 0, 1), (1440, 20, 0, 1), (1441, 20, 0, 1), (1442, 20, 0, 1), (1443, 20, 0, 1), (1444, 20, 0, 1), (1445, 20, 0, 1), (140, 20, 0, 1), (166, 20, 0, 1), (356, 20, 0, 1), (125, 20, 0, 1), (1446, 20, 0, 1), (1447, 20, 0, 1), (1448, 20, 0, 1), (1449, 20, 0, 1), (153, 20, 0, 1), (1450, 20, 0, 1), (1451, 20, 0, 1), (1452, 20, 0, 1), (1174, 20, 0, 1), (1453, 20, 0, 1), (780, 20, 0, 1), (1454, 20, 0, 1), (1455, 20, 0, 1), (1456, 20, 0, 1), (304, 20, 0, 1), (773, 20, 0, 1), (1457, 20, 0, 1), (1458, 20, 0, 1), (1459, 20, 0, 1), (1460, 20, 0, 1), (63, 20, 0, 1), (1247, 20, 0, 1), (1461, 20, 0, 1), (1462, 20, 0, 1), (195, 20, 0, 1), (1463, 20, 0, 1), (1464, 20, 0, 1), (1465, 20, 0, 1), (642, 20, 0, 1), (1466, 20, 0, 1), (1166, 20, 0, 1), (1467, 20, 0, 1), (1468, 20, 0, 1), (335, 20, 0, 1), (282, 20, 0, 1), (1469, 20, 0, 1), (1470, 20, 0, 1), (1193, 20, 0, 1), (1471, 20, 0, 1), (1472, 20, 0, 1), (392, 20, 0, 1), (511, 20, 0, 1), (1473, 20, 0, 1), (142, 20, 0, 1), (1474, 20, 0, 1), (1475, 20, 0, 1), (1476, 20, 0, 1), (219, 20, 0, 1), (1477, 20, 0, 1), (1478, 20, 0, 1), (1479, 20, 0, 1), (354, 20, 0, 1), (160, 20, 0, 1), (1480, 20, 0, 1), (1481, 20, 0, 1), (1482, 20, 0, 1), (1127, 20, 0, 1), (1483, 20, 0, 1), (1484, 20, 0, 1), (66, 20, 0, 1), (1485, 20, 0, 1), (1486, 20, 0, 1), (633, 20, 0, 1), (1487, 20, 0, 1), (530, 20, 0, 1), (1488, 20, 0, 1), (1489, 20, 0, 1), (1490, 20, 0, 1), (180, 20, 0, 1), (1011, 20, 0, 1), (1491, 20, 0, 1), (1492, 20, 0, 1), (1493, 20, 0, 1), (782, 20, 0, 1), (1494, 20, 0, 1), (1495, 20, 0, 1), (768, 20, 0, 1), (1496, 20, 0, 1), (1497, 20, 0, 1), (1498, 20, 0, 1), (638, 20, 0, 1), (1499, 20, 0, 1), (1500, 20, 0, 1), (747, 20, 0, 1), (1501, 20, 0, 1), (1502, 20, 0, 1), (306, 20, 0, 1), (1503, 20, 0, 1), (1504, 20, 0, 1), (1505, 20, 0, 1), (444, 20, 0, 1), (436, 20, 0, 1), (1506, 20, 0, 1), (1091, 20, 0, 1), (1507, 20, 0, 1), (1508, 20, 0, 1), (1509, 20, 0, 1), (1510, 20, 0, 1), (647, 20, 0, 1), (7, 20, 0, 1), (1282, 20, 0, 1), (656, 20, 0, 1), (1511, 20, 0, 1), (1512, 20, 0, 1), (198, 20, 0, 1), (1170, 20, 0, 1), (1513, 20, 0, 1), (395, 20, 0, 1), (1514, 20, 0, 1), (1515, 20, 0, 1), (1516, 20, 0, 1), (1517, 20, 0, 1), (1518, 20, 0, 1), (1519, 20, 0, 1), (847, 20, 0, 1), (1520, 20, 0, 1), (1521, 20, 0, 1), (1522, 20, 0, 1), (1523, 20, 0, 1), (1524, 20, 0, 1), (1525, 20, 0, 1), (1526, 20, 0, 1), (1527, 20, 0, 1), (1528, 20, 0, 1), (1529, 20, 0, 1), (1530, 20, 0, 1), (1531, 20, 0, 1), (1532, 20, 0, 1), (1533, 20, 0, 1), (1534, 20, 0, 1), (1535, 20, 0, 1), (1536, 20, 0, 1), (132, 20, 0, 1), (1537, 20, 0, 1), (1333, 20, 0, 1), (251, 20, 0, 1), (1538, 20, 0, 1), (1539, 20, 0, 1), (1540, 20, 0, 1), (1541, 20, 0, 1), (256, 20, 0, 1), (690, 20, 0, 1), (1542, 20, 0, 1), (553, 20, 0, 1), (1543, 20, 0, 1), (1544, 20, 0, 1), (1173, 20, 0, 1), (81, 20, 0, 1), (909, 20, 0, 1), (1545, 20, 0, 1), (54, 20, 0, 1), (1546, 20, 0, 1), (1547, 20, 0, 1), (1548, 20, 0, 1), (1549, 20, 0, 1), (938, 20, 0, 1), (1550, 20, 0, 1), (1551, 20, 0, 1), (126, 20, 0, 1), (1552, 20, 0, 1), (1553, 20, 0, 1), (1554, 20, 0, 1), (852, 20, 0, 1), (1555, 20, 0, 1), (1556, 20, 0, 1), (1557, 20, 0, 1), (1206, 20, 0, 1), (1558, 20, 0, 1), (1559, 20, 0, 1), (276, 20, 0, 1), (1560, 20, 0, 1), (1561, 20, 0, 1), (1562, 20, 0, 1), (1563, 20, 0, 1), (744, 20, 0, 1), (1564, 20, 0, 1), (1565, 20, 0, 1), (1566, 20, 0, 1), (1567, 20, 0, 1), (1568, 20, 0, 1), (1569, 20, 0, 1), (1570, 20, 0, 1), (1571, 20, 0, 1), (1572, 20, 0, 1), (1573, 20, 0, 1), (1574, 20, 0, 1), (1575, 20, 0, 1), (1111, 20, 0, 1), (1576, 20, 0, 1), (1577, 20, 0, 1), (194, 20, 0, 1), (1578, 20, 0, 1), (1579, 20, 0, 1), (1580, 20, 0, 1), (1581, 20, 0, 1), (1582, 20, 0, 1), (1583, 20, 0, 1), (1584, 20, 0, 1), (1585, 20, 0, 1), (482, 20, 0, 1), (932, 20, 0, 1), (1586, 20, 0, 1), (389, 20, 0, 1), (1587, 20, 0, 1), (1588, 20, 0, 1), (1589, 20, 0, 1), (116, 20, 0, 1), (1590, 20, 0, 1), (213, 20, 0, 1), (362, 20, 0, 1), (1591, 20, 0, 1), (1592, 20, 0, 1), (1190, 20, 0, 1), (1593, 20, 0, 1), (1594, 20, 0, 1), (196, 20, 0, 1), (1595, 20, 0, 1), (1596, 20, 0, 1), (1597, 20, 0, 1), (1598, 20, 0, 1), (1599, 20, 0, 1), (1047, 20, 0, 1), (1600, 20, 0, 1), (1601, 20, 0, 1), (189, 20, 0, 1), (749, 20, 0, 1), (1602, 20, 0, 1), (1603, 20, 0, 1), (1604, 20, 0, 1), (358, 20, 0, 1), (1605, 20, 0, 1), (1606, 20, 0, 1), (1607, 20, 0, 1), (1608, 20, 0, 1), (1609, 20, 0, 1), (1610, 20, 0, 1), (1611, 20, 0, 1), (1612, 20, 0, 1), (1613, 20, 0, 1), (1614, 20, 0, 1), (1615, 20, 0, 1), (792, 20, 0, 1), (1616, 20, 0, 1), (1617, 20, 0, 1), (1618, 20, 0, 1), (1006, 20, 0, 1), (1619, 20, 0, 1), (1035, 20, 0, 1), (1620, 20, 0, 1), (449, 20, 0, 1), (450, 20, 0, 1), (1621, 20, 0, 1), (1147, 20, 0, 1), (144, 20, 0, 1), (1342, 20, 0, 1), (1622, 20, 0, 1), (1623, 20, 0, 1), (1624, 20, 0, 1), (1625, 20, 0, 1), (567, 20, 0, 1), (275, 20, 0, 1), (627, 20, 0, 1), (1626, 20, 0, 1), (1627, 20, 0, 1), (577, 20, 0, 1), (162, 20, 0, 1), (1628, 20, 0, 1), (1629, 20, 0, 1), (1630, 20, 0, 1), (1631, 20, 0, 1), (1632, 20, 0, 1), (1633, 20, 0, 1), (1634, 20, 0, 1), (1635, 20, 0, 1), (1636, 20, 0, 1), (1637, 20, 0, 1), (1638, 20, 0, 1), (695, 20, 0, 1), (145, 20, 0, 1), (1139, 20, 0, 1), (872, 20, 0, 1), (967, 20, 0, 1), (1639, 20, 0, 1), (184, 20, 0, 1), (995, 20, 0, 1), (1640, 20, 0, 1), (1001, 20, 0, 1), (1641, 20, 0, 1), (1642, 20, 0, 1), (1643, 20, 0, 1), (810, 20, 0, 1), (1644, 20, 0, 1), (1645, 20, 0, 1), (1646, 20, 0, 1), (105, 20, 0, 1), (1647, 20, 0, 1), (1132, 20, 0, 1), (989, 20, 0, 1), (1648, 20, 0, 1), (1649, 20, 0, 1), (19, 20, 0, 1), (1650, 20, 0, 1), (1651, 20, 0, 1), (1652, 20, 0, 1), (1653, 20, 0, 1), (1654, 20, 0, 1), (1655, 20, 0, 1), (1656, 20, 0, 1), (1259, 20, 0, 1), (1657, 20, 0, 1), (61, 20, 0, 1), (1658, 20, 0, 1), (1659, 20, 0, 1), (1660, 20, 0, 1), (1661, 20, 0, 1), (1085, 20, 0, 1), (1662, 20, 0, 1), (538, 20, 0, 1), (1663, 20, 0, 1), (1664, 20, 0, 1), (1665, 20, 0, 1), (1666, 20, 0, 1), (1667, 20, 0, 1), (1668, 20, 0, 1), (1669, 20, 0, 1), (1670, 20, 0, 1), (1671, 20, 0, 1), (1059, 20, 0, 1), (1672, 20, 0, 1), (1673, 20, 0, 1), (1674, 20, 0, 1), (1675, 20, 0, 1), (1676, 20, 0, 1), (212, 20, 0, 1), (1677, 20, 0, 1), (1678, 20, 0, 1), (1679, 20, 0, 1), (1680, 20, 0, 1), (1681, 20, 0, 1), (1299, 20, 0, 1), (970, 20, 0, 1), (1682, 20, 0, 1), (1683, 20, 0, 1), (1684, 20, 0, 1), (1685, 20, 0, 1), (1686, 20, 0, 1), (1687, 20, 0, 1), (752, 20, 0, 1), (786, 20, 0, 1), (1688, 20, 0, 1), (896, 20, 0, 1), (900, 20, 0, 1), (1689, 20, 0, 1), (1690, 20, 0, 1), (1691, 20, 0, 1), (1692, 20, 0, 1), (1693, 20, 0, 1), (539, 20, 0, 1), (1694, 20, 0, 1), (1695, 20, 0, 1), (1696, 20, 0, 1), (930, 20, 0, 1), (1002, 20, 0, 1), (1697, 20, 0, 1), (1698, 20, 0, 1), (808, 20, 0, 1), (809, 20, 0, 1), (1699, 20, 0, 1), (1700, 20, 0, 1), (1701, 20, 0, 1), (1702, 20, 0, 1), (1703, 20, 0, 1), (1704, 20, 0, 1), (1705, 20, 0, 1), (386, 20, 0, 1), (1706, 20, 0, 1), (1707, 20, 0, 1), (291, 20, 0, 1), (1708, 20, 0, 1), (1709, 20, 0, 1), (334, 20, 0, 1), (78, 20, 0, 1), (1710, 20, 0, 1), (1711, 20, 0, 1), (1712, 21, 0, 0), (1713, 21, 0, 1), (1714, 21, 0, 1), (1130, 21, 0, 1), (1712, 21, 0, 1), (899, 21, 0, 1), (30, 21, 0, 1), (1715, 21, 0, 1), (1148, 21, 0, 1), (1051, 21, 0, 1), (907, 21, 0, 1), (1716, 21, 0, 1), (1432, 21, 0, 1), (1139, 21, 0, 1), (1144, 21, 0, 1), (1717, 21, 0, 1), (1718, 21, 0, 1), (1719, 21, 0, 1), (1720, 21, 0, 1), (904, 21, 0, 1), (732, 21, 0, 1), (122, 21, 0, 1), (1721, 21, 0, 1), (1433, 21, 0, 1), (1722, 21, 0, 1), (1723, 21, 0, 1), (173, 21, 0, 1), (1724, 21, 0, 1), (385, 21, 0, 1), (39, 21, 0, 1), (966, 21, 0, 1), (7, 21, 0, 1), (42, 21, 0, 1), (1725, 21, 0, 1), (1726, 21, 0, 1), (1727, 21, 0, 1), (1728, 21, 0, 1), (1729, 21, 0, 1), (660, 21, 0, 1), (1141, 21, 0, 1), (1730, 21, 0, 1), (1297, 21, 0, 1), (1731, 21, 0, 1), (1732, 21, 0, 1), (454, 21, 0, 1), (1733, 21, 0, 1), (1734, 21, 0, 1), (125, 21, 0, 1), (144, 21, 0, 1), (414, 21, 0, 1), (1735, 21, 0, 1), (535, 21, 0, 1), (1736, 21, 0, 1), (213, 21, 0, 1), (54, 21, 0, 1), (195, 21, 0, 1), (1737, 21, 0, 1), (512, 21, 0, 1), (606, 21, 0, 1), (1738, 21, 0, 1), (1739, 21, 0, 1), (1149, 21, 0, 1), (63, 21, 0, 1), (1434, 21, 0, 1), (1740, 21, 0, 1), (906, 21, 0, 1), (1248, 21, 0, 1), (872, 21, 0, 1), (67, 21, 0, 1), (1741, 21, 0, 1), (578, 21, 0, 1), (1742, 21, 0, 1), (1743, 21, 0, 1), (1744, 21, 0, 1), (1092, 21, 0, 1), (1745, 21, 0, 1), (1746, 21, 0, 1), (1747, 21, 0, 1), (861, 21, 0, 1), (1748, 21, 0, 1), (1215, 21, 0, 1), (1749, 21, 0, 1), (1750, 21, 0, 1), (577, 21, 0, 1), (397, 21, 0, 1), (1751, 21, 0, 1), (1752, 21, 0, 1), (1661, 21, 0, 1), (513, 21, 0, 1), (885, 21, 0, 1), (253, 21, 0, 1), (1708, 21, 0, 1), (1753, 21, 0, 1), (147, 21, 0, 1), (116, 21, 0, 1), (1754, 21, 0, 1), (1311, 21, 0, 1), (1368, 21, 0, 1), (810, 21, 0, 1), (1755, 21, 0, 1), (597, 21, 0, 1), (1756, 21, 0, 1), (918, 21, 0, 1), (1757, 21, 0, 1), (1758, 21, 0, 1), (1665, 21, 0, 1), (1759, 21, 0, 1), (1760, 21, 0, 1), (1761, 21, 0, 1), (1762, 21, 0, 1), (1763, 21, 0, 1), (1078, 21, 0, 1), (1764, 21, 0, 1), (1765, 21, 0, 1), (1766, 21, 0, 1), (1767, 21, 0, 1), (1218, 21, 0, 1), (1768, 21, 0, 1), (917, 21, 0, 1), (1769, 21, 0, 1), (1770, 21, 0, 1), (1771, 21, 0, 1), (1772, 21, 0, 1), (1261, 21, 0, 1), (1773, 21, 0, 1), (1647, 21, 0, 1), (1774, 21, 0, 1), (1775, 21, 0, 1), (1697, 21, 0, 1), (1776, 21, 0, 1), (1777, 21, 0, 1), (1739, 22, 0, 0), (899, 22, 0, 0), (1739, 22, 0, 1), (1778, 22, 0, 1), (660, 22, 0, 1), (253, 22, 0, 1), (19, 22, 0, 1), (1779, 22, 0, 1), (1762, 22, 0, 1), (1149, 22, 0, 1), (1780, 22, 0, 1), (145, 22, 0, 1), (1351, 22, 0, 1), (1781, 22, 0, 1), (732, 22, 0, 1), (1782, 22, 0, 1), (1783, 22, 0, 1), (1784, 22, 0, 1), (1433, 22, 0, 1), (1785, 22, 0, 1), (1786, 22, 0, 1), (917, 22, 0, 1), (7, 22, 0, 1), (1787, 22, 0, 1), (452, 22, 0, 1), (1788, 22, 0, 1), (1789, 22, 0, 1), (1161, 22, 0, 1), (213, 22, 0, 1), (171, 22, 0, 1), (1790, 22, 0, 1), (1791, 22, 0, 1), (1792, 22, 0, 1), (1793, 22, 0, 1), (1794, 22, 0, 1), (30, 22, 0, 1), (1795, 22, 0, 1), (633, 22, 0, 1), (385, 22, 0, 1), (1048, 22, 0, 1), (250, 22, 0, 1), (1471, 22, 0, 1), (1796, 22, 0, 1), (1797, 22, 0, 1), (1665, 22, 0, 1), (1798, 22, 0, 1), (1799, 22, 0, 1), (1800, 22, 0, 1), (1801, 22, 0, 1), (740, 22, 0, 1), (741, 22, 0, 1), (1802, 22, 0, 1), (25, 22, 0, 1), (1195, 22, 0, 1), (1385, 22, 0, 1), (656, 22, 0, 1), (54, 22, 0, 1), (126, 22, 0, 1), (1803, 22, 0, 1), (1804, 22, 0, 1), (1805, 22, 0, 1), (1806, 22, 0, 1), (1807, 22, 0, 1), (1808, 22, 0, 1), (1042, 22, 0, 1), (1809, 22, 0, 1), (877, 22, 0, 1), (1630, 22, 0, 1), (1810, 22, 0, 1), (1402, 22, 0, 1), (1427, 22, 0, 1), (1811, 22, 0, 1), (1487, 22, 0, 1), (584, 22, 0, 1), (1592, 22, 0, 1), (1812, 22, 0, 1), (115, 22, 0, 1), (42, 22, 0, 1), (1813, 22, 0, 1), (1814, 22, 0, 1), (1418, 22, 0, 1), (1815, 22, 0, 1), (1816, 22, 0, 1), (1817, 22, 0, 1), (1537, 22, 0, 1), (1473, 22, 0, 1), (142, 22, 0, 1), (1818, 22, 0, 1), (1819, 22, 0, 1), (696, 22, 0, 1), (1661, 22, 0, 1), (1820, 22, 0, 1), (158, 22, 0, 1), (240, 22, 0, 1), (17, 22, 0, 1), (1821, 22, 0, 1), (1822, 22, 0, 1), (1823, 22, 0, 1), (444, 22, 0, 1), (1824, 22, 0, 1), (1825, 22, 0, 1), (1826, 22, 0, 1), (1827, 22, 0, 1), (861, 22, 0, 1), (1828, 22, 0, 1), (1829, 22, 0, 1), (1092, 22, 0, 1), (324, 22, 0, 1), (1767, 22, 0, 1), (1726, 22, 0, 1), (1830, 22, 0, 1), (1753, 22, 0, 1), (1745, 22, 0, 1), (125, 22, 0, 1), (1766, 22, 0, 1), (1831, 22, 0, 1), (1832, 22, 0, 1), (1546, 22, 0, 1), (454, 22, 0, 1), (1247, 22, 0, 1), (1833, 22, 0, 1), (907, 22, 0, 1), (93, 22, 0, 1), (1834, 22, 0, 1), (1835, 22, 0, 1), (1836, 22, 0, 1), (1280, 22, 0, 1), (1837, 22, 0, 1), (1838, 22, 0, 1), (1385, 23, 0, 0), (1388, 23, 0, 0), (1385, 23, 0, 1), (1839, 23, 0, 1), (358, 23, 0, 1), (1466, 23, 0, 1), (732, 23, 0, 1), (1830, 23, 0, 1), (577, 23, 0, 1), (1840, 23, 0, 1), (1841, 23, 0, 1), (1842, 23, 0, 1), (1843, 23, 0, 1), (1844, 23, 0, 1), (1845, 23, 0, 1), (1846, 23, 0, 1), (1384, 23, 0, 1), (116, 23, 0, 1), (1847, 23, 0, 1), (744, 23, 0, 1), (1848, 23, 0, 1), (142, 23, 0, 1), (1769, 23, 0, 1), (42, 23, 0, 1), (449, 23, 0, 1), (195, 23, 0, 1), (196, 23, 0, 1), (1708, 23, 0, 1), (125, 23, 0, 1), (160, 23, 0, 1), (1849, 23, 0, 1), (1025, 23, 0, 1), (1511, 23, 0, 1), (1850, 23, 0, 1), (1082, 23, 0, 1), (25, 23, 0, 1), (1515, 23, 0, 1), (54, 23, 0, 1), (311, 23, 0, 1), (1851, 23, 0, 1), (1784, 23, 0, 1), (1852, 23, 0, 1), (1853, 23, 0, 1), (1665, 23, 0, 1), (198, 23, 0, 1), (1811, 23, 0, 1), (1854, 23, 0, 1), (1855, 23, 0, 1), (414, 23, 0, 1), (43, 23, 0, 1), (681, 23, 0, 1), (1856, 23, 0, 1), (1857, 23, 0, 1), (1164, 23, 0, 1), (1321, 23, 0, 1), (1488, 23, 0, 1), (675, 23, 0, 1), (751, 23, 0, 1), (1087, 23, 0, 1), (1730, 23, 0, 1), (1858, 23, 0, 1), (1429, 23, 0, 1), (1311, 23, 0, 1), (1368, 23, 0, 1), (1859, 23, 0, 1), (1860, 23, 0, 1), (1861, 23, 0, 1), (912, 23, 0, 1), (1862, 23, 0, 1), (47, 23, 0, 1), (1863, 23, 0, 1), (1864, 23, 0, 1), (642, 23, 0, 1), (1865, 23, 0, 1), (1866, 23, 0, 1), (1867, 23, 0, 1), (1868, 23, 0, 1), (631, 23, 0, 1), (1869, 23, 0, 1), (1870, 23, 0, 1), (1871, 23, 0, 1), (1872, 23, 0, 1), (1873, 23, 0, 1), (743, 23, 0, 1), (115, 23, 0, 1), (1874, 23, 0, 1), (1875, 23, 0, 1), (30, 23, 0, 1), (1876, 23, 0, 1), (454, 23, 0, 1), (1750, 23, 0, 1), (283, 23, 0, 1), (1014, 23, 0, 1), (907, 23, 0, 1), (7, 23, 0, 1), (1877, 23, 0, 1), (1035, 23, 0, 1), (1878, 23, 0, 1), (1247, 23, 0, 1), (1111, 23, 0, 1), (1879, 23, 0, 1), (1880, 23, 0, 1), (1433, 23, 0, 1), (861, 23, 0, 1), (1881, 23, 0, 1), (385, 23, 0, 1), (153, 23, 0, 1), (1882, 23, 0, 1), (1883, 23, 0, 1), (1299, 23, 0, 1), (69, 23, 0, 1), (1884, 23, 0, 1), (1885, 23, 0, 1), (1886, 23, 0, 1), (251, 23, 0, 1), (67, 23, 0, 1), (444, 23, 0, 1), (1144, 23, 0, 1), (1887, 23, 0, 1), (833, 23, 0, 1), (1888, 23, 0, 1), (357, 23, 0, 1), (77, 23, 0, 1), (1889, 23, 0, 1), (1890, 23, 0, 1), (1891, 23, 0, 1), (1892, 23, 0, 1), (213, 23, 0, 1), (799, 23, 0, 1), (1893, 23, 0, 1), (1894, 23, 0, 1), (1895, 23, 0, 1), (1496, 23, 0, 1), (1896, 23, 0, 1), (1688, 23, 0, 1), (778, 23, 0, 1), (1897, 23, 0, 1), (1898, 23, 0, 1), (1899, 23, 0, 1), (1900, 23, 0, 1), (1901, 23, 0, 1), (1902, 23, 0, 1), (1903, 23, 0, 1), (1904, 23, 0, 1), (1905, 23, 0, 1), (1072, 23, 0, 1), (304, 23, 0, 1), (1090, 23, 0, 1), (1906, 23, 0, 1), (1907, 23, 0, 1), (1512, 23, 0, 1), (1908, 23, 0, 1), (1909, 23, 0, 1), (1379, 23, 0, 1), (1910, 23, 0, 1), (1455, 23, 0, 1), (1454, 23, 0, 1), (749, 23, 0, 1), (1911, 23, 0, 1), (1912, 23, 0, 1), (259, 23, 0, 1), (147, 23, 0, 1), (1913, 23, 0, 1), (1914, 23, 0, 1), (1915, 23, 0, 1), (1916, 23, 0, 1), (40, 23, 0, 1), (1917, 23, 0, 1), (1702, 23, 0, 1), (1918, 23, 0, 1), (1919, 23, 0, 1), (1920, 23, 0, 1), (1921, 23, 0, 1), (1922, 23, 0, 1), (1923, 23, 0, 1), (1924, 23, 0, 1), (1925, 23, 0, 1), (1926, 23, 0, 1), (1089, 23, 0, 1), (1619, 23, 0, 1), (1927, 23, 0, 1), (122, 23, 0, 1), (62, 23, 0, 1), (930, 23, 0, 1), (1928, 23, 0, 1), (1929, 23, 0, 1), (1930, 23, 0, 1), (1704, 23, 0, 1), (1931, 23, 0, 1), (1932, 23, 0, 1), (1042, 23, 0, 1), (970, 23, 0, 1), (1541, 23, 0, 1), (1933, 23, 0, 1), (1934, 23, 0, 1), (1935, 23, 0, 1), (1282, 23, 0, 1), (1707, 23, 0, 1), (189, 23, 0, 1), (1936, 23, 0, 1), (1937, 23, 0, 1), (1938, 23, 0, 1), (1939, 23, 0, 1), (1940, 23, 0, 1), (1941, 23, 0, 1), (1942, 23, 0, 1), (1943, 23, 0, 1), (1944, 23, 0, 1), (1139, 23, 0, 1), (1945, 23, 0, 1), (140, 23, 0, 1), (1946, 23, 0, 1), (1947, 23, 0, 1), (592, 23, 0, 1), (1948, 23, 0, 1), (1949, 23, 0, 1), (1950, 23, 0, 1), (171, 23, 0, 1), (1951, 23, 0, 1), (1952, 23, 0, 1), (1953, 23, 0, 1), (1954, 23, 0, 1), (1955, 23, 0, 1), (1956, 24, 0, 1), (358, 24, 0, 1), (1466, 24, 0, 1), (732, 24, 0, 1), (1830, 24, 0, 1), (577, 24, 0, 1), (1840, 24, 0, 1), (1841, 24, 0, 1), (1842, 24, 0, 1), (1843, 24, 0, 1), (1844, 24, 0, 1), (1845, 24, 0, 1), (1846, 24, 0, 1), (1384, 24, 0, 1), (116, 24, 0, 1), (1847, 24, 0, 1), (744, 24, 0, 1), (1848, 24, 0, 1), (142, 24, 0, 1); INSERT INTO `search_keywords` VALUES (1769, 24, 0, 1), (42, 24, 0, 1), (449, 24, 0, 1), (195, 24, 0, 1), (196, 24, 0, 1), (1708, 24, 0, 1), (125, 24, 0, 1), (160, 24, 0, 1), (1849, 24, 0, 1), (1025, 24, 0, 1), (1511, 24, 0, 1), (1850, 24, 0, 1), (1082, 24, 0, 1), (25, 24, 0, 1), (1515, 24, 0, 1), (54, 24, 0, 1), (311, 24, 0, 1), (1851, 24, 0, 1), (1784, 24, 0, 1), (1852, 24, 0, 1), (1853, 24, 0, 1), (1665, 24, 0, 1), (198, 24, 0, 1), (1811, 24, 0, 1), (1957, 24, 0, 1), (1855, 24, 0, 1), (414, 24, 0, 1), (43, 24, 0, 1), (681, 24, 0, 1), (1856, 24, 0, 1), (1857, 24, 0, 1), (1164, 24, 0, 1), (1321, 24, 0, 1), (1488, 24, 0, 1), (1385, 24, 0, 1), (675, 24, 0, 1), (751, 24, 0, 1), (1087, 24, 0, 1), (1730, 24, 0, 1), (1858, 24, 0, 1), (1429, 24, 0, 1), (1311, 24, 0, 1), (1368, 24, 0, 1), (1859, 24, 0, 1), (1860, 24, 0, 1), (1861, 24, 0, 1), (912, 24, 0, 1), (1862, 24, 0, 1), (47, 24, 0, 1), (1863, 24, 0, 1), (1864, 24, 0, 1), (642, 24, 0, 1), (1865, 24, 0, 1), (1866, 24, 0, 1), (1867, 24, 0, 1), (1868, 24, 0, 1), (631, 24, 0, 1), (1869, 24, 0, 1), (1870, 24, 0, 1), (1871, 24, 0, 1), (1872, 24, 0, 1), (1873, 24, 0, 1), (743, 24, 0, 1), (115, 24, 0, 1), (1874, 24, 0, 1), (1875, 24, 0, 1), (30, 24, 0, 1), (1876, 24, 0, 1), (454, 24, 0, 1), (1750, 24, 0, 1), (283, 24, 0, 1), (1014, 24, 0, 1), (907, 24, 0, 1), (7, 24, 0, 1), (1877, 24, 0, 1), (1035, 24, 0, 1), (1878, 24, 0, 1), (1247, 24, 0, 1), (1111, 24, 0, 1), (1879, 24, 0, 1), (1880, 24, 0, 1), (1433, 24, 0, 1), (861, 24, 0, 1), (1881, 24, 0, 1), (385, 24, 0, 1), (153, 24, 0, 1), (1882, 24, 0, 1), (1883, 24, 0, 1), (1299, 24, 0, 1), (69, 24, 0, 1), (1884, 24, 0, 1), (1885, 24, 0, 1), (1886, 24, 0, 1), (251, 24, 0, 1), (67, 24, 0, 1), (444, 24, 0, 1), (1144, 24, 0, 1), (1887, 24, 0, 1), (833, 24, 0, 1), (1958, 24, 0, 1), (357, 24, 0, 1), (77, 24, 0, 1), (1889, 24, 0, 1), (1890, 24, 0, 1), (1891, 24, 0, 1), (1892, 24, 0, 1), (213, 24, 0, 1), (799, 24, 0, 1), (1893, 24, 0, 1), (1894, 24, 0, 1), (1895, 24, 0, 1), (1496, 24, 0, 1), (1896, 24, 0, 1), (1688, 24, 0, 1), (778, 24, 0, 1), (1897, 24, 0, 1), (1898, 24, 0, 1), (1899, 24, 0, 1), (1900, 24, 0, 1), (1901, 24, 0, 1), (1902, 24, 0, 1), (1903, 24, 0, 1), (1904, 24, 0, 1), (1905, 24, 0, 1), (1072, 24, 0, 1), (304, 24, 0, 1), (1090, 24, 0, 1), (1906, 24, 0, 1), (1907, 24, 0, 1), (1512, 24, 0, 1), (1908, 24, 0, 1), (1909, 24, 0, 1), (1379, 24, 0, 1), (1910, 24, 0, 1), (1455, 24, 0, 1), (1454, 24, 0, 1), (749, 24, 0, 1), (1911, 24, 0, 1), (1912, 24, 0, 1), (259, 24, 0, 1), (147, 24, 0, 1), (1913, 24, 0, 1), (1914, 24, 0, 1), (1915, 24, 0, 1), (1916, 24, 0, 1), (40, 24, 0, 1), (1917, 24, 0, 1), (1702, 24, 0, 1), (1959, 24, 0, 1), (1919, 24, 0, 1), (1920, 24, 0, 1), (1921, 24, 0, 1), (1922, 24, 0, 1), (1923, 24, 0, 1), (1924, 24, 0, 1), (1925, 24, 0, 1), (1926, 24, 0, 1), (1089, 24, 0, 1), (1619, 24, 0, 1), (1927, 24, 0, 1), (122, 24, 0, 1), (62, 24, 0, 1), (930, 24, 0, 1), (1928, 24, 0, 1), (1929, 24, 0, 1), (1930, 24, 0, 1), (1704, 24, 0, 1), (1931, 24, 0, 1), (1932, 24, 0, 1), (1042, 24, 0, 1), (970, 24, 0, 1), (1541, 24, 0, 1), (1933, 24, 0, 1), (1934, 24, 0, 1), (1935, 24, 0, 1), (1282, 24, 0, 1), (1707, 24, 0, 1), (189, 24, 0, 1), (1936, 24, 0, 1), (1937, 24, 0, 1), (1938, 24, 0, 1), (1939, 24, 0, 1), (1940, 24, 0, 1), (1941, 24, 0, 1), (1942, 24, 0, 1), (1943, 24, 0, 1), (1944, 24, 0, 1), (1139, 24, 0, 1), (1945, 24, 0, 1), (140, 24, 0, 1), (1946, 24, 0, 1), (1947, 24, 0, 1), (592, 24, 0, 1), (1948, 24, 0, 1), (1949, 24, 0, 1), (1950, 24, 0, 1), (171, 24, 0, 1), (1951, 24, 0, 1), (1952, 24, 0, 1), (1953, 24, 0, 1), (1954, 24, 0, 1), (1960, 24, 0, 1), (1562, 24, 0, 1), (1961, 24, 0, 1), (1962, 24, 0, 1), (1963, 24, 0, 1), (1964, 24, 0, 1), (1965, 24, 0, 1), (1466, 25, 0, 0), (1466, 25, 0, 1), (1966, 25, 0, 1), (899, 25, 0, 1), (1967, 25, 0, 1), (1968, 25, 0, 1), (417, 25, 0, 1), (1468, 25, 0, 1), (335, 25, 0, 1), (1969, 25, 0, 1), (1970, 25, 0, 1), (1900, 25, 0, 1), (1019, 25, 0, 1), (957, 25, 0, 1), (1971, 25, 0, 1), (1972, 25, 0, 1), (1716, 25, 0, 1), (1973, 25, 0, 1), (1768, 25, 0, 1), (1974, 25, 0, 1), (1975, 25, 0, 1), (444, 25, 0, 1), (1017, 25, 0, 1), (1976, 25, 0, 1), (1977, 25, 0, 1), (1978, 25, 0, 1), (1979, 25, 0, 1), (1624, 25, 0, 1), (1402, 25, 0, 1), (1427, 25, 0, 1), (1743, 25, 0, 1), (7, 25, 0, 1), (364, 25, 0, 1), (1980, 25, 0, 1), (122, 25, 0, 1), (1392, 25, 0, 1), (1962, 25, 0, 1), (1981, 25, 0, 1), (1982, 25, 0, 1), (147, 25, 0, 1), (1511, 25, 0, 1), (116, 25, 0, 1), (1983, 25, 0, 1), (1649, 25, 0, 1), (1984, 25, 0, 1), (1985, 25, 0, 1), (133, 25, 0, 1), (1437, 25, 0, 1), (1148, 25, 0, 1), (1954, 25, 0, 1), (1986, 25, 0, 1), (1432, 25, 0, 1), (732, 25, 0, 1), (1721, 25, 0, 1), (1987, 25, 0, 1), (1988, 25, 0, 1), (202, 25, 0, 1), (951, 25, 0, 1), (145, 25, 0, 1), (1147, 25, 0, 1), (1139, 25, 0, 1), (142, 25, 0, 1), (1989, 25, 0, 1), (1990, 25, 0, 1), (1991, 25, 0, 1), (1727, 25, 0, 1), (769, 25, 0, 1), (115, 25, 0, 1), (1587, 25, 0, 1), (1174, 25, 0, 1), (1363, 25, 0, 1), (1422, 25, 0, 1), (253, 25, 0, 1), (768, 25, 0, 1), (1992, 25, 0, 1), (1619, 25, 0, 1), (1299, 25, 0, 1), (1623, 25, 0, 1), (1993, 25, 0, 1), (1922, 25, 0, 1), (872, 25, 0, 1), (638, 25, 0, 1), (1368, 25, 0, 1), (1868, 25, 0, 1), (1994, 25, 0, 1), (180, 25, 0, 1), (39, 25, 0, 1), (1311, 25, 0, 1), (1235, 25, 0, 1), (1608, 25, 0, 1), (1173, 25, 0, 1), (1995, 25, 0, 1), (449, 25, 0, 1), (47, 25, 0, 1), (1176, 25, 0, 1), (128, 25, 0, 1), (1996, 25, 0, 1), (1997, 25, 0, 1), (213, 25, 0, 1), (54, 25, 0, 1), (1998, 25, 0, 1), (1999, 25, 0, 1), (160, 25, 0, 1), (2000, 25, 0, 1), (788, 25, 0, 1), (2001, 25, 0, 1), (2002, 25, 0, 1), (2003, 25, 0, 1), (2004, 25, 0, 1), (2005, 25, 0, 1), (2006, 25, 0, 1), (1244, 25, 0, 1), (2007, 25, 0, 1), (2008, 25, 0, 1), (584, 25, 0, 1), (1011, 25, 0, 1), (2009, 25, 0, 1), (1090, 25, 0, 1), (1491, 25, 0, 1), (1129, 25, 0, 1), (1747, 25, 0, 1), (861, 25, 0, 1), (2010, 25, 0, 1), (1828, 25, 0, 1), (389, 25, 0, 1), (195, 25, 0, 1), (2011, 25, 0, 1), (2012, 25, 0, 1), (165, 25, 0, 1), (2013, 25, 0, 1), (78, 25, 0, 1), (1818, 25, 0, 1), (30, 25, 0, 1), (2014, 25, 0, 1), (1514, 25, 0, 1), (2015, 25, 0, 1), (1725, 25, 0, 1), (1726, 25, 0, 1), (2016, 25, 0, 1), (886, 25, 0, 1), (2017, 25, 0, 1), (2018, 25, 0, 1), (2019, 25, 0, 1), (2020, 25, 0, 1), (2021, 25, 0, 1), (2022, 25, 0, 1), (2023, 25, 0, 1), (2024, 25, 0, 1), (1865, 26, 0, 0), (316, 26, 0, 0), (1865, 26, 0, 1), (2025, 26, 0, 1), (1122, 26, 0, 1), (1258, 26, 0, 1), (732, 26, 0, 1), (733, 26, 0, 1), (116, 26, 0, 1), (872, 26, 0, 1), (1852, 26, 0, 1), (1189, 26, 0, 1), (1432, 26, 0, 1), (861, 26, 0, 1), (2026, 26, 0, 1), (1762, 26, 0, 1), (1090, 26, 0, 1), (2027, 26, 0, 1), (2028, 26, 0, 1), (918, 26, 0, 1), (2029, 26, 0, 1), (2030, 26, 0, 1), (916, 26, 0, 1), (2031, 26, 0, 1), (1768, 26, 0, 1), (1931, 26, 0, 1), (1767, 26, 0, 1), (1374, 26, 0, 1), (2032, 26, 0, 1), (1433, 26, 0, 1), (1785, 26, 0, 1), (2033, 26, 0, 1), (2034, 26, 0, 1), (2035, 26, 0, 1), (1922, 26, 0, 1), (2036, 26, 0, 1), (1099, 26, 0, 1), (2037, 26, 0, 1), (1682, 26, 0, 1), (1412, 26, 0, 1), (1876, 26, 0, 1), (30, 26, 0, 1), (2038, 26, 0, 1), (1975, 26, 0, 1), (2039, 26, 0, 1), (2040, 26, 0, 1), (2041, 26, 0, 1), (1431, 26, 0, 1), (2042, 26, 0, 1), (2043, 26, 0, 1), (2044, 26, 0, 1), (2045, 26, 0, 1), (2046, 26, 0, 1), (1973, 26, 0, 1), (2047, 26, 0, 1), (2048, 26, 0, 1), (2049, 26, 0, 1), (2050, 26, 0, 1), (43, 26, 0, 1), (2051, 26, 0, 1), (2052, 26, 0, 1), (769, 26, 0, 1), (1190, 26, 0, 1), (507, 26, 0, 1), (578, 26, 0, 1), (801, 26, 0, 1), (2053, 26, 0, 1), (20, 26, 0, 1), (2054, 26, 0, 1), (917, 26, 0, 1), (1721, 26, 0, 1), (951, 26, 0, 1), (2055, 26, 0, 1), (2056, 26, 0, 1), (193, 26, 0, 1), (1390, 26, 0, 1), (2057, 26, 0, 1), (1754, 26, 0, 1), (2058, 26, 0, 1), (2059, 26, 0, 1), (1304, 26, 0, 1), (2060, 26, 0, 1), (1438, 26, 0, 1), (2061, 26, 0, 1), (316, 26, 0, 1), (2062, 26, 0, 1), (2063, 27, 0, 0), (965, 28, 0, 0), (965, 28, 0, 1), (2064, 28, 0, 1), (732, 28, 0, 1), (872, 28, 0, 1), (1824, 28, 0, 1), (2065, 28, 0, 1), (1089, 28, 0, 1), (1715, 28, 0, 1), (2066, 28, 0, 1), (19, 28, 0, 1), (1987, 28, 0, 1), (2067, 28, 0, 1), (1923, 28, 0, 1), (42, 28, 0, 1), (1471, 28, 0, 1), (447, 28, 0, 1), (2068, 28, 0, 1), (2069, 28, 0, 1), (1762, 28, 0, 1), (2070, 28, 0, 1), (2071, 28, 0, 1), (7, 28, 0, 1), (61, 28, 0, 1), (71, 28, 0, 1), (116, 28, 0, 1), (1148, 28, 0, 1), (1717, 28, 0, 1), (2072, 28, 0, 1), (2073, 28, 0, 1), (579, 28, 0, 1), (1178, 28, 0, 1), (1348, 28, 0, 1), (1335, 28, 0, 1), (2074, 28, 0, 1), (2075, 28, 0, 1), (930, 28, 0, 1), (2076, 28, 0, 1), (335, 28, 0, 1), (1598, 28, 0, 1), (1353, 28, 0, 1), (2077, 28, 0, 1), (1093, 28, 0, 1), (1638, 28, 0, 1), (142, 28, 0, 1), (94, 28, 0, 1), (192, 28, 0, 1), (2078, 28, 0, 1), (2079, 28, 0, 1), (54, 28, 0, 1), (171, 28, 0, 1), (2080, 28, 0, 1), (1362, 28, 0, 1), (1363, 28, 0, 1), (1162, 28, 0, 1), (2081, 28, 0, 1), (1247, 28, 0, 1), (1269, 28, 0, 1), (952, 28, 0, 1), (1954, 28, 0, 1), (2082, 28, 0, 1), (2083, 28, 0, 1), (1768, 28, 0, 1), (1721, 28, 0, 1), (2084, 28, 0, 1), (1668, 28, 0, 1), (1754, 28, 0, 1), (2085, 28, 0, 1), (39, 28, 0, 1), (966, 28, 0, 1), (951, 28, 0, 1), (2086, 28, 0, 1), (2087, 28, 0, 1), (2088, 28, 0, 1), (2089, 28, 0, 1), (147, 28, 0, 1), (1571, 28, 0, 1), (1462, 28, 0, 1), (1432, 28, 0, 1), (282, 28, 0, 1), (638, 28, 0, 1), (158, 28, 0, 1), (1465, 28, 0, 1), (475, 28, 0, 1), (1704, 28, 0, 1), (908, 28, 0, 1), (356, 28, 0, 1), (1139, 28, 0, 1), (2090, 28, 0, 1), (2091, 28, 0, 1), (2092, 28, 0, 1), (385, 28, 0, 1), (2093, 28, 0, 1), (90, 28, 0, 1), (2094, 28, 0, 1), (2095, 28, 0, 1), (2096, 28, 0, 1), (2097, 28, 0, 1), (1258, 28, 0, 1), (2098, 28, 0, 1), (1011, 28, 0, 1), (1012, 28, 0, 1), (1112, 28, 0, 1), (1939, 28, 0, 1), (2032, 28, 0, 1), (2099, 28, 0, 1), (2100, 28, 0, 1), (1808, 28, 0, 1), (1374, 28, 0, 1), (2101, 28, 0, 1), (2102, 28, 0, 1), (584, 28, 0, 1), (957, 28, 0, 1), (1019, 28, 0, 1), (1483, 28, 0, 1), (2103, 28, 0, 1), (2104, 28, 0, 1), (1988, 28, 0, 1), (43, 28, 0, 1), (2009, 28, 0, 1), (2105, 28, 0, 1), (2106, 28, 0, 1), (2107, 28, 0, 1), (732, 29, 0, 0), (733, 29, 0, 0), (732, 29, 0, 1), (2108, 29, 0, 1), (733, 29, 0, 1), (1011, 29, 0, 1), (2109, 29, 0, 1), (63, 29, 0, 1), (116, 29, 0, 1), (387, 29, 0, 1), (1017, 29, 0, 1), (1203, 29, 0, 1), (1077, 29, 0, 1), (1073, 29, 0, 1), (1133, 29, 0, 1), (389, 29, 0, 1), (1356, 29, 0, 1), (1900, 29, 0, 1), (1353, 29, 0, 1), (2110, 29, 0, 1), (600, 29, 0, 1), (995, 29, 0, 1), (1098, 29, 0, 1), (1824, 29, 0, 1), (1471, 29, 0, 1), (282, 29, 0, 1), (965, 29, 0, 1), (899, 29, 0, 1), (584, 29, 0, 1), (158, 29, 0, 1), (806, 29, 0, 1), (253, 29, 0, 1), (2111, 29, 0, 1), (1716, 29, 0, 1), (1466, 29, 0, 1), (1722, 29, 0, 1), (1189, 29, 0, 1), (1712, 29, 0, 1), (454, 29, 0, 1), (1136, 29, 0, 1), (1149, 29, 0, 1), (417, 29, 0, 1), (115, 29, 0, 1), (2112, 29, 0, 1), (2113, 29, 0, 1), (2114, 29, 0, 1), (401, 29, 0, 1), (799, 29, 0, 1), (1074, 29, 0, 1), (769, 29, 0, 1), (2115, 29, 0, 1), (1421, 29, 0, 1), (160, 29, 0, 1), (180, 29, 0, 1), (1012, 29, 0, 1), (1938, 29, 0, 1), (1419, 29, 0, 1), (2116, 29, 0, 1), (2097, 29, 0, 1), (2117, 29, 0, 1), (43, 29, 0, 1), (1717, 29, 0, 1), (1762, 29, 0, 1), (2118, 29, 0, 1), (142, 29, 0, 1), (1056, 29, 0, 1), (2119, 29, 0, 1), (1041, 29, 0, 1), (2120, 29, 0, 1), (2121, 29, 0, 1), (696, 29, 0, 1), (128, 29, 0, 1), (908, 29, 0, 1), (960, 29, 0, 1), (861, 29, 0, 1), (1828, 29, 0, 1), (195, 29, 0, 1), (196, 29, 0, 1), (2077, 29, 0, 1), (2122, 29, 0, 1), (30, 29, 0, 1), (872, 29, 0, 1), (647, 29, 0, 1), (904, 29, 0, 1), (78, 29, 0, 1), (54, 29, 0, 1), (810, 29, 0, 1), (206, 29, 0, 1), (2008, 29, 0, 1), (2123, 29, 0, 1), (1594, 29, 0, 1), (64, 29, 0, 1), (1720, 29, 0, 1), (1161, 29, 0, 1), (1808, 29, 0, 1), (1874, 29, 0, 1), (1875, 29, 0, 1), (2124, 29, 0, 1), (71, 29, 0, 1), (1141, 29, 0, 1), (1794, 29, 0, 1), (2125, 29, 0, 1), (2126, 29, 0, 1), (2127, 29, 0, 1), (2128, 29, 0, 1), (513, 29, 0, 1), (2129, 29, 0, 1), (2130, 29, 0, 1), (2131, 29, 0, 1), (2132, 29, 0, 1), (2133, 29, 0, 1), (2134, 29, 0, 1), (2135, 29, 0, 1), (2136, 29, 0, 1), (2137, 29, 0, 1), (2138, 29, 0, 1), (1487, 29, 0, 1), (678, 29, 0, 1), (2139, 29, 0, 1), (1050, 29, 0, 1), (2140, 29, 0, 1), (567, 29, 0, 1), (853, 29, 0, 1), (2141, 29, 0, 1), (2142, 29, 0, 1), (1076, 29, 0, 1), (1583, 29, 0, 1), (2143, 29, 0, 1), (2144, 29, 0, 1), (2145, 29, 0, 1), (1071, 29, 0, 1), (2146, 29, 0, 1), (2147, 29, 0, 1), (2148, 29, 0, 1), (2149, 29, 0, 1), (2150, 29, 0, 1), (2151, 29, 0, 1), (2152, 29, 0, 1), (2153, 29, 0, 1), (2154, 29, 0, 1), (2155, 29, 0, 1), (2156, 29, 0, 1), (820, 29, 0, 1), (785, 29, 0, 1), (2157, 29, 0, 1), (732, 30, 0, 0), (2063, 30, 0, 0), (107, 30, 0, 0), (2159, 3, 1, 0), (2159, 3, 3, 0), (2160, 31, 0, 0), (2161, 31, 0, 0), (2161, 32, 0, 0), (2293, 32, 0, 0), (8, 32, 0, 0), (1452, 32, 0, 0), (2381, 33, 0, 0), (1053, 33, 0, 0), (2161, 34, 0, 0), (219, 34, 0, 0), (2285, 35, 0, 0), (2450, 35, 0, 0), (117, 35, 0, 0), (2450, 36, 0, 0), (117, 36, 0, 0), (2652, 37, 0, 0), (2619, 37, 0, 0), (2457, 38, 0, 0), (160, 38, 0, 0), (2508, 38, 0, 0), (2743, 39, 0, 0), (2351, 39, 0, 0), (2457, 40, 0, 0), (160, 40, 0, 0), (2827, 40, 0, 0), (2413, 40, 0, 0), (2160, 41, 0, 0), (1449, 41, 0, 0), (2643, 41, 0, 0), (2983, 42, 0, 0), (2984, 42, 0, 0), (3051, 43, 0, 0), (39, 43, 0, 0), (1168, 44, 0, 0), (402, 44, 0, 0), (71, 44, 0, 0), (28, 45, 0, 0), (488, 45, 0, 0), (3304, 46, 0, 0), (773, 46, 0, 0), (488, 46, 0, 0), (3305, 46, 0, 0), (3378, 47, 0, 0), (3379, 47, 0, 0), (1261, 48, 0, 0), (160, 48, 0, 0), (1820, 48, 0, 0), (2185, 48, 0, 0), (1735, 49, 0, 0), (2185, 49, 0, 0), (1797, 49, 0, 0), (675, 50, 0, 0), (107, 50, 0, 0), (633, 51, 0, 0), (3553, 51, 0, 0), (221, 51, 0, 0), (3554, 51, 0, 0), (3564, 52, 0, 0), (221, 52, 0, 0), (3565, 52, 0, 0), (2457, 53, 0, 0), (160, 53, 0, 0), (119, 53, 0, 0), (773, 53, 0, 0), (577, 54, 0, 0), (3729, 54, 0, 0), (107, 54, 0, 0), (2162, 31, 0, 1), (3730, 31, 0, 1), (3731, 31, 0, 1), (2164, 31, 0, 1), (938, 31, 0, 1), (2158, 31, 0, 1), (19, 31, 0, 1), (606, 31, 0, 1), (2165, 31, 0, 1), (2161, 31, 0, 1), (2166, 31, 0, 1), (2167, 31, 0, 1), (43, 31, 0, 1), (2168, 31, 0, 1), (765, 31, 0, 1), (578, 31, 0, 1), (545, 31, 0, 1), (138, 31, 0, 1), (2169, 31, 0, 1), (2170, 31, 0, 1), (2171, 31, 0, 1), (2172, 31, 0, 1), (2173, 31, 0, 1), (2174, 31, 0, 1), (1449, 31, 0, 1), (1003, 31, 0, 1), (2175, 31, 0, 1), (943, 31, 0, 1), (2176, 31, 0, 1), (195, 31, 0, 1), (2177, 31, 0, 1), (2178, 31, 0, 1), (1021, 31, 0, 1), (2179, 31, 0, 1), (202, 31, 0, 1), (2180, 31, 0, 1), (864, 31, 0, 1), (1074, 31, 0, 1), (251, 31, 0, 1), (2181, 31, 0, 1), (2182, 31, 0, 1), (2183, 31, 0, 1), (1494, 31, 0, 1), (120, 31, 0, 1), (2184, 31, 0, 1), (160, 31, 0, 1), (2185, 31, 0, 1), (1203, 31, 0, 1), (802, 31, 0, 1), (2186, 31, 0, 1), (2187, 31, 0, 1), (2188, 31, 0, 1), (797, 31, 0, 1), (2189, 31, 0, 1), (115, 31, 0, 1), (7, 31, 0, 1), (2190, 31, 0, 1), (2191, 31, 0, 1), (466, 31, 0, 1), (2192, 31, 0, 1), (2193, 31, 0, 1), (2194, 31, 0, 1), (2195, 31, 0, 1), (92, 31, 0, 1), (2196, 31, 0, 1), (2197, 31, 0, 1), (118, 31, 0, 1), (63, 31, 0, 1), (672, 31, 0, 1), (2198, 31, 0, 1), (2199, 31, 0, 1), (2200, 31, 0, 1), (2201, 31, 0, 1), (90, 31, 0, 1), (2202, 31, 0, 1), (2203, 31, 0, 1), (1661, 31, 0, 1), (2204, 31, 0, 1), (2205, 31, 0, 1), (2206, 31, 0, 1), (449, 31, 0, 1), (222, 31, 0, 1), (25, 31, 0, 1), (320, 31, 0, 1), (2207, 31, 0, 1), (189, 31, 0, 1), (2208, 31, 0, 1), (2209, 31, 0, 1), (2210, 31, 0, 1), (2211, 31, 0, 1), (2212, 31, 0, 1), (2213, 31, 0, 1), (1356, 31, 0, 1), (165, 31, 0, 1), (2214, 31, 0, 1), (1599, 31, 0, 1), (2215, 31, 0, 1), (1053, 31, 0, 1), (427, 31, 0, 1), (2216, 31, 0, 1), (357, 31, 0, 1), (958, 31, 0, 1), (2217, 31, 0, 1), (2218, 31, 0, 1), (620, 31, 0, 1), (44, 31, 0, 1), (385, 31, 0, 1), (2219, 31, 0, 1), (2220, 31, 0, 1), (1572, 31, 0, 1), (322, 31, 0, 1), (337, 31, 0, 1), (2221, 31, 0, 1), (2222, 31, 0, 1), (452, 31, 0, 1), (2223, 31, 0, 1), (2224, 31, 0, 1), (2225, 31, 0, 1), (1735, 31, 0, 1), (2226, 31, 0, 1), (2227, 31, 0, 1), (636, 31, 0, 1), (32, 31, 0, 1), (1256, 31, 0, 1), (2228, 31, 0, 1), (2229, 31, 0, 1), (2230, 31, 0, 1), (482, 31, 0, 1), (1156, 31, 0, 1), (2231, 31, 0, 1), (2232, 31, 0, 1), (1640, 31, 0, 1), (584, 31, 0, 1), (180, 31, 0, 1), (592, 31, 0, 1), (2233, 31, 0, 1), (2234, 31, 0, 1), (903, 31, 0, 1), (2235, 31, 0, 1), (1841, 31, 0, 1), (53, 31, 0, 1), (646, 31, 0, 1), (54, 31, 0, 1), (1026, 31, 0, 1), (453, 31, 0, 1), (2236, 31, 0, 1), (2237, 31, 0, 1), (263, 31, 0, 1), (2238, 31, 0, 1), (2239, 31, 0, 1), (1760, 31, 0, 1), (555, 31, 0, 1), (1000, 31, 0, 1), (212, 31, 0, 1), (158, 31, 0, 1), (2240, 31, 0, 1), (2241, 31, 0, 1), (225, 31, 0, 1), (1010, 31, 0, 1), (838, 31, 0, 1), (2242, 31, 0, 1), (2243, 31, 0, 1), (2244, 31, 0, 1), (2245, 31, 0, 1), (2246, 31, 0, 1), (219, 31, 0, 1), (2247, 31, 0, 1), (2248, 31, 0, 1), (2249, 31, 0, 1), (543, 31, 0, 1), (2250, 31, 0, 1), (1193, 31, 0, 1), (2251, 31, 0, 1), (2252, 31, 0, 1), (488, 31, 0, 1), (2253, 31, 0, 1), (2254, 31, 0, 1), (2255, 31, 0, 1), (847, 31, 0, 1), (819, 31, 0, 1), (513, 31, 0, 1), (1333, 31, 0, 1), (2256, 31, 0, 1), (221, 31, 0, 1), (444, 31, 0, 1), (2257, 31, 0, 1), (1544, 31, 0, 1), (2258, 31, 0, 1), (39, 31, 0, 1), (2259, 31, 0, 1), (1077, 31, 0, 1), (1716, 31, 0, 1), (2260, 31, 0, 1), (71, 31, 0, 1), (1553, 31, 0, 1), (37, 31, 0, 1), (2261, 31, 0, 1), (550, 31, 0, 1), (2262, 31, 0, 1), (2263, 31, 0, 1), (537, 31, 0, 1), (2264, 31, 0, 1), (93, 31, 0, 1), (2265, 31, 0, 1), (2266, 31, 0, 1), (625, 31, 0, 1), (2267, 31, 0, 1), (1801, 31, 0, 1), (356, 31, 0, 1), (602, 31, 0, 1), (1056, 31, 0, 1), (2268, 31, 0, 1), (844, 31, 0, 1), (2269, 31, 0, 1), (2270, 31, 0, 1), (2271, 31, 0, 1), (2272, 31, 0, 1), (439, 31, 0, 1), (2273, 31, 0, 1), (2274, 31, 0, 1), (2275, 31, 0, 1), (161, 31, 0, 1), (2276, 31, 0, 1), (2277, 31, 0, 1), (2278, 31, 0, 1), (2279, 31, 0, 1), (2280, 31, 0, 1), (2160, 31, 0, 1), (2281, 31, 0, 1), (495, 31, 0, 1), (2282, 31, 0, 1), (2283, 31, 0, 1), (2284, 31, 0, 1), (2285, 31, 0, 1), (565, 31, 0, 1), (2286, 31, 0, 1), (2287, 31, 0, 1), (2288, 31, 0, 1), (2289, 31, 0, 1), (614, 31, 0, 1), (2290, 31, 0, 1), (2291, 31, 0, 1), (2292, 31, 0, 1), (1467, 31, 0, 1), (253, 31, 0, 1), (1281, 31, 0, 1), (3732, 31, 0, 1), (3733, 31, 0, 1), (3734, 31, 0, 1), (3735, 31, 0, 1), (3736, 31, 0, 1), (2294, 32, 0, 1), (2161, 32, 0, 1), (2293, 32, 0, 1), (8, 32, 0, 1), (3737, 32, 0, 1), (3731, 32, 0, 1), (37, 32, 0, 1), (2296, 32, 0, 1), (160, 32, 0, 1), (2297, 32, 0, 1), (2174, 32, 0, 1), (676, 32, 0, 1), (2204, 32, 0, 1), (2298, 32, 0, 1), (202, 32, 0, 1), (566, 32, 0, 1), (537, 32, 0, 1), (1572, 32, 0, 1), (2299, 32, 0, 1), (438, 32, 0, 1), (197, 32, 0, 1), (92, 32, 0, 1), (2300, 32, 0, 1), (482, 32, 0, 1), (452, 32, 0, 1), (396, 32, 0, 1), (2301, 32, 0, 1), (2200, 32, 0, 1), (161, 32, 0, 1), (2302, 32, 0, 1), (2303, 32, 0, 1), (2304, 32, 0, 1), (1195, 32, 0, 1), (480, 32, 0, 1), (481, 32, 0, 1), (2305, 32, 0, 1), (668, 32, 0, 1), (165, 32, 0, 1), (1481, 32, 0, 1), (138, 32, 0, 1), (43, 32, 0, 1), (2234, 32, 0, 1), (2306, 32, 0, 1), (221, 32, 0, 1), (2307, 32, 0, 1), (2308, 32, 0, 1), (178, 32, 0, 1), (2309, 32, 0, 1), (222, 32, 0, 1), (2310, 32, 0, 1), (357, 32, 0, 1), (605, 32, 0, 1), (2311, 32, 0, 1), (2312, 32, 0, 1), (19, 32, 0, 1), (2313, 32, 0, 1), (42, 32, 0, 1), (2314, 32, 0, 1), (324, 32, 0, 1), (2315, 32, 0, 1), (2230, 32, 0, 1), (30, 32, 0, 1), (2183, 32, 0, 1), (2316, 32, 0, 1), (2317, 32, 0, 1), (2318, 32, 0, 1), (2319, 32, 0, 1), (2320, 32, 0, 1), (1449, 32, 0, 1), (2284, 32, 0, 1), (54, 32, 0, 1), (2321, 32, 0, 1), (2322, 32, 0, 1), (2323, 32, 0, 1), (2324, 32, 0, 1), (2325, 32, 0, 1), (301, 32, 0, 1), (2326, 32, 0, 1), (1077, 32, 0, 1), (1021, 32, 0, 1), (2327, 32, 0, 1), (571, 32, 0, 1), (198, 32, 0, 1), (142, 32, 0, 1), (2328, 32, 0, 1), (2329, 32, 0, 1), (634, 32, 0, 1), (1043, 32, 0, 1), (61, 32, 0, 1), (71, 32, 0, 1), (2330, 32, 0, 1), (159, 32, 0, 1), (2331, 32, 0, 1), (2332, 32, 0, 1), (1025, 32, 0, 1), (773, 32, 0, 1), (2333, 32, 0, 1), (82, 32, 0, 1), (2334, 32, 0, 1), (457, 32, 0, 1), (2335, 32, 0, 1), (2336, 32, 0, 1), (115, 32, 0, 1), (39, 32, 0, 1), (225, 32, 0, 1), (318, 32, 0, 1), (4, 32, 0, 1), (2337, 32, 0, 1), (1244, 32, 0, 1), (844, 32, 0, 1), (952, 32, 0, 1), (2338, 32, 0, 1), (2339, 32, 0, 1), (70, 32, 0, 1), (2340, 32, 0, 1), (2341, 32, 0, 1), (25, 32, 0, 1), (2342, 32, 0, 1), (2343, 32, 0, 1), (2344, 32, 0, 1), (944, 32, 0, 1), (32, 32, 0, 1), (2345, 32, 0, 1), (1452, 32, 0, 1), (136, 32, 0, 1), (2167, 32, 0, 1), (2346, 32, 0, 1), (797, 32, 0, 1), (72, 32, 0, 1), (229, 32, 0, 1), (1735, 32, 0, 1), (2185, 32, 0, 1), (2347, 32, 0, 1), (2348, 32, 0, 1), (744, 32, 0, 1), (1462, 32, 0, 1), (180, 32, 0, 1), (2349, 32, 0, 1), (2350, 32, 0, 1), (2236, 32, 0, 1), (1026, 32, 0, 1), (1000, 32, 0, 1), (212, 32, 0, 1), (2351, 32, 0, 1), (2352, 32, 0, 1), (2116, 32, 0, 1), (2353, 32, 0, 1), (2354, 32, 0, 1), (192, 32, 0, 1), (2158, 32, 0, 1), (2355, 32, 0, 1), (513, 32, 0, 1), (2190, 32, 0, 1), (292, 32, 0, 1), (216, 32, 0, 1), (2356, 32, 0, 1), (267, 32, 0, 1), (2357, 32, 0, 1), (568, 32, 0, 1), (28, 32, 0, 1), (2171, 32, 0, 1), (2358, 32, 0, 1), (2359, 32, 0, 1), (2360, 32, 0, 1), (205, 32, 0, 1), (120, 32, 0, 1), (2361, 32, 0, 1), (2362, 32, 0, 1), (1053, 32, 0, 1), (857, 32, 0, 1), (194, 32, 0, 1), (189, 32, 0, 1), (2363, 32, 0, 1), (2364, 32, 0, 1), (2365, 32, 0, 1), (2366, 32, 0, 1), (2367, 32, 0, 1), (250, 32, 0, 1), (2368, 32, 0, 1), (2369, 32, 0, 1), (90, 32, 0, 1), (2202, 32, 0, 1), (2370, 32, 0, 1), (449, 32, 0, 1), (2371, 32, 0, 1), (2372, 32, 0, 1), (2269, 32, 0, 1), (2373, 32, 0, 1), (251, 32, 0, 1), (1107, 32, 0, 1), (2374, 32, 0, 1), (195, 32, 0, 1), (2375, 32, 0, 1), (2376, 32, 0, 1), (423, 32, 0, 1), (91, 32, 0, 1), (503, 32, 0, 1), (73, 32, 0, 1), (2377, 32, 0, 1), (686, 32, 0, 1), (53, 32, 0, 1), (636, 32, 0, 1), (1261, 32, 0, 1), (2378, 32, 0, 1), (1154, 32, 0, 1), (577, 32, 0, 1), (691, 32, 0, 1), (190, 32, 0, 1), (322, 32, 0, 1), (140, 32, 0, 1), (2379, 32, 0, 1), (642, 32, 0, 1), (2380, 32, 0, 1), (3732, 32, 0, 1), (3733, 32, 0, 1), (3734, 32, 0, 1), (3735, 32, 0, 1), (3736, 32, 0, 1), (2294, 33, 0, 1), (2381, 33, 0, 1), (3738, 33, 0, 1), (3739, 33, 0, 1), (2383, 33, 0, 1), (2384, 33, 0, 1), (2385, 33, 0, 1), (2386, 33, 0, 1), (138, 33, 0, 1), (144, 33, 0, 1), (545, 33, 0, 1), (30, 33, 0, 1), (2387, 33, 0, 1), (2388, 33, 0, 1), (549, 33, 0, 1), (2200, 33, 0, 1), (202, 33, 0, 1), (147, 33, 0, 1), (2389, 33, 0, 1), (552, 33, 0, 1), (2390, 33, 0, 1), (92, 33, 0, 1), (357, 33, 0, 1), (2391, 33, 0, 1), (2185, 33, 0, 1), (657, 33, 0, 1), (2392, 33, 0, 1), (2393, 33, 0, 1), (189, 33, 0, 1), (1573, 33, 0, 1), (1053, 33, 0, 1), (2394, 33, 0, 1), (178, 33, 0, 1), (2183, 33, 0, 1), (118, 33, 0, 1), (2395, 33, 0, 1), (1650, 33, 0, 1), (1098, 33, 0, 1), (578, 33, 0, 1), (2396, 33, 0, 1), (2194, 33, 0, 1), (7, 33, 0, 1), (537, 33, 0, 1), (136, 33, 0, 1), (180, 33, 0, 1), (592, 33, 0, 1), (555, 33, 0, 1), (2397, 33, 0, 1), (1407, 33, 0, 1), (2170, 33, 0, 1), (2182, 33, 0, 1), (493, 33, 0, 1), (9, 33, 0, 1), (495, 33, 0, 1), (1710, 33, 0, 1), (550, 33, 0, 1), (43, 33, 0, 1), (2398, 33, 0, 1), (2399, 33, 0, 1), (172, 33, 0, 1), (2400, 33, 0, 1), (222, 33, 0, 1), (539, 33, 0, 1), (318, 33, 0, 1), (71, 33, 0, 1), (365, 33, 0, 1), (2272, 33, 0, 1), (2401, 33, 0, 1), (2402, 33, 0, 1), (2318, 33, 0, 1), (63, 33, 0, 1), (183, 33, 0, 1), (290, 33, 0, 1), (2403, 33, 0, 1), (280, 33, 0, 1), (2404, 33, 0, 1), (67, 33, 0, 1), (1655, 33, 0, 1), (2405, 33, 0, 1), (2406, 33, 0, 1), (2407, 33, 0, 1), (2373, 33, 0, 1), (452, 33, 0, 1), (195, 33, 0, 1), (196, 33, 0, 1), (229, 33, 0, 1), (120, 33, 0, 1), (2408, 33, 0, 1), (2409, 33, 0, 1), (320, 33, 0, 1), (2410, 33, 0, 1), (583, 33, 0, 1), (1195, 33, 0, 1), (2411, 33, 0, 1), (2412, 33, 0, 1), (25, 33, 0, 1), (2168, 33, 0, 1), (1025, 33, 0, 1), (2413, 33, 0, 1), (605, 33, 0, 1), (797, 33, 0, 1), (40, 33, 0, 1), (2414, 33, 0, 1), (128, 33, 0, 1), (1117, 33, 0, 1), (482, 33, 0, 1), (676, 33, 0, 1), (2415, 33, 0, 1), (2416, 33, 0, 1), (194, 33, 0, 1), (1793, 33, 0, 1), (2344, 33, 0, 1), (2417, 33, 0, 1), (416, 33, 0, 1), (2418, 33, 0, 1), (606, 33, 0, 1), (2361, 33, 0, 1), (2419, 33, 0, 1), (2420, 33, 0, 1), (385, 33, 0, 1), (2421, 33, 0, 1), (2208, 33, 0, 1), (2422, 33, 0, 1), (1527, 33, 0, 1), (1143, 33, 0, 1), (2423, 33, 0, 1), (2424, 33, 0, 1), (1056, 33, 0, 1), (473, 33, 0, 1), (382, 33, 0, 1), (19, 33, 0, 1), (707, 33, 0, 1), (1074, 33, 0, 1), (2425, 33, 0, 1), (1014, 33, 0, 1), (2426, 33, 0, 1), (3732, 33, 0, 1), (3733, 33, 0, 1), (3734, 33, 0, 1), (3735, 33, 0, 1), (3736, 33, 0, 1), (2294, 34, 0, 1), (2161, 34, 0, 1), (219, 34, 0, 1), (3740, 34, 0, 1), (3741, 34, 0, 1), (2301, 34, 0, 1), (1056, 34, 0, 1), (1014, 34, 0, 1), (43, 34, 0, 1), (369, 34, 0, 1), (2306, 34, 0, 1), (2428, 34, 0, 1), (2429, 34, 0, 1), (2430, 34, 0, 1), (2249, 34, 0, 1), (193, 34, 0, 1), (2431, 34, 0, 1), (192, 34, 0, 1), (449, 34, 0, 1), (543, 34, 0, 1), (2432, 34, 0, 1), (2433, 34, 0, 1), (2285, 34, 0, 1), (2434, 34, 0, 1), (37, 34, 0, 1), (253, 34, 0, 1), (935, 34, 0, 1), (402, 34, 0, 1), (2435, 34, 0, 1), (2436, 34, 0, 1), (2175, 34, 0, 1), (2437, 34, 0, 1), (2438, 34, 0, 1), (2439, 34, 0, 1), (676, 34, 0, 1), (2440, 34, 0, 1), (2390, 34, 0, 1), (312, 34, 0, 1), (138, 34, 0, 1), (2202, 34, 0, 1), (493, 34, 0, 1), (105, 34, 0, 1), (523, 34, 0, 1), (801, 34, 0, 1), (2441, 34, 0, 1), (2442, 34, 0, 1), (1312, 34, 0, 1), (216, 34, 0, 1), (488, 34, 0, 1), (90, 34, 0, 1), (2413, 34, 0, 1), (2443, 34, 0, 1), (2404, 34, 0, 1), (142, 34, 0, 1), (539, 34, 0, 1), (2444, 34, 0, 1), (2445, 34, 0, 1), (2446, 34, 0, 1), (2170, 34, 0, 1), (2447, 34, 0, 1), (107, 34, 0, 1), (2248, 34, 0, 1), (2448, 34, 0, 1), (1000, 34, 0, 1), (2449, 34, 0, 1), (2450, 34, 0, 1), (71, 34, 0, 1), (123, 34, 0, 1), (2451, 34, 0, 1), (221, 34, 0, 1), (2452, 34, 0, 1), (2453, 34, 0, 1), (140, 34, 0, 1), (2454, 34, 0, 1), (117, 34, 0, 1), (466, 34, 0, 1), (568, 34, 0, 1), (2455, 34, 0, 1), (2456, 34, 0, 1), (2185, 34, 0, 1), (2457, 34, 0, 1), (2458, 34, 0, 1), (1637, 34, 0, 1), (225, 34, 0, 1), (2312, 34, 0, 1), (578, 34, 0, 1), (537, 34, 0, 1), (2459, 34, 0, 1), (12, 34, 0, 1), (2460, 34, 0, 1), (2461, 34, 0, 1), (2462, 34, 0, 1), (2463, 34, 0, 1), (2464, 34, 0, 1), (2465, 34, 0, 1), (2220, 34, 0, 1), (2466, 34, 0, 1), (172, 34, 0, 1), (1157, 34, 0, 1), (538, 34, 0, 1), (482, 34, 0, 1), (2467, 34, 0, 1), (292, 34, 0, 1), (1193, 34, 0, 1), (124, 34, 0, 1), (1296, 34, 0, 1), (2468, 34, 0, 1), (316, 34, 0, 1), (1735, 34, 0, 1), (2469, 34, 0, 1), (2236, 34, 0, 1), (2470, 34, 0, 1), (2471, 34, 0, 1), (2472, 34, 0, 1), (1599, 34, 0, 1), (2473, 34, 0, 1), (2474, 34, 0, 1), (58, 34, 0, 1), (2475, 34, 0, 1), (2476, 34, 0, 1), (2351, 34, 0, 1), (145, 34, 0, 1), (786, 34, 0, 1), (158, 34, 0, 1), (2325, 34, 0, 1), (2477, 34, 0, 1), (1189, 34, 0, 1), (1973, 34, 0, 1), (802, 34, 0, 1), (1631, 34, 0, 1), (503, 34, 0, 1), (2478, 34, 0, 1), (2479, 34, 0, 1), (2480, 34, 0, 1), (2481, 34, 0, 1), (92, 34, 0, 1), (63, 34, 0, 1), (2482, 34, 0, 1), (823, 34, 0, 1), (1449, 34, 0, 1), (2483, 34, 0, 1), (2484, 34, 0, 1), (2222, 34, 0, 1), (1036, 34, 0, 1), (164, 34, 0, 1), (357, 34, 0, 1), (847, 34, 0, 1), (505, 34, 0, 1), (2485, 34, 0, 1), (385, 34, 0, 1), (2486, 34, 0, 1), (2200, 34, 0, 1), (154, 34, 0, 1), (2197, 34, 0, 1), (1484, 34, 0, 1), (2254, 34, 0, 1), (3732, 34, 0, 1), (3733, 34, 0, 1), (3734, 34, 0, 1), (3735, 34, 0, 1), (3736, 34, 0, 1), (2294, 35, 0, 1), (2285, 35, 0, 1), (2450, 35, 0, 1), (3742, 35, 0, 1), (3743, 35, 0, 1), (2202, 35, 0, 1), (1014, 35, 0, 1), (2488, 35, 0, 1), (318, 35, 0, 1), (2489, 35, 0, 1), (1281, 35, 0, 1), (2200, 35, 0, 1), (251, 35, 0, 1), (1573, 35, 0, 1), (2490, 35, 0, 1), (38, 35, 0, 1), (2185, 35, 0, 1), (2491, 35, 0, 1), (2183, 35, 0, 1), (92, 35, 0, 1), (495, 35, 0, 1), (2492, 35, 0, 1), (578, 35, 0, 1), (180, 35, 0, 1), (2186, 35, 0, 1), (1098, 35, 0, 1), (43, 35, 0, 1), (357, 35, 0, 1), (1157, 35, 0, 1), (1797, 35, 0, 1), (1665, 35, 0, 1), (2493, 35, 0, 1), (696, 35, 0, 1), (2301, 35, 0, 1), (117, 35, 0, 1), (567, 35, 0, 1), (2494, 35, 0, 1), (105, 35, 0, 1), (668, 35, 0, 1), (2495, 35, 0, 1), (269, 35, 0, 1), (2496, 35, 0, 1), (2497, 35, 0, 1), (250, 35, 0, 1), (2498, 35, 0, 1), (2499, 35, 0, 1), (120, 35, 0, 1), (2500, 35, 0, 1), (2356, 35, 0, 1), (267, 35, 0, 1), (7, 35, 0, 1), (2501, 35, 0, 1), (2247, 35, 0, 1), (844, 35, 0, 1), (862, 35, 0, 1), (189, 35, 0, 1), (71, 35, 0, 1), (1473, 35, 0, 1), (2168, 35, 0, 1), (938, 35, 0, 1), (2502, 35, 0, 1), (2503, 35, 0, 1), (2504, 35, 0, 1), (2505, 35, 0, 1), (171, 35, 0, 1), (2506, 35, 0, 1), (27, 35, 0, 1), (2507, 35, 0, 1), (2312, 35, 0, 1), (2508, 35, 0, 1), (2509, 35, 0, 1), (118, 35, 0, 1), (115, 35, 0, 1), (2510, 35, 0, 1), (17, 35, 0, 1), (494, 35, 0, 1), (2463, 35, 0, 1), (2511, 35, 0, 1), (19, 35, 0, 1), (169, 35, 0, 1), (2512, 35, 0, 1), (2513, 35, 0, 1), (584, 35, 0, 1), (2349, 35, 0, 1), (2514, 35, 0, 1), (1943, 35, 0, 1), (2515, 35, 0, 1), (2516, 35, 0, 1), (1036, 35, 0, 1), (2517, 35, 0, 1), (678, 35, 0, 1), (980, 35, 0, 1), (2518, 35, 0, 1), (2519, 35, 0, 1), (2520, 35, 0, 1), (1973, 35, 0, 1), (2521, 35, 0, 1), (37, 35, 0, 1), (2522, 35, 0, 1), (90, 35, 0, 1), (2523, 35, 0, 1), (2524, 35, 0, 1), (2525, 35, 0, 1), (2526, 35, 0, 1), (2527, 35, 0, 1), (2528, 35, 0, 1), (214, 35, 0, 1), (283, 35, 0, 1), (371, 35, 0, 1), (452, 35, 0, 1), (2204, 35, 0, 1), (2529, 35, 0, 1), (2407, 35, 0, 1), (636, 35, 0, 1), (222, 35, 0, 1), (2530, 35, 0, 1), (2531, 35, 0, 1), (2532, 35, 0, 1), (852, 35, 0, 1), (607, 35, 0, 1), (2533, 35, 0, 1), (2446, 35, 0, 1), (453, 35, 0, 1), (2534, 35, 0, 1), (160, 35, 0, 1), (2535, 35, 0, 1), (2351, 35, 0, 1), (706, 35, 0, 1), (2536, 35, 0, 1), (2537, 35, 0, 1), (2538, 35, 0, 1), (2539, 35, 0, 1), (2540, 35, 0, 1), (195, 35, 0, 1), (196, 35, 0, 1), (2541, 35, 0, 1), (2542, 35, 0, 1), (2543, 35, 0, 1), (1951, 35, 0, 1), (2544, 35, 0, 1), (2545, 35, 0, 1), (2546, 35, 0, 1), (2547, 35, 0, 1), (2548, 35, 0, 1), (2549, 35, 0, 1), (2550, 35, 0, 1), (460, 35, 0, 1), (2551, 35, 0, 1), (2552, 35, 0, 1), (2553, 35, 0, 1), (2554, 35, 0, 1), (1067, 35, 0, 1), (2555, 35, 0, 1), (183, 35, 0, 1), (2556, 35, 0, 1), (2557, 35, 0, 1), (2558, 35, 0, 1), (30, 35, 0, 1), (2559, 35, 0, 1), (673, 35, 0, 1), (202, 35, 0, 1), (2560, 35, 0, 1), (292, 35, 0, 1), (2561, 35, 0, 1), (1256, 35, 0, 1), (2562, 35, 0, 1), (2563, 35, 0, 1), (3732, 35, 0, 1), (3733, 35, 0, 1), (3734, 35, 0, 1), (3735, 35, 0, 1), (3736, 35, 0, 1), (2294, 36, 0, 1), (2450, 36, 0, 1), (3742, 36, 0, 1), (3744, 36, 0, 1), (2186, 36, 0, 1), (663, 36, 0, 1), (609, 36, 0, 1), (70, 36, 0, 1), (2499, 36, 0, 1), (196, 36, 0, 1), (444, 36, 0, 1), (71, 36, 0, 1), (43, 36, 0, 1), (2565, 36, 0, 1), (2566, 36, 0, 1), (160, 36, 0, 1), (2567, 36, 0, 1), (1157, 36, 0, 1), (469, 36, 0, 1), (82, 36, 0, 1), (2568, 36, 0, 1), (2334, 36, 0, 1), (817, 36, 0, 1), (2569, 36, 0, 1), (2570, 36, 0, 1), (235, 36, 0, 1), (21, 36, 0, 1), (2571, 36, 0, 1), (505, 36, 0, 1), (479, 36, 0, 1), (2340, 36, 0, 1), (395, 36, 0, 1), (2572, 36, 0, 1), (2573, 36, 0, 1), (696, 36, 0, 1), (642, 36, 0, 1), (2574, 36, 0, 1), (118, 36, 0, 1), (120, 36, 0, 1), (2575, 36, 0, 1), (2576, 36, 0, 1), (2577, 36, 0, 1), (225, 36, 0, 1), (2578, 36, 0, 1), (292, 36, 0, 1), (555, 36, 0, 1), (1014, 36, 0, 1), (2579, 36, 0, 1), (389, 36, 0, 1), (2580, 36, 0, 1), (28, 36, 0, 1), (2581, 36, 0, 1), (304, 36, 0, 1), (189, 36, 0, 1), (115, 36, 0, 1), (1473, 36, 0, 1), (1943, 36, 0, 1), (25, 36, 0, 1), (2582, 36, 0, 1), (2583, 36, 0, 1), (382, 36, 0, 1), (2584, 36, 0, 1), (63, 36, 0, 1), (2518, 36, 0, 1), (84, 36, 0, 1), (2585, 36, 0, 1), (676, 36, 0, 1), (2174, 36, 0, 1), (250, 36, 0, 1), (2586, 36, 0, 1), (2587, 36, 0, 1), (2588, 36, 0, 1), (2589, 36, 0, 1), (495, 36, 0, 1), (2590, 36, 0, 1), (957, 36, 0, 1), (162, 36, 0, 1), (986, 36, 0, 1), (451, 36, 0, 1), (449, 36, 0, 1), (7, 36, 0, 1), (2591, 36, 0, 1), (107, 36, 0, 1), (2592, 36, 0, 1), (2593, 36, 0, 1), (2183, 36, 0, 1), (550, 36, 0, 1), (92, 36, 0, 1), (602, 36, 0, 1), (124, 36, 0, 1), (2594, 36, 0, 1), (2595, 36, 0, 1), (852, 36, 0, 1), (607, 36, 0, 1), (357, 36, 0, 1), (2596, 36, 0, 1), (2597, 36, 0, 1), (2383, 36, 0, 1), (2598, 36, 0, 1), (2599, 36, 0, 1), (2204, 36, 0, 1), (172, 36, 0, 1), (2600, 36, 0, 1), (2601, 36, 0, 1), (2602, 36, 0, 1), (2603, 36, 0, 1), (2604, 36, 0, 1), (2605, 36, 0, 1), (2606, 36, 0, 1), (2607, 36, 0, 1), (165, 36, 0, 1), (2608, 36, 0, 1), (2609, 36, 0, 1), (776, 36, 0, 1), (2610, 36, 0, 1), (1047, 36, 0, 1), (1042, 36, 0, 1), (1615, 36, 0, 1), (2167, 36, 0, 1), (142, 36, 0, 1), (2611, 36, 0, 1), (2612, 36, 0, 1), (2613, 36, 0, 1), (2537, 36, 0, 1), (258, 36, 0, 1), (2614, 36, 0, 1), (231, 36, 0, 1), (605, 36, 0, 1), (54, 36, 0, 1), (2615, 36, 0, 1), (2616, 36, 0, 1), (180, 36, 0, 1), (438, 36, 0, 1), (951, 36, 0, 1), (2617, 36, 0, 1), (2618, 36, 0, 1), (2619, 36, 0, 1), (2620, 36, 0, 1), (2200, 36, 0, 1), (2325, 36, 0, 1), (2407, 36, 0, 1), (1630, 36, 0, 1), (2351, 36, 0, 1), (2621, 36, 0, 1), (2622, 36, 0, 1), (1087, 36, 0, 1), (2623, 36, 0, 1), (2624, 36, 0, 1), (2625, 36, 0, 1), (2626, 36, 0, 1), (1650, 36, 0, 1), (2627, 36, 0, 1), (2628, 36, 0, 1), (452, 36, 0, 1), (47, 36, 0, 1), (2629, 36, 0, 1), (2630, 36, 0, 1), (2631, 36, 0, 1), (280, 36, 0, 1), (2632, 36, 0, 1), (1312, 36, 0, 1), (385, 36, 0, 1), (2633, 36, 0, 1), (2634, 36, 0, 1), (221, 36, 0, 1), (2559, 36, 0, 1), (2635, 36, 0, 1), (657, 36, 0, 1), (2636, 36, 0, 1), (2637, 36, 0, 1), (270, 36, 0, 1), (2638, 36, 0, 1), (2142, 36, 0, 1), (2220, 36, 0, 1), (577, 36, 0, 1), (1564, 36, 0, 1), (2639, 36, 0, 1), (2640, 36, 0, 1), (2641, 36, 0, 1), (2496, 36, 0, 1), (1418, 36, 0, 1), (2642, 36, 0, 1), (2643, 36, 0, 1), (844, 36, 0, 1), (2158, 36, 0, 1), (2644, 36, 0, 1), (1449, 36, 0, 1), (147, 36, 0, 1), (2645, 36, 0, 1), (2646, 36, 0, 1), (393, 36, 0, 1), (2647, 36, 0, 1), (2648, 36, 0, 1), (2649, 36, 0, 1), (24, 36, 0, 1), (2650, 36, 0, 1), (2651, 36, 0, 1), (3732, 36, 0, 1), (3733, 36, 0, 1), (3734, 36, 0, 1), (3735, 36, 0, 1), (3736, 36, 0, 1), (2294, 37, 0, 1), (2652, 37, 0, 1), (3745, 37, 0, 1), (3746, 37, 0, 1), (2654, 37, 0, 1), (2655, 37, 0, 1), (2619, 37, 0, 1), (2656, 37, 0, 1), (590, 37, 0, 1), (43, 37, 0, 1), (633, 37, 0, 1), (1244, 37, 0, 1), (71, 37, 0, 1), (2228, 37, 0, 1), (2657, 37, 0, 1), (2183, 37, 0, 1), (2658, 37, 0, 1), (250, 37, 0, 1), (495, 37, 0, 1), (2659, 37, 0, 1), (1157, 37, 0, 1), (2499, 37, 0, 1), (2660, 37, 0, 1), (2661, 37, 0, 1), (25, 37, 0, 1), (2381, 37, 0, 1), (1459, 37, 0, 1), (171, 37, 0, 1), (567, 37, 0, 1), (4, 37, 0, 1), (153, 37, 0, 1), (2662, 37, 0, 1), (312, 37, 0, 1), (2533, 37, 0, 1), (2204, 37, 0, 1), (2663, 37, 0, 1), (222, 37, 0, 1), (28, 37, 0, 1), (2664, 37, 0, 1), (1089, 37, 0, 1), (67, 37, 0, 1), (2665, 37, 0, 1), (7, 37, 0, 1), (2666, 37, 0, 1), (655, 37, 0, 1), (2667, 37, 0, 1), (92, 37, 0, 1), (602, 37, 0, 1), (63, 37, 0, 1), (2303, 37, 0, 1), (2668, 37, 0, 1), (1407, 37, 0, 1), (2508, 37, 0, 1), (124, 37, 0, 1), (2628, 37, 0, 1), (2479, 37, 0, 1), (2669, 37, 0, 1), (413, 37, 0, 1), (385, 37, 0, 1), (2670, 37, 0, 1), (2671, 37, 0, 1), (61, 37, 0, 1), (55, 37, 0, 1), (2248, 37, 0, 1), (2672, 37, 0, 1), (2351, 37, 0, 1), (2673, 37, 0, 1), (2674, 37, 0, 1), (2675, 37, 0, 1), (2676, 37, 0, 1), (2333, 37, 0, 1), (578, 37, 0, 1), (2677, 37, 0, 1), (480, 37, 0, 1), (2463, 37, 0, 1), (2678, 37, 0, 1), (423, 37, 0, 1), (1594, 37, 0, 1), (196, 37, 0, 1), (2679, 37, 0, 1), (2680, 37, 0, 1), (225, 37, 0, 1), (38, 37, 0, 1), (158, 37, 0, 1), (650, 37, 0, 1), (1637, 37, 0, 1), (1014, 37, 0, 1), (1098, 37, 0, 1), (2681, 37, 0, 1), (2682, 37, 0, 1), (2234, 37, 0, 1), (2683, 37, 0, 1), (2684, 37, 0, 1), (2185, 37, 0, 1), (607, 37, 0, 1), (161, 37, 0, 1), (2685, 37, 0, 1), (1087, 37, 0, 1), (1606, 37, 0, 1), (3732, 37, 0, 1), (3733, 37, 0, 1), (3734, 37, 0, 1), (3735, 37, 0, 1), (3736, 37, 0, 1), (2294, 38, 0, 1), (2457, 38, 0, 1), (160, 38, 0, 1), (3747, 38, 0, 1), (3748, 38, 0, 1), (117, 38, 0, 1), (2687, 38, 0, 1), (451, 38, 0, 1), (2688, 38, 0, 1), (38, 38, 0, 1), (2689, 38, 0, 1), (2690, 38, 0, 1), (7, 38, 0, 1), (449, 38, 0, 1), (2691, 38, 0, 1), (951, 38, 0, 1), (706, 38, 0, 1), (2692, 38, 0, 1), (2693, 38, 0, 1), (2694, 38, 0, 1), (180, 38, 0, 1), (385, 38, 0, 1), (2682, 38, 0, 1), (292, 38, 0, 1), (450, 38, 0, 1), (2531, 38, 0, 1), (446, 38, 0, 1), (2695, 38, 0, 1), (1014, 38, 0, 1), (118, 38, 0, 1), (195, 38, 0, 1), (177, 38, 0, 1), (2578, 38, 0, 1), (196, 38, 0, 1), (2185, 38, 0, 1), (2696, 38, 0, 1), (251, 38, 0, 1), (4, 38, 0, 1), (2513, 38, 0, 1), (2177, 38, 0, 1), (1566, 38, 0, 1), (2697, 38, 0, 1), (2698, 38, 0, 1), (2699, 38, 0, 1), (2700, 38, 0, 1), (1190, 38, 0, 1), (2701, 38, 0, 1), (2702, 38, 0, 1), (58, 38, 0, 1), (525, 38, 0, 1), (2703, 38, 0, 1), (2704, 38, 0, 1), (2705, 38, 0, 1), (1603, 38, 0, 1), (19, 38, 0, 1), (495, 38, 0, 1), (2706, 38, 0, 1), (54, 38, 0, 1), (1000, 38, 0, 1), (2707, 38, 0, 1), (2708, 38, 0, 1), (25, 38, 0, 1), (63, 38, 0, 1), (2709, 38, 0, 1), (2710, 38, 0, 1), (2711, 38, 0, 1), (43, 38, 0, 1), (452, 38, 0, 1), (222, 38, 0, 1), (2712, 38, 0, 1), (2596, 38, 0, 1), (2713, 38, 0, 1), (2714, 38, 0, 1), (1898, 38, 0, 1), (2220, 38, 0, 1), (101, 38, 0, 1), (612, 38, 0, 1), (2572, 38, 0, 1), (2715, 38, 0, 1), (2716, 38, 0, 1), (460, 38, 0, 1), (797, 38, 0, 1), (771, 38, 0, 1), (2717, 38, 0, 1), (2718, 38, 0, 1), (2719, 38, 0, 1), (2720, 38, 0, 1), (1821, 38, 0, 1), (801, 38, 0, 1), (30, 38, 0, 1), (253, 38, 0, 1), (2721, 38, 0, 1), (2722, 38, 0, 1), (2586, 38, 0, 1), (219, 38, 0, 1), (2723, 38, 0, 1), (1042, 38, 0, 1), (2724, 38, 0, 1), (2725, 38, 0, 1), (2726, 38, 0, 1), (1063, 38, 0, 1), (1999, 38, 0, 1), (1244, 38, 0, 1), (357, 38, 0, 1), (2727, 38, 0, 1), (2728, 38, 0, 1), (2729, 38, 0, 1), (2234, 38, 0, 1), (2730, 38, 0, 1), (2731, 38, 0, 1), (330, 38, 0, 1), (2732, 38, 0, 1), (2305, 38, 0, 1), (136, 38, 0, 1), (2733, 38, 0, 1), (1857, 38, 0, 1), (1266, 38, 0, 1), (2734, 38, 0, 1), (2735, 38, 0, 1), (2736, 38, 0, 1), (1429, 38, 0, 1), (2537, 38, 0, 1), (2737, 38, 0, 1), (2204, 38, 0, 1), (192, 38, 0, 1), (142, 38, 0, 1), (2738, 38, 0, 1), (2538, 38, 0, 1), (2739, 38, 0, 1), (1035, 38, 0, 1), (2740, 38, 0, 1), (2628, 38, 0, 1), (2741, 38, 0, 1), (1021, 38, 0, 1), (676, 38, 0, 1), (2742, 38, 0, 1), (3732, 38, 0, 1), (3733, 38, 0, 1), (3734, 38, 0, 1), (3735, 38, 0, 1), (3736, 38, 0, 1), (2294, 39, 0, 1), (2743, 39, 0, 1), (3749, 39, 0, 1), (3750, 39, 0, 1), (1817, 39, 0, 1), (2516, 39, 0, 1), (43, 39, 0, 1), (222, 39, 0, 1), (2745, 39, 0, 1), (2746, 39, 0, 1), (312, 39, 0, 1), (2747, 39, 0, 1), (92, 39, 0, 1), (357, 39, 0, 1), (2361, 39, 0, 1), (2351, 39, 0, 1), (2748, 39, 0, 1), (2749, 39, 0, 1), (2750, 39, 0, 1), (1341, 39, 0, 1), (2751, 39, 0, 1), (1195, 39, 0, 1), (2752, 39, 0, 1), (118, 39, 0, 1), (47, 39, 0, 1), (2753, 39, 0, 1), (2754, 39, 0, 1), (2755, 39, 0, 1), (2756, 39, 0, 1), (2757, 39, 0, 1), (2758, 39, 0, 1), (2759, 39, 0, 1), (221, 39, 0, 1), (565, 39, 0, 1), (2760, 39, 0, 1), (511, 39, 0, 1), (2761, 39, 0, 1), (2762, 39, 0, 1), (2763, 39, 0, 1), (2649, 39, 0, 1), (90, 39, 0, 1), (2764, 39, 0, 1), (195, 39, 0, 1), (1256, 39, 0, 1), (1014, 39, 0, 1), (2765, 39, 0, 1), (2766, 39, 0, 1), (2767, 39, 0, 1), (2768, 39, 0, 1), (2769, 39, 0, 1), (1452, 39, 0, 1), (466, 39, 0, 1), (2770, 39, 0, 1), (166, 39, 0, 1), (2158, 39, 0, 1), (2771, 39, 0, 1), (2772, 39, 0, 1), (2773, 39, 0, 1), (2774, 39, 0, 1), (2167, 39, 0, 1), (2775, 39, 0, 1), (2185, 39, 0, 1), (2460, 39, 0, 1), (2776, 39, 0, 1), (2777, 39, 0, 1), (251, 39, 0, 1), (160, 39, 0, 1), (2778, 39, 0, 1), (1466, 39, 0, 1), (2779, 39, 0, 1), (2780, 39, 0, 1), (2781, 39, 0, 1), (2782, 39, 0, 1), (2783, 39, 0, 1), (2335, 39, 0, 1), (2381, 39, 0, 1), (2784, 39, 0, 1), (178, 39, 0, 1), (2785, 39, 0, 1), (2786, 39, 0, 1), (2787, 39, 0, 1), (7, 39, 0, 1), (2788, 39, 0, 1), (2789, 39, 0, 1), (2790, 39, 0, 1), (1148, 39, 0, 1), (1244, 39, 0, 1), (2202, 39, 0, 1), (1098, 39, 0, 1), (1874, 39, 0, 1), (2791, 39, 0, 1), (2792, 39, 0, 1), (2793, 39, 0, 1), (2794, 39, 0, 1), (225, 39, 0, 1), (2795, 39, 0, 1), (786, 39, 0, 1), (2796, 39, 0, 1), (2463, 39, 0, 1), (398, 39, 0, 1), (2797, 39, 0, 1), (909, 39, 0, 1), (53, 39, 0, 1), (696, 39, 0, 1), (449, 39, 0, 1), (2798, 39, 0, 1), (37, 39, 0, 1), (570, 39, 0, 1), (2799, 39, 0, 1), (2800, 39, 0, 1), (292, 39, 0, 1), (192, 39, 0, 1), (676, 39, 0, 1), (2801, 39, 0, 1), (2617, 39, 0, 1), (1005, 39, 0, 1), (255, 39, 0, 1), (39, 39, 0, 1), (194, 39, 0, 1), (2802, 39, 0, 1), (40, 39, 0, 1), (2803, 39, 0, 1), (1194, 39, 0, 1), (145, 39, 0, 1), (2804, 39, 0, 1), (71, 39, 0, 1), (158, 39, 0, 1), (633, 39, 0, 1), (318, 39, 0, 1), (2437, 39, 0, 1), (2805, 39, 0, 1), (1107, 39, 0, 1), (2677, 39, 0, 1), (2239, 39, 0, 1), (128, 39, 0, 1), (172, 39, 0, 1), (2806, 39, 0, 1), (2566, 39, 0, 1), (646, 39, 0, 1), (2807, 39, 0, 1), (2808, 39, 0, 1), (452, 39, 0, 1), (2809, 39, 0, 1), (2715, 39, 0, 1), (2499, 39, 0, 1), (196, 39, 0, 1), (2621, 39, 0, 1), (2412, 39, 0, 1), (2476, 39, 0, 1), (2810, 39, 0, 1), (1594, 39, 0, 1), (2811, 39, 0, 1), (2812, 39, 0, 1), (67, 39, 0, 1), (120, 39, 0, 1), (583, 39, 0, 1), (1501, 39, 0, 1), (2813, 39, 0, 1), (124, 39, 0, 1), (2814, 39, 0, 1), (1449, 39, 0, 1), (2815, 39, 0, 1), (766, 39, 0, 1), (245, 39, 0, 1), (2816, 39, 0, 1), (2817, 39, 0, 1), (586, 39, 0, 1), (495, 39, 0, 1), (2321, 39, 0, 1), (72, 39, 0, 1), (545, 39, 0, 1), (2818, 39, 0, 1), (2819, 39, 0, 1), (2820, 39, 0, 1), (2821, 39, 0, 1), (2822, 39, 0, 1), (2575, 39, 0, 1), (119, 39, 0, 1), (2823, 39, 0, 1), (479, 39, 0, 1), (2824, 39, 0, 1), (2825, 39, 0, 1), (513, 39, 0, 1), (142, 39, 0, 1), (1266, 39, 0, 1), (2608, 39, 0, 1), (2826, 39, 0, 1), (3732, 39, 0, 1), (3733, 39, 0, 1), (3734, 39, 0, 1), (3735, 39, 0, 1), (3736, 39, 0, 1), (2294, 40, 0, 1), (2457, 40, 0, 1), (160, 40, 0, 1), (2827, 40, 0, 1), (3751, 40, 0, 1), (3752, 40, 0, 1), (2829, 40, 0, 1), (2830, 40, 0, 1), (2628, 40, 0, 1), (620, 40, 0, 1), (2831, 40, 0, 1), (2802, 40, 0, 1), (1085, 40, 0, 1), (43, 40, 0, 1), (2443, 40, 0, 1), (2832, 40, 0, 1), (118, 40, 0, 1), (1548, 40, 0, 1), (222, 40, 0, 1), (2833, 40, 0, 1), (2834, 40, 0, 1), (2161, 40, 0, 1), (37, 40, 0, 1), (28, 40, 0, 1), (2835, 40, 0, 1), (660, 40, 0, 1), (2836, 40, 0, 1), (2837, 40, 0, 1), (92, 40, 0, 1), (2559, 40, 0, 1), (2838, 40, 0, 1), (2839, 40, 0, 1), (318, 40, 0, 1), (2840, 40, 0, 1), (2841, 40, 0, 1), (2842, 40, 0, 1), (566, 40, 0, 1), (202, 40, 0, 1), (482, 40, 0, 1), (2462, 40, 0, 1), (63, 40, 0, 1), (82, 40, 0, 1), (2364, 40, 0, 1), (2843, 40, 0, 1), (2844, 40, 0, 1), (1296, 40, 0, 1), (2845, 40, 0, 1), (54, 40, 0, 1), (985, 40, 0, 1), (2846, 40, 0, 1), (2847, 40, 0, 1), (2168, 40, 0, 1), (337, 40, 0, 1), (2848, 40, 0, 1), (1000, 40, 0, 1), (1916, 40, 0, 1), (142, 40, 0, 1), (2849, 40, 0, 1), (396, 40, 0, 1), (2850, 40, 0, 1), (2851, 40, 0, 1), (2852, 40, 0, 1), (58, 40, 0, 1), (1735, 40, 0, 1), (2853, 40, 0, 1), (188, 40, 0, 1), (2854, 40, 0, 1), (676, 40, 0, 1), (2855, 40, 0, 1), (2543, 40, 0, 1), (2856, 40, 0, 1), (2857, 40, 0, 1), (2404, 40, 0, 1), (311, 40, 0, 1), (2858, 40, 0, 1), (2859, 40, 0, 1), (2254, 40, 0, 1), (1014, 40, 0, 1), (468, 40, 0, 1), (357, 40, 0, 1), (2860, 40, 0, 1), (2861, 40, 0, 1), (2649, 40, 0, 1), (2445, 40, 0, 1), (2862, 40, 0, 1), (2863, 40, 0, 1), (7, 40, 0, 1), (1244, 40, 0, 1), (290, 40, 0, 1), (2864, 40, 0, 1), (30, 40, 0, 1), (1312, 40, 0, 1), (2865, 40, 0, 1), (197, 40, 0, 1), (488, 40, 0, 1), (2733, 40, 0, 1), (2720, 40, 0, 1), (2866, 40, 0, 1), (633, 40, 0, 1), (71, 40, 0, 1), (578, 40, 0, 1), (67, 40, 0, 1), (2867, 40, 0, 1), (2868, 40, 0, 1), (195, 40, 0, 1), (888, 40, 0, 1), (385, 40, 0, 1), (225, 40, 0, 1), (2869, 40, 0, 1), (1662, 40, 0, 1), (1481, 40, 0, 1), (2870, 40, 0, 1), (2721, 40, 0, 1), (2871, 40, 0, 1), (1077, 40, 0, 1), (2872, 40, 0, 1), (673, 40, 0, 1), (292, 40, 0, 1), (2577, 40, 0, 1), (2873, 40, 0, 1), (322, 40, 0, 1), (2874, 40, 0, 1), (2875, 40, 0, 1), (138, 40, 0, 1), (844, 40, 0, 1), (2876, 40, 0, 1), (2877, 40, 0, 1), (1544, 40, 0, 1), (2878, 40, 0, 1), (479, 40, 0, 1), (2879, 40, 0, 1), (2880, 40, 0, 1), (2759, 40, 0, 1), (2766, 40, 0, 1), (153, 40, 0, 1), (2881, 40, 0, 1), (2326, 40, 0, 1), (2882, 40, 0, 1), (1571, 40, 0, 1), (250, 40, 0, 1), (2587, 40, 0, 1), (2883, 40, 0, 1), (1140, 40, 0, 1), (205, 40, 0, 1), (2884, 40, 0, 1), (2885, 40, 0, 1), (2886, 40, 0, 1), (2887, 40, 0, 1), (177, 40, 0, 1), (2682, 40, 0, 1), (2779, 40, 0, 1), (2888, 40, 0, 1), (2889, 40, 0, 1), (1261, 40, 0, 1), (2890, 40, 0, 1), (2891, 40, 0, 1), (1025, 40, 0, 1), (2892, 40, 0, 1), (2893, 40, 0, 1), (2894, 40, 0, 1), (2895, 40, 0, 1), (2259, 40, 0, 1), (2896, 40, 0, 1), (2131, 40, 0, 1), (451, 40, 0, 1), (2897, 40, 0, 1), (2898, 40, 0, 1), (2899, 40, 0, 1), (577, 40, 0, 1), (1047, 40, 0, 1), (623, 40, 0, 1), (2900, 40, 0, 1), (567, 40, 0, 1), (196, 40, 0, 1), (2901, 40, 0, 1), (2902, 40, 0, 1), (126, 40, 0, 1), (312, 40, 0, 1), (158, 40, 0, 1), (171, 40, 0, 1), (150, 40, 0, 1), (2903, 40, 0, 1), (2904, 40, 0, 1), (2586, 40, 0, 1), (216, 40, 0, 1), (2905, 40, 0, 1), (2906, 40, 0, 1), (2907, 40, 0, 1), (178, 40, 0, 1), (291, 40, 0, 1), (2908, 40, 0, 1), (2909, 40, 0, 1), (2910, 40, 0, 1), (2911, 40, 0, 1), (2340, 40, 0, 1), (2912, 40, 0, 1), (2351, 40, 0, 1), (2310, 40, 0, 1), (2538, 40, 0, 1), (90, 40, 0, 1), (2913, 40, 0, 1), (862, 40, 0, 1), (852, 40, 0, 1), (2914, 40, 0, 1), (320, 40, 0, 1), (2309, 40, 0, 1), (2269, 40, 0, 1), (836, 40, 0, 1), (221, 40, 0, 1), (2915, 40, 0, 1), (251, 40, 0, 1), (189, 40, 0, 1), (2916, 40, 0, 1), (444, 40, 0, 1), (114, 40, 0, 1), (2917, 40, 0, 1), (2918, 40, 0, 1), (751, 40, 0, 1), (2919, 40, 0, 1), (2186, 40, 0, 1), (42, 40, 0, 1), (219, 40, 0, 1), (2920, 40, 0, 1), (2474, 40, 0, 1), (2921, 40, 0, 1), (1552, 40, 0, 1), (2922, 40, 0, 1), (2923, 40, 0, 1), (2924, 40, 0, 1), (1655, 40, 0, 1), (2925, 40, 0, 1), (2926, 40, 0, 1), (1626, 40, 0, 1), (2927, 40, 0, 1), (2928, 40, 0, 1), (2929, 40, 0, 1), (2930, 40, 0, 1), (1082, 40, 0, 1), (2185, 40, 0, 1), (2931, 40, 0, 1), (2932, 40, 0, 1), (2933, 40, 0, 1), (454, 40, 0, 1), (2934, 40, 0, 1), (93, 40, 0, 1), (2935, 40, 0, 1), (2936, 40, 0, 1), (254, 40, 0, 1), (1603, 40, 0, 1), (389, 40, 0, 1), (2937, 40, 0, 1), (2938, 40, 0, 1), (2265, 40, 0, 1), (788, 40, 0, 1), (2939, 40, 0, 1), (2940, 40, 0, 1), (2288, 40, 0, 1), (44, 40, 0, 1), (2941, 40, 0, 1), (2942, 40, 0, 1), (2943, 40, 0, 1), (1037, 40, 0, 1), (2944, 40, 0, 1), (1599, 40, 0, 1), (78, 40, 0, 1), (2945, 40, 0, 1), (1874, 40, 0, 1), (8, 40, 0, 1), (2946, 40, 0, 1), (2285, 40, 0, 1), (2947, 40, 0, 1), (3732, 40, 0, 1), (3733, 40, 0, 1), (3734, 40, 0, 1), (3735, 40, 0, 1), (3736, 40, 0, 1), (2294, 41, 0, 1), (2160, 41, 0, 1), (1449, 41, 0, 1), (3753, 41, 0, 1), (3754, 41, 0, 1), (2186, 41, 0, 1), (2949, 41, 0, 1), (2770, 41, 0, 1), (2950, 41, 0, 1), (938, 41, 0, 1), (2951, 41, 0, 1), (695, 41, 0, 1), (2952, 41, 0, 1), (2953, 41, 0, 1), (67, 41, 0, 1), (2954, 41, 0, 1), (2955, 41, 0, 1), (660, 41, 0, 1), (43, 41, 0, 1), (1153, 41, 0, 1), (2956, 41, 0, 1), (2957, 41, 0, 1), (1566, 41, 0, 1), (2958, 41, 0, 1), (120, 41, 0, 1), (2649, 41, 0, 1), (2559, 41, 0, 1), (160, 41, 0, 1), (577, 41, 0, 1), (673, 41, 0, 1), (221, 41, 0, 1), (93, 41, 0, 1), (505, 41, 0, 1), (269, 41, 0, 1), (2959, 41, 0, 1), (2960, 41, 0, 1), (2961, 41, 0, 1), (2962, 41, 0, 1), (30, 41, 0, 1), (2183, 41, 0, 1), (473, 41, 0, 1), (2963, 41, 0, 1), (444, 41, 0, 1), (2964, 41, 0, 1), (1851, 41, 0, 1), (663, 41, 0, 1), (2965, 41, 0, 1), (1332, 41, 0, 1), (180, 41, 0, 1), (773, 41, 0, 1), (1118, 41, 0, 1), (2966, 41, 0, 1), (2529, 41, 0, 1), (1048, 41, 0, 1), (2967, 41, 0, 1), (2968, 41, 0, 1), (2158, 41, 0, 1), (2969, 41, 0, 1), (2970, 41, 0, 1), (920, 41, 0, 1), (2971, 41, 0, 1), (2733, 41, 0, 1), (25, 41, 0, 1), (2972, 41, 0, 1), (1420, 41, 0, 1), (2561, 41, 0, 1), (1462, 41, 0, 1), (2973, 41, 0, 1), (2974, 41, 0, 1), (2975, 41, 0, 1), (2976, 41, 0, 1), (1154, 41, 0, 1), (1279, 41, 0, 1), (2977, 41, 0, 1), (357, 41, 0, 1), (2978, 41, 0, 1), (1158, 41, 0, 1), (2220, 41, 0, 1), (553, 41, 0, 1), (2979, 41, 0, 1), (2980, 41, 0, 1), (222, 41, 0, 1), (240, 41, 0, 1), (2981, 41, 0, 1), (90, 41, 0, 1), (1087, 41, 0, 1), (2982, 41, 0, 1), (3732, 41, 0, 1), (3733, 41, 0, 1), (3734, 41, 0, 1), (3735, 41, 0, 1), (3736, 41, 0, 1), (2294, 42, 0, 1), (2983, 42, 0, 1), (3755, 42, 0, 1), (3752, 42, 0, 1), (1247, 42, 0, 1), (1418, 42, 0, 1), (2986, 42, 0, 1), (377, 42, 0, 1), (2987, 42, 0, 1), (2988, 42, 0, 1), (43, 42, 0, 1), (2514, 42, 0, 1), (2975, 42, 0, 1), (2989, 42, 0, 1), (2990, 42, 0, 1), (636, 42, 0, 1), (222, 42, 0, 1), (2991, 42, 0, 1), (2992, 42, 0, 1), (599, 42, 0, 1), (1893, 42, 0, 1), (2993, 42, 0, 1), (2994, 42, 0, 1), (2995, 42, 0, 1), (375, 42, 0, 1), (2996, 42, 0, 1), (2997, 42, 0, 1), (2998, 42, 0, 1), (2999, 42, 0, 1), (116, 42, 0, 1), (3000, 42, 0, 1), (3001, 42, 0, 1), (3002, 42, 0, 1), (797, 42, 0, 1), (2280, 42, 0, 1), (3003, 42, 0, 1), (3004, 42, 0, 1), (3005, 42, 0, 1), (3006, 42, 0, 1), (773, 42, 0, 1), (144, 42, 0, 1), (3007, 42, 0, 1), (2533, 42, 0, 1), (90, 42, 0, 1), (3008, 42, 0, 1), (253, 42, 0, 1), (3009, 42, 0, 1), (3010, 42, 0, 1), (3011, 42, 0, 1), (3012, 42, 0, 1), (115, 42, 0, 1), (1021, 42, 0, 1), (2179, 42, 0, 1), (3013, 42, 0, 1), (3014, 42, 0, 1), (3015, 42, 0, 1), (482, 42, 0, 1), (44, 42, 0, 1), (120, 42, 0, 1), (1261, 42, 0, 1), (3016, 42, 0, 1), (2198, 42, 0, 1), (193, 42, 0, 1), (385, 42, 0, 1), (3017, 42, 0, 1), (3018, 42, 0, 1), (1048, 42, 0, 1), (30, 42, 0, 1), (3019, 42, 0, 1), (1603, 42, 0, 1), (466, 42, 0, 1), (92, 42, 0, 1), (3020, 42, 0, 1), (3021, 42, 0, 1), (225, 42, 0, 1), (2265, 42, 0, 1), (2984, 42, 0, 1), (357, 42, 0, 1), (3022, 42, 0, 1), (3023, 42, 0, 1), (2792, 42, 0, 1), (1098, 42, 0, 1), (160, 42, 0, 1), (577, 42, 0, 1), (438, 42, 0, 1), (3024, 42, 0, 1), (444, 42, 0, 1), (2208, 42, 0, 1), (2209, 42, 0, 1), (3025, 42, 0, 1), (3026, 42, 0, 1), (221, 42, 0, 1), (25, 42, 0, 1), (2248, 42, 0, 1), (2185, 42, 0, 1), (2596, 42, 0, 1), (453, 42, 0, 1), (2557, 42, 0, 1), (2450, 42, 0, 1), (1014, 42, 0, 1), (82, 42, 0, 1), (567, 42, 0, 1), (2843, 42, 0, 1), (3027, 42, 0, 1), (80, 42, 0, 1), (625, 42, 0, 1), (3028, 42, 0, 1), (1000, 42, 0, 1), (2253, 42, 0, 1), (3029, 42, 0, 1), (2448, 42, 0, 1), (3030, 42, 0, 1), (21, 42, 0, 1), (119, 42, 0, 1), (3031, 42, 0, 1), (2413, 42, 0, 1), (3032, 42, 0, 1), (2174, 42, 0, 1), (7, 42, 0, 1), (3033, 42, 0, 1), (3034, 42, 0, 1), (1449, 42, 0, 1), (3035, 42, 0, 1), (2949, 42, 0, 1), (2301, 42, 0, 1), (3036, 42, 0, 1), (523, 42, 0, 1), (3037, 42, 0, 1), (3038, 42, 0, 1), (3039, 42, 0, 1), (292, 42, 0, 1), (2683, 42, 0, 1), (2183, 42, 0, 1), (3040, 42, 0, 1), (2267, 42, 0, 1), (3041, 42, 0, 1), (107, 42, 0, 1), (3042, 42, 0, 1), (1154, 42, 0, 1), (2638, 42, 0, 1), (1688, 42, 0, 1), (28, 42, 0, 1), (2649, 42, 0, 1), (3043, 42, 0, 1), (3044, 42, 0, 1), (3045, 42, 0, 1), (118, 42, 0, 1), (568, 42, 0, 1), (3046, 42, 0, 1), (124, 42, 0, 1), (54, 42, 0, 1), (246, 42, 0, 1), (3047, 42, 0, 1), (935, 42, 0, 1), (672, 42, 0, 1), (324, 42, 0, 1), (2284, 42, 0, 1), (446, 42, 0, 1), (676, 42, 0, 1), (3048, 42, 0, 1), (488, 42, 0, 1), (136, 42, 0, 1), (1155, 42, 0, 1), (2716, 42, 0, 1), (3049, 42, 0, 1), (3050, 42, 0, 1), (1462, 42, 0, 1), (2417, 42, 0, 1), (69, 42, 0, 1), (2344, 42, 0, 1), (3732, 42, 0, 1), (3733, 42, 0, 1), (3734, 42, 0, 1), (3735, 42, 0, 1), (3736, 42, 0, 1), (3052, 43, 0, 1), (3051, 43, 0, 1), (3756, 43, 0, 1), (3754, 43, 0, 1), (1021, 43, 0, 1), (2186, 43, 0, 1), (1014, 43, 0, 1), (3054, 43, 0, 1), (2340, 43, 0, 1), (136, 43, 0, 1), (161, 43, 0, 1), (63, 43, 0, 1), (3055, 43, 0, 1), (1716, 43, 0, 1), (147, 43, 0, 1), (1414, 43, 0, 1), (2209, 43, 0, 1), (3056, 43, 0, 1), (3057, 43, 0, 1), (3058, 43, 0, 1), (3059, 43, 0, 1), (3060, 43, 0, 1), (466, 43, 0, 1), (3061, 43, 0, 1), (71, 43, 0, 1), (3062, 43, 0, 1), (3063, 43, 0, 1), (158, 43, 0, 1), (2171, 43, 0, 1), (3064, 43, 0, 1), (2765, 43, 0, 1), (3065, 43, 0, 1), (3066, 43, 0, 1), (389, 43, 0, 1), (444, 43, 0, 1), (676, 43, 0, 1), (394, 43, 0, 1), (43, 43, 0, 1), (3067, 43, 0, 1), (817, 43, 0, 1), (3068, 43, 0, 1), (3069, 43, 0, 1), (3070, 43, 0, 1), (3071, 43, 0, 1), (1244, 43, 0, 1), (92, 43, 0, 1), (633, 43, 0, 1), (3072, 43, 0, 1), (118, 43, 0, 1), (1163, 43, 0, 1), (309, 43, 0, 1), (7, 43, 0, 1), (3073, 43, 0, 1), (2318, 43, 0, 1), (3074, 43, 0, 1), (120, 43, 0, 1), (3075, 43, 0, 1), (3076, 43, 0, 1), (696, 43, 0, 1), (171, 43, 0, 1), (3077, 43, 0, 1), (3078, 43, 0, 1), (3079, 43, 0, 1), (2882, 43, 0, 1), (221, 43, 0, 1), (1530, 43, 0, 1), (3034, 43, 0, 1), (25, 43, 0, 1), (3080, 43, 0, 1), (3081, 43, 0, 1), (90, 43, 0, 1), (3082, 43, 0, 1), (3083, 43, 0, 1), (773, 43, 0, 1), (357, 43, 0, 1), (3084, 43, 0, 1), (3085, 43, 0, 1), (2174, 43, 0, 1), (3086, 43, 0, 1), (3087, 43, 0, 1), (1168, 43, 0, 1), (2168, 43, 0, 1), (2285, 43, 0, 1), (8, 43, 0, 1), (3088, 43, 0, 1), (3089, 43, 0, 1), (505, 43, 0, 1), (2651, 43, 0, 1), (2892, 43, 0, 1), (3090, 43, 0, 1), (282, 43, 0, 1), (3091, 43, 0, 1), (3092, 43, 0, 1), (3093, 43, 0, 1), (30, 43, 0, 1), (114, 43, 0, 1), (1010, 43, 0, 1), (1091, 43, 0, 1), (2762, 43, 0, 1), (582, 43, 0, 1), (482, 43, 0, 1), (3094, 43, 0, 1), (2183, 43, 0, 1), (2646, 43, 0, 1), (3095, 43, 0, 1), (42, 43, 0, 1), (3096, 43, 0, 1), (3097, 43, 0, 1), (3098, 43, 0, 1), (1118, 43, 0, 1), (3099, 43, 0, 1), (553, 43, 0, 1), (3732, 43, 0, 1), (3733, 43, 0, 1), (3734, 43, 0, 1), (3735, 43, 0, 1), (3736, 43, 0, 1), (2294, 44, 0, 1), (1168, 44, 0, 1), (402, 44, 0, 1), (3757, 44, 0, 1), (3758, 44, 0, 1), (2529, 44, 0, 1), (2301, 44, 0, 1), (147, 44, 0, 1), (3101, 44, 0, 1), (852, 44, 0, 1), (844, 44, 0, 1), (393, 44, 0, 1), (3102, 44, 0, 1), (71, 44, 0, 1), (92, 44, 0, 1), (633, 44, 0, 1), (495, 44, 0, 1), (1688, 44, 0, 1), (309, 44, 0, 1), (3103, 44, 0, 1), (425, 44, 0, 1), (1312, 44, 0, 1), (2204, 44, 0, 1), (115, 44, 0, 1), (3104, 44, 0, 1), (2318, 44, 0, 1), (3105, 44, 0, 1), (3106, 44, 0, 1), (3107, 44, 0, 1), (3108, 44, 0, 1), (3109, 44, 0, 1), (3110, 44, 0, 1), (3111, 44, 0, 1), (3112, 44, 0, 1), (3113, 44, 0, 1), (3114, 44, 0, 1), (3115, 44, 0, 1), (154, 44, 0, 1), (222, 44, 0, 1), (448, 44, 0, 1), (3116, 44, 0, 1), (136, 44, 0, 1), (269, 44, 0, 1), (2586, 44, 0, 1), (3117, 44, 0, 1), (2882, 44, 0, 1), (1385, 44, 0, 1), (3118, 44, 0, 1), (7, 44, 0, 1), (2431, 44, 0, 1), (2462, 44, 0, 1), (707, 44, 0, 1), (1288, 44, 0, 1), (385, 44, 0, 1), (3119, 44, 0, 1), (676, 44, 0, 1), (19, 44, 0, 1), (1782, 44, 0, 1), (3120, 44, 0, 1), (292, 44, 0, 1), (1987, 44, 0, 1), (3097, 44, 0, 1), (43, 44, 0, 1), (606, 44, 0, 1), (324, 44, 0, 1), (642, 44, 0, 1), (2183, 44, 0, 1), (1203, 44, 0, 1), (3121, 44, 0, 1), (3122, 44, 0, 1), (578, 44, 0, 1), (3123, 44, 0, 1), (198, 44, 0, 1), (3124, 44, 0, 1), (454, 44, 0, 1), (3125, 44, 0, 1), (195, 44, 0, 1), (196, 44, 0, 1), (3126, 44, 0, 1), (2390, 44, 0, 1), (1037, 44, 0, 1), (39, 44, 0, 1), (3127, 44, 0, 1), (1429, 44, 0, 1), (2209, 44, 0, 1), (2792, 44, 0, 1), (1414, 44, 0, 1), (3128, 44, 0, 1), (180, 44, 0, 1), (1747, 44, 0, 1), (3129, 44, 0, 1), (2660, 44, 0, 1), (124, 44, 0, 1), (3130, 44, 0, 1), (3131, 44, 0, 1), (229, 44, 0, 1), (3132, 44, 0, 1), (103, 44, 0, 1), (2646, 44, 0, 1), (2194, 44, 0, 1), (3133, 44, 0, 1), (219, 44, 0, 1), (10, 44, 0, 1), (627, 44, 0, 1), (3032, 44, 0, 1), (2269, 44, 0, 1), (3134, 44, 0, 1), (3082, 44, 0, 1), (3135, 44, 0, 1), (3136, 44, 0, 1), (3137, 44, 0, 1), (3138, 44, 0, 1), (3139, 44, 0, 1), (3140, 44, 0, 1), (3141, 44, 0, 1), (3142, 44, 0, 1), (3143, 44, 0, 1), (3144, 44, 0, 1), (3063, 44, 0, 1), (3145, 44, 0, 1), (1044, 44, 0, 1), (1021, 44, 0, 1), (216, 44, 0, 1), (673, 44, 0, 1), (3146, 44, 0, 1), (3147, 44, 0, 1), (505, 44, 0, 1), (63, 44, 0, 1), (2898, 44, 0, 1), (682, 44, 0, 1), (3148, 44, 0, 1), (3149, 44, 0, 1), (3150, 44, 0, 1), (144, 44, 0, 1), (607, 44, 0, 1), (197, 44, 0, 1), (258, 44, 0, 1), (482, 44, 0, 1), (453, 44, 0, 1), (3151, 44, 0, 1), (986, 44, 0, 1), (1244, 44, 0, 1), (3152, 44, 0, 1), (498, 44, 0, 1), (3153, 44, 0, 1), (3154, 44, 0, 1), (3155, 44, 0, 1), (2220, 44, 0, 1), (2230, 44, 0, 1), (3156, 44, 0, 1), (3157, 44, 0, 1), (2762, 44, 0, 1), (1042, 44, 0, 1), (3158, 44, 0, 1), (3159, 44, 0, 1), (3160, 44, 0, 1), (3161, 44, 0, 1), (3162, 44, 0, 1), (162, 44, 0, 1), (3163, 44, 0, 1), (3164, 44, 0, 1), (2918, 44, 0, 1), (1821, 44, 0, 1), (3165, 44, 0, 1), (416, 44, 0, 1), (3166, 44, 0, 1), (2553, 44, 0, 1), (778, 44, 0, 1), (3167, 44, 0, 1), (3168, 44, 0, 1), (137, 44, 0, 1), (2913, 44, 0, 1), (3169, 44, 0, 1), (160, 44, 0, 1), (584, 44, 0, 1), (357, 44, 0, 1); INSERT INTO `search_keywords` VALUES (3170, 44, 0, 1), (3171, 44, 0, 1), (3172, 44, 0, 1), (3173, 44, 0, 1), (3174, 44, 0, 1), (3175, 44, 0, 1), (922, 44, 0, 1), (3176, 44, 0, 1), (3177, 44, 0, 1), (3178, 44, 0, 1), (2503, 44, 0, 1), (549, 44, 0, 1), (2364, 44, 0, 1), (3179, 44, 0, 1), (3180, 44, 0, 1), (3181, 44, 0, 1), (2170, 44, 0, 1), (3182, 44, 0, 1), (586, 44, 0, 1), (3183, 44, 0, 1), (3184, 44, 0, 1), (128, 44, 0, 1), (2573, 44, 0, 1), (3185, 44, 0, 1), (696, 44, 0, 1), (2335, 44, 0, 1), (3186, 44, 0, 1), (3187, 44, 0, 1), (457, 44, 0, 1), (240, 44, 0, 1), (466, 44, 0, 1), (129, 44, 0, 1), (3188, 44, 0, 1), (3189, 44, 0, 1), (2446, 44, 0, 1), (773, 44, 0, 1), (1261, 44, 0, 1), (3074, 44, 0, 1), (3190, 44, 0, 1), (3191, 44, 0, 1), (2043, 44, 0, 1), (1561, 44, 0, 1), (1143, 44, 0, 1), (2344, 44, 0, 1), (3192, 44, 0, 1), (2563, 44, 0, 1), (3193, 44, 0, 1), (3194, 44, 0, 1), (221, 44, 0, 1), (3195, 44, 0, 1), (2158, 44, 0, 1), (3196, 44, 0, 1), (67, 44, 0, 1), (3197, 44, 0, 1), (2179, 44, 0, 1), (777, 44, 0, 1), (568, 44, 0, 1), (283, 44, 0, 1), (3198, 44, 0, 1), (3199, 44, 0, 1), (1039, 44, 0, 1), (3200, 44, 0, 1), (1407, 44, 0, 1), (389, 44, 0, 1), (3201, 44, 0, 1), (3202, 44, 0, 1), (3203, 44, 0, 1), (3204, 44, 0, 1), (1473, 44, 0, 1), (3205, 44, 0, 1), (3206, 44, 0, 1), (2664, 44, 0, 1), (30, 44, 0, 1), (3207, 44, 0, 1), (3208, 44, 0, 1), (3209, 44, 0, 1), (164, 44, 0, 1), (25, 44, 0, 1), (3210, 44, 0, 1), (3211, 44, 0, 1), (3212, 44, 0, 1), (1841, 44, 0, 1), (3213, 44, 0, 1), (1548, 44, 0, 1), (3214, 44, 0, 1), (202, 44, 0, 1), (3215, 44, 0, 1), (3216, 44, 0, 1), (2802, 44, 0, 1), (3217, 44, 0, 1), (142, 44, 0, 1), (194, 44, 0, 1), (2326, 44, 0, 1), (1630, 44, 0, 1), (3218, 44, 0, 1), (3219, 44, 0, 1), (2206, 44, 0, 1), (2729, 44, 0, 1), (3220, 44, 0, 1), (577, 44, 0, 1), (2234, 44, 0, 1), (817, 44, 0, 1), (3221, 44, 0, 1), (3732, 44, 0, 1), (3733, 44, 0, 1), (3734, 44, 0, 1), (3735, 44, 0, 1), (3736, 44, 0, 1), (2294, 45, 0, 1), (1168, 45, 0, 1), (402, 45, 0, 1), (3757, 45, 0, 1), (3752, 45, 0, 1), (747, 45, 0, 1), (482, 45, 0, 1), (172, 45, 0, 1), (2269, 45, 0, 1), (3223, 45, 0, 1), (676, 45, 0, 1), (28, 45, 0, 1), (164, 45, 0, 1), (488, 45, 0, 1), (90, 45, 0, 1), (3224, 45, 0, 1), (2234, 45, 0, 1), (43, 45, 0, 1), (3225, 45, 0, 1), (457, 45, 0, 1), (3024, 45, 0, 1), (3226, 45, 0, 1), (2957, 45, 0, 1), (3227, 45, 0, 1), (2481, 45, 0, 1), (2186, 45, 0, 1), (2658, 45, 0, 1), (356, 45, 0, 1), (145, 45, 0, 1), (773, 45, 0, 1), (3228, 45, 0, 1), (3229, 45, 0, 1), (3230, 45, 0, 1), (3231, 45, 0, 1), (3232, 45, 0, 1), (1648, 45, 0, 1), (222, 45, 0, 1), (3233, 45, 0, 1), (3234, 45, 0, 1), (2587, 45, 0, 1), (3235, 45, 0, 1), (574, 45, 0, 1), (3236, 45, 0, 1), (3237, 45, 0, 1), (3238, 45, 0, 1), (3239, 45, 0, 1), (3240, 45, 0, 1), (3241, 45, 0, 1), (1938, 45, 0, 1), (105, 45, 0, 1), (935, 45, 0, 1), (2204, 45, 0, 1), (2063, 45, 0, 1), (3242, 45, 0, 1), (3243, 45, 0, 1), (2096, 45, 0, 1), (2512, 45, 0, 1), (54, 45, 0, 1), (1279, 45, 0, 1), (492, 45, 0, 1), (165, 45, 0, 1), (2826, 45, 0, 1), (2160, 45, 0, 1), (3244, 45, 0, 1), (3245, 45, 0, 1), (3246, 45, 0, 1), (3247, 45, 0, 1), (801, 45, 0, 1), (3248, 45, 0, 1), (1153, 45, 0, 1), (128, 45, 0, 1), (627, 45, 0, 1), (797, 45, 0, 1), (3249, 45, 0, 1), (3250, 45, 0, 1), (3251, 45, 0, 1), (251, 45, 0, 1), (39, 45, 0, 1), (844, 45, 0, 1), (2305, 45, 0, 1), (3252, 45, 0, 1), (2660, 45, 0, 1), (195, 45, 0, 1), (71, 45, 0, 1), (3253, 45, 0, 1), (3254, 45, 0, 1), (3255, 45, 0, 1), (3256, 45, 0, 1), (3257, 45, 0, 1), (2486, 45, 0, 1), (196, 45, 0, 1), (171, 45, 0, 1), (633, 45, 0, 1), (3258, 45, 0, 1), (642, 45, 0, 1), (3259, 45, 0, 1), (1202, 45, 0, 1), (566, 45, 0, 1), (153, 45, 0, 1), (288, 45, 0, 1), (3260, 45, 0, 1), (7, 45, 0, 1), (3261, 45, 0, 1), (3262, 45, 0, 1), (1261, 45, 0, 1), (3263, 45, 0, 1), (1000, 45, 0, 1), (3264, 45, 0, 1), (120, 45, 0, 1), (320, 45, 0, 1), (3265, 45, 0, 1), (539, 45, 0, 1), (3266, 45, 0, 1), (1075, 45, 0, 1), (2793, 45, 0, 1), (1449, 45, 0, 1), (2284, 45, 0, 1), (3267, 45, 0, 1), (9, 45, 0, 1), (58, 45, 0, 1), (2417, 45, 0, 1), (2529, 45, 0, 1), (578, 45, 0, 1), (1629, 45, 0, 1), (385, 45, 0, 1), (1355, 45, 0, 1), (3268, 45, 0, 1), (3269, 45, 0, 1), (3270, 45, 0, 1), (1429, 45, 0, 1), (24, 45, 0, 1), (393, 45, 0, 1), (2500, 45, 0, 1), (3271, 45, 0, 1), (2352, 45, 0, 1), (1014, 45, 0, 1), (3272, 45, 0, 1), (3273, 45, 0, 1), (2537, 45, 0, 1), (3088, 45, 0, 1), (2499, 45, 0, 1), (4, 45, 0, 1), (1087, 45, 0, 1), (3274, 45, 0, 1), (2373, 45, 0, 1), (3275, 45, 0, 1), (77, 45, 0, 1), (1123, 45, 0, 1), (152, 45, 0, 1), (1021, 45, 0, 1), (1260, 45, 0, 1), (495, 45, 0, 1), (3276, 45, 0, 1), (3277, 45, 0, 1), (63, 45, 0, 1), (3278, 45, 0, 1), (3279, 45, 0, 1), (551, 45, 0, 1), (1056, 45, 0, 1), (3280, 45, 0, 1), (3281, 45, 0, 1), (1801, 45, 0, 1), (3282, 45, 0, 1), (3283, 45, 0, 1), (3284, 45, 0, 1), (3285, 45, 0, 1), (357, 45, 0, 1), (3286, 45, 0, 1), (30, 45, 0, 1), (3287, 45, 0, 1), (505, 45, 0, 1), (2183, 45, 0, 1), (3288, 45, 0, 1), (3074, 45, 0, 1), (1549, 45, 0, 1), (626, 45, 0, 1), (3289, 45, 0, 1), (3290, 45, 0, 1), (634, 45, 0, 1), (3291, 45, 0, 1), (3292, 45, 0, 1), (782, 45, 0, 1), (2907, 45, 0, 1), (3293, 45, 0, 1), (3294, 45, 0, 1), (3295, 45, 0, 1), (3296, 45, 0, 1), (1566, 45, 0, 1), (292, 45, 0, 1), (216, 45, 0, 1), (3297, 45, 0, 1), (3298, 45, 0, 1), (3299, 45, 0, 1), (3300, 45, 0, 1), (124, 45, 0, 1), (695, 45, 0, 1), (1131, 45, 0, 1), (3301, 45, 0, 1), (530, 45, 0, 1), (2808, 45, 0, 1), (3302, 45, 0, 1), (92, 45, 0, 1), (3303, 45, 0, 1), (3732, 45, 0, 1), (3733, 45, 0, 1), (3734, 45, 0, 1), (3735, 45, 0, 1), (3736, 45, 0, 1), (2294, 46, 0, 1), (3304, 46, 0, 1), (773, 46, 0, 1), (3759, 46, 0, 1), (3760, 46, 0, 1), (72, 46, 0, 1), (778, 46, 0, 1), (144, 46, 0, 1), (71, 46, 0, 1), (3307, 46, 0, 1), (1801, 46, 0, 1), (2183, 46, 0, 1), (3308, 46, 0, 1), (152, 46, 0, 1), (177, 46, 0, 1), (3309, 46, 0, 1), (195, 46, 0, 1), (196, 46, 0, 1), (193, 46, 0, 1), (3310, 46, 0, 1), (3311, 46, 0, 1), (3312, 46, 0, 1), (90, 46, 0, 1), (817, 46, 0, 1), (3313, 46, 0, 1), (1783, 46, 0, 1), (3314, 46, 0, 1), (1087, 46, 0, 1), (2160, 46, 0, 1), (318, 46, 0, 1), (3074, 46, 0, 1), (614, 46, 0, 1), (7, 46, 0, 1), (449, 46, 0, 1), (39, 46, 0, 1), (3315, 46, 0, 1), (58, 46, 0, 1), (3316, 46, 0, 1), (660, 46, 0, 1), (219, 46, 0, 1), (115, 46, 0, 1), (3317, 46, 0, 1), (3318, 46, 0, 1), (253, 46, 0, 1), (3319, 46, 0, 1), (3320, 46, 0, 1), (120, 46, 0, 1), (3321, 46, 0, 1), (26, 46, 0, 1), (487, 46, 0, 1), (3322, 46, 0, 1), (2816, 46, 0, 1), (30, 46, 0, 1), (3323, 46, 0, 1), (3324, 46, 0, 1), (1114, 46, 0, 1), (43, 46, 0, 1), (3325, 46, 0, 1), (676, 46, 0, 1), (2660, 46, 0, 1), (2651, 46, 0, 1), (3326, 46, 0, 1), (3327, 46, 0, 1), (3328, 46, 0, 1), (124, 46, 0, 1), (3329, 46, 0, 1), (54, 46, 0, 1), (171, 46, 0, 1), (3330, 46, 0, 1), (852, 46, 0, 1), (444, 46, 0, 1), (357, 46, 0, 1), (1080, 46, 0, 1), (3331, 46, 0, 1), (2437, 46, 0, 1), (3332, 46, 0, 1), (89, 46, 0, 1), (650, 46, 0, 1), (1072, 46, 0, 1), (3333, 46, 0, 1), (3273, 46, 0, 1), (2646, 46, 0, 1), (3334, 46, 0, 1), (1157, 46, 0, 1), (3335, 46, 0, 1), (3212, 46, 0, 1), (3336, 46, 0, 1), (3337, 46, 0, 1), (1118, 46, 0, 1), (482, 46, 0, 1), (225, 46, 0, 1), (2441, 46, 0, 1), (84, 46, 0, 1), (157, 46, 0, 1), (3338, 46, 0, 1), (395, 46, 0, 1), (2633, 46, 0, 1), (3339, 46, 0, 1), (1312, 46, 0, 1), (128, 46, 0, 1), (3340, 46, 0, 1), (2689, 46, 0, 1), (160, 46, 0, 1), (3049, 46, 0, 1), (2502, 46, 0, 1), (2972, 46, 0, 1), (1877, 46, 0, 1), (251, 46, 0, 1), (92, 46, 0, 1), (38, 46, 0, 1), (3341, 46, 0, 1), (1418, 46, 0, 1), (2457, 46, 0, 1), (67, 46, 0, 1), (2588, 46, 0, 1), (2174, 46, 0, 1), (3342, 46, 0, 1), (3343, 46, 0, 1), (3344, 46, 0, 1), (1821, 46, 0, 1), (330, 46, 0, 1), (3345, 46, 0, 1), (165, 46, 0, 1), (3346, 46, 0, 1), (3347, 46, 0, 1), (1035, 46, 0, 1), (3348, 46, 0, 1), (3349, 46, 0, 1), (222, 46, 0, 1), (288, 46, 0, 1), (3350, 46, 0, 1), (3351, 46, 0, 1), (3352, 46, 0, 1), (3353, 46, 0, 1), (3354, 46, 0, 1), (3355, 46, 0, 1), (37, 46, 0, 1), (3356, 46, 0, 1), (2204, 46, 0, 1), (3357, 46, 0, 1), (485, 46, 0, 1), (3358, 46, 0, 1), (3359, 46, 0, 1), (385, 46, 0, 1), (3360, 46, 0, 1), (3361, 46, 0, 1), (2234, 46, 0, 1), (567, 46, 0, 1), (3362, 46, 0, 1), (147, 46, 0, 1), (3041, 46, 0, 1), (3363, 46, 0, 1), (194, 46, 0, 1), (25, 46, 0, 1), (2193, 46, 0, 1), (3045, 46, 0, 1), (3364, 46, 0, 1), (2417, 46, 0, 1), (185, 46, 0, 1), (3076, 46, 0, 1), (3365, 46, 0, 1), (3366, 46, 0, 1), (3367, 46, 0, 1), (3368, 46, 0, 1), (844, 46, 0, 1), (2158, 46, 0, 1), (202, 46, 0, 1), (118, 46, 0, 1), (172, 46, 0, 1), (3038, 46, 0, 1), (3369, 46, 0, 1), (3370, 46, 0, 1), (3059, 46, 0, 1), (3371, 46, 0, 1), (1662, 46, 0, 1), (2321, 46, 0, 1), (126, 46, 0, 1), (309, 46, 0, 1), (3372, 46, 0, 1), (2492, 46, 0, 1), (607, 46, 0, 1), (3373, 46, 0, 1), (3374, 46, 0, 1), (2891, 46, 0, 1), (577, 46, 0, 1), (3375, 46, 0, 1), (3376, 46, 0, 1), (3377, 46, 0, 1), (3732, 46, 0, 1), (3733, 46, 0, 1), (3734, 46, 0, 1), (3735, 46, 0, 1), (3736, 46, 0, 1), (2294, 47, 0, 1), (3378, 47, 0, 1), (3761, 47, 0, 1), (3762, 47, 0, 1), (3381, 47, 0, 1), (1154, 47, 0, 1), (3382, 47, 0, 1), (3383, 47, 0, 1), (92, 47, 0, 1), (3384, 47, 0, 1), (1153, 47, 0, 1), (446, 47, 0, 1), (2278, 47, 0, 1), (844, 47, 0, 1), (2209, 47, 0, 1), (183, 47, 0, 1), (3065, 47, 0, 1), (118, 47, 0, 1), (222, 47, 0, 1), (2285, 47, 0, 1), (7, 47, 0, 1), (37, 47, 0, 1), (251, 47, 0, 1), (3385, 47, 0, 1), (128, 47, 0, 1), (3386, 47, 0, 1), (585, 47, 0, 1), (3387, 47, 0, 1), (43, 47, 0, 1), (444, 47, 0, 1), (2740, 47, 0, 1), (253, 47, 0, 1), (2179, 47, 0, 1), (3388, 47, 0, 1), (3389, 47, 0, 1), (3390, 47, 0, 1), (3143, 47, 0, 1), (2757, 47, 0, 1), (3391, 47, 0, 1), (3392, 47, 0, 1), (3393, 47, 0, 1), (607, 47, 0, 1), (2513, 47, 0, 1), (144, 47, 0, 1), (565, 47, 0, 1), (1572, 47, 0, 1), (3394, 47, 0, 1), (551, 47, 0, 1), (448, 47, 0, 1), (1168, 47, 0, 1), (2437, 47, 0, 1), (71, 47, 0, 1), (3395, 47, 0, 1), (260, 47, 0, 1), (578, 47, 0, 1), (3396, 47, 0, 1), (3397, 47, 0, 1), (3398, 47, 0, 1), (3399, 47, 0, 1), (3400, 47, 0, 1), (797, 47, 0, 1), (2792, 47, 0, 1), (633, 47, 0, 1), (584, 47, 0, 1), (70, 47, 0, 1), (2407, 47, 0, 1), (196, 47, 0, 1), (3401, 47, 0, 1), (3402, 47, 0, 1), (19, 47, 0, 1), (1056, 47, 0, 1), (931, 47, 0, 1), (28, 47, 0, 1), (1279, 47, 0, 1), (3403, 47, 0, 1), (2301, 47, 0, 1), (3404, 47, 0, 1), (3405, 47, 0, 1), (357, 47, 0, 1), (1820, 47, 0, 1), (3406, 47, 0, 1), (3407, 47, 0, 1), (54, 47, 0, 1), (120, 47, 0, 1), (3408, 47, 0, 1), (84, 47, 0, 1), (2168, 47, 0, 1), (3409, 47, 0, 1), (3410, 47, 0, 1), (3411, 47, 0, 1), (1437, 47, 0, 1), (3412, 47, 0, 1), (171, 47, 0, 1), (2174, 47, 0, 1), (90, 47, 0, 1), (2701, 47, 0, 1), (2183, 47, 0, 1), (3413, 47, 0, 1), (172, 47, 0, 1), (3367, 47, 0, 1), (3414, 47, 0, 1), (3415, 47, 0, 1), (2158, 47, 0, 1), (425, 47, 0, 1), (944, 47, 0, 1), (453, 47, 0, 1), (3416, 47, 0, 1), (2185, 47, 0, 1), (291, 47, 0, 1), (1386, 47, 0, 1), (2431, 47, 0, 1), (3417, 47, 0, 1), (3418, 47, 0, 1), (3419, 47, 0, 1), (2383, 47, 0, 1), (1662, 47, 0, 1), (116, 47, 0, 1), (2239, 47, 0, 1), (3420, 47, 0, 1), (3421, 47, 0, 1), (3422, 47, 0, 1), (63, 47, 0, 1), (304, 47, 0, 1), (2170, 47, 0, 1), (495, 47, 0, 1), (3423, 47, 0, 1), (25, 47, 0, 1), (652, 47, 0, 1), (3424, 47, 0, 1), (2749, 47, 0, 1), (3425, 47, 0, 1), (3426, 47, 0, 1), (115, 47, 0, 1), (592, 47, 0, 1), (1256, 47, 0, 1), (3427, 47, 0, 1), (3428, 47, 0, 1), (3429, 47, 0, 1), (1393, 47, 0, 1), (3430, 47, 0, 1), (3431, 47, 0, 1), (2345, 47, 0, 1), (195, 47, 0, 1), (3432, 47, 0, 1), (3433, 47, 0, 1), (2515, 47, 0, 1), (1735, 47, 0, 1), (596, 47, 0, 1), (205, 47, 0, 1), (3434, 47, 0, 1), (3435, 47, 0, 1), (1080, 47, 0, 1), (2288, 47, 0, 1), (114, 47, 0, 1), (202, 47, 0, 1), (1771, 47, 0, 1), (3436, 47, 0, 1), (482, 47, 0, 1), (3437, 47, 0, 1), (3438, 47, 0, 1), (902, 47, 0, 1), (152, 47, 0, 1), (3439, 47, 0, 1), (500, 47, 0, 1), (3440, 47, 0, 1), (3441, 47, 0, 1), (21, 47, 0, 1), (3442, 47, 0, 1), (153, 47, 0, 1), (160, 47, 0, 1), (17, 47, 0, 1), (3443, 47, 0, 1), (3444, 47, 0, 1), (577, 47, 0, 1), (3445, 47, 0, 1), (3446, 47, 0, 1), (3447, 47, 0, 1), (75, 47, 0, 1), (3448, 47, 0, 1), (467, 47, 0, 1), (385, 47, 0, 1), (1817, 47, 0, 1), (3449, 47, 0, 1), (219, 47, 0, 1), (382, 47, 0, 1), (414, 47, 0, 1), (3450, 47, 0, 1), (3451, 47, 0, 1), (3452, 47, 0, 1), (3763, 47, 0, 1), (3733, 47, 0, 1), (3734, 47, 0, 1), (3735, 47, 0, 1), (3736, 47, 0, 1), (2294, 48, 0, 1), (1261, 48, 0, 1), (160, 48, 0, 1), (1820, 48, 0, 1), (3764, 48, 0, 1), (3765, 48, 0, 1), (292, 48, 0, 1), (1010, 48, 0, 1), (357, 48, 0, 1), (2592, 48, 0, 1), (2185, 48, 0, 1), (43, 48, 0, 1), (152, 48, 0, 1), (566, 48, 0, 1), (1203, 48, 0, 1), (3455, 48, 0, 1), (2626, 48, 0, 1), (128, 48, 0, 1), (696, 48, 0, 1), (454, 48, 0, 1), (3456, 48, 0, 1), (253, 48, 0, 1), (3457, 48, 0, 1), (444, 48, 0, 1), (3458, 48, 0, 1), (3459, 48, 0, 1), (2204, 48, 0, 1), (505, 48, 0, 1), (2340, 48, 0, 1), (3460, 48, 0, 1), (2553, 48, 0, 1), (2334, 48, 0, 1), (3461, 48, 0, 1), (3462, 48, 0, 1), (1117, 48, 0, 1), (120, 48, 0, 1), (2285, 48, 0, 1), (2529, 48, 0, 1), (1281, 48, 0, 1), (71, 48, 0, 1), (3463, 48, 0, 1), (92, 48, 0, 1), (87, 48, 0, 1), (385, 48, 0, 1), (3464, 48, 0, 1), (3465, 48, 0, 1), (3466, 48, 0, 1), (1153, 48, 0, 1), (1735, 48, 0, 1), (154, 48, 0, 1), (2284, 48, 0, 1), (114, 48, 0, 1), (844, 48, 0, 1), (3378, 48, 0, 1), (251, 48, 0, 1), (63, 48, 0, 1), (2649, 48, 0, 1), (37, 48, 0, 1), (3041, 48, 0, 1), (3467, 48, 0, 1), (3377, 48, 0, 1), (269, 48, 0, 1), (3287, 48, 0, 1), (627, 48, 0, 1), (129, 48, 0, 1), (3468, 48, 0, 1), (216, 48, 0, 1), (312, 48, 0, 1), (2741, 48, 0, 1), (2586, 48, 0, 1), (7, 48, 0, 1), (482, 48, 0, 1), (171, 48, 0, 1), (633, 48, 0, 1), (2426, 48, 0, 1), (3469, 48, 0, 1), (453, 48, 0, 1), (3470, 48, 0, 1), (153, 48, 0, 1), (3139, 48, 0, 1), (607, 48, 0, 1), (3471, 48, 0, 1), (1501, 48, 0, 1), (3472, 48, 0, 1), (413, 48, 0, 1), (3430, 48, 0, 1), (2457, 48, 0, 1), (3473, 48, 0, 1), (2168, 48, 0, 1), (188, 48, 0, 1), (778, 48, 0, 1), (3474, 48, 0, 1), (172, 48, 0, 1), (3475, 48, 0, 1), (3476, 48, 0, 1), (3319, 48, 0, 1), (3477, 48, 0, 1), (1168, 48, 0, 1), (495, 48, 0, 1), (1801, 48, 0, 1), (2309, 48, 0, 1), (222, 48, 0, 1), (1154, 48, 0, 1), (3478, 48, 0, 1), (3479, 48, 0, 1), (2183, 48, 0, 1), (3480, 48, 0, 1), (2918, 48, 0, 1), (117, 48, 0, 1), (3180, 48, 0, 1), (2972, 48, 0, 1), (39, 48, 0, 1), (2974, 48, 0, 1), (3481, 48, 0, 1), (3482, 48, 0, 1), (2158, 48, 0, 1), (144, 48, 0, 1), (183, 48, 0, 1), (1333, 48, 0, 1), (1973, 48, 0, 1), (2470, 48, 0, 1), (3404, 48, 0, 1), (1256, 48, 0, 1), (2640, 48, 0, 1), (356, 48, 0, 1), (1107, 48, 0, 1), (3483, 48, 0, 1), (263, 48, 0, 1), (2437, 48, 0, 1), (3484, 48, 0, 1), (3485, 48, 0, 1), (1449, 48, 0, 1), (466, 48, 0, 1), (3486, 48, 0, 1), (283, 48, 0, 1), (3487, 48, 0, 1), (1087, 48, 0, 1), (1673, 48, 0, 1), (1249, 48, 0, 1), (3488, 48, 0, 1), (3489, 48, 0, 1), (1016, 48, 0, 1), (3732, 48, 0, 1), (3733, 48, 0, 1), (3734, 48, 0, 1), (3735, 48, 0, 1), (3736, 48, 0, 1), (2294, 49, 0, 1), (1735, 49, 0, 1), (2185, 49, 0, 1), (3766, 49, 0, 1), (3767, 49, 0, 1), (1797, 49, 0, 1), (1098, 49, 0, 1), (2743, 49, 0, 1), (663, 49, 0, 1), (2171, 49, 0, 1), (444, 49, 0, 1), (2741, 49, 0, 1), (292, 49, 0, 1), (216, 49, 0, 1), (3491, 49, 0, 1), (3492, 49, 0, 1), (1648, 49, 0, 1), (3493, 49, 0, 1), (2596, 49, 0, 1), (567, 49, 0, 1), (3494, 49, 0, 1), (43, 49, 0, 1), (3495, 49, 0, 1), (606, 49, 0, 1), (2480, 49, 0, 1), (586, 49, 0, 1), (3496, 49, 0, 1), (2200, 49, 0, 1), (3497, 49, 0, 1), (2563, 49, 0, 1), (160, 49, 0, 1), (1014, 49, 0, 1), (178, 49, 0, 1), (2455, 49, 0, 1), (1592, 49, 0, 1), (3498, 49, 0, 1), (30, 49, 0, 1), (3499, 49, 0, 1), (3500, 49, 0, 1), (92, 49, 0, 1), (2542, 49, 0, 1), (3189, 49, 0, 1), (2566, 49, 0, 1), (3032, 49, 0, 1), (1247, 49, 0, 1), (3501, 49, 0, 1), (3319, 49, 0, 1), (3502, 49, 0, 1), (222, 49, 0, 1), (2180, 49, 0, 1), (3503, 49, 0, 1), (251, 49, 0, 1), (3504, 49, 0, 1), (673, 49, 0, 1), (1190, 49, 0, 1), (1530, 49, 0, 1), (221, 49, 0, 1), (357, 49, 0, 1), (1021, 49, 0, 1), (3047, 49, 0, 1), (318, 49, 0, 1), (130, 49, 0, 1), (696, 49, 0, 1), (17, 49, 0, 1), (1418, 49, 0, 1), (3505, 49, 0, 1), (3506, 49, 0, 1), (75, 49, 0, 1), (3507, 49, 0, 1), (3508, 49, 0, 1), (1238, 49, 0, 1), (124, 49, 0, 1), (550, 49, 0, 1), (3509, 49, 0, 1), (3510, 49, 0, 1), (3511, 49, 0, 1), (145, 49, 0, 1), (2296, 49, 0, 1), (2174, 49, 0, 1), (2186, 49, 0, 1), (3512, 49, 0, 1), (3513, 49, 0, 1), (3046, 49, 0, 1), (1564, 49, 0, 1), (3323, 49, 0, 1), (7, 49, 0, 1), (1688, 49, 0, 1), (2274, 49, 0, 1), (330, 49, 0, 1), (844, 49, 0, 1), (2305, 49, 0, 1), (219, 49, 0, 1), (3514, 49, 0, 1), (1164, 49, 0, 1), (1044, 49, 0, 1), (938, 49, 0, 1), (3515, 49, 0, 1), (71, 49, 0, 1), (3516, 49, 0, 1), (3517, 49, 0, 1), (3518, 49, 0, 1), (47, 49, 0, 1), (910, 49, 0, 1), (446, 49, 0, 1), (117, 49, 0, 1), (3519, 49, 0, 1), (566, 49, 0, 1), (3520, 49, 0, 1), (2779, 49, 0, 1), (3521, 49, 0, 1), (2638, 49, 0, 1), (2183, 49, 0, 1), (3522, 49, 0, 1), (3523, 49, 0, 1), (3524, 49, 0, 1), (3525, 49, 0, 1), (3732, 49, 0, 1), (3733, 49, 0, 1), (3734, 49, 0, 1), (3735, 49, 0, 1), (3736, 49, 0, 1), (2294, 50, 0, 1), (675, 50, 0, 1), (3768, 50, 0, 1), (3769, 50, 0, 1), (2792, 50, 0, 1), (1170, 50, 0, 1), (2474, 50, 0, 1), (3527, 50, 0, 1), (1631, 50, 0, 1), (3189, 50, 0, 1), (43, 50, 0, 1), (2216, 50, 0, 1), (3528, 50, 0, 1), (3152, 50, 0, 1), (2204, 50, 0, 1), (567, 50, 0, 1), (30, 50, 0, 1), (642, 50, 0, 1), (2953, 50, 0, 1), (2185, 50, 0, 1), (3529, 50, 0, 1), (3530, 50, 0, 1), (676, 50, 0, 1), (1154, 50, 0, 1), (2638, 50, 0, 1), (107, 50, 0, 1), (3063, 50, 0, 1), (251, 50, 0, 1), (63, 50, 0, 1), (3531, 50, 0, 1), (452, 50, 0, 1), (3532, 50, 0, 1), (3533, 50, 0, 1), (3534, 50, 0, 1), (3535, 50, 0, 1), (605, 50, 0, 1), (3536, 50, 0, 1), (92, 50, 0, 1), (3537, 50, 0, 1), (3538, 50, 0, 1), (7, 50, 0, 1), (3539, 50, 0, 1), (238, 50, 0, 1), (2490, 50, 0, 1), (322, 50, 0, 1), (3540, 50, 0, 1), (3541, 50, 0, 1), (2267, 50, 0, 1), (625, 50, 0, 1), (3542, 50, 0, 1), (185, 50, 0, 1), (136, 50, 0, 1), (3543, 50, 0, 1), (2413, 50, 0, 1), (1148, 50, 0, 1), (3544, 50, 0, 1), (216, 50, 0, 1), (744, 50, 0, 1), (3545, 50, 0, 1), (3546, 50, 0, 1), (3547, 50, 0, 1), (171, 50, 0, 1), (36, 50, 0, 1), (357, 50, 0, 1), (3548, 50, 0, 1), (225, 50, 0, 1), (2729, 50, 0, 1), (402, 50, 0, 1), (3549, 50, 0, 1), (1056, 50, 0, 1), (3550, 50, 0, 1), (3551, 50, 0, 1), (3552, 50, 0, 1), (607, 50, 0, 1), (196, 50, 0, 1), (3136, 50, 0, 1), (253, 50, 0, 1), (1125, 50, 0, 1), (3732, 50, 0, 1), (3733, 50, 0, 1), (3734, 50, 0, 1), (3735, 50, 0, 1), (3736, 50, 0, 1), (3555, 51, 0, 1), (3553, 51, 0, 1), (221, 51, 0, 1), (3770, 51, 0, 1), (3771, 51, 0, 1), (3554, 51, 0, 1), (633, 51, 0, 1), (472, 51, 0, 1), (452, 51, 0, 1), (3557, 51, 0, 1), (3326, 51, 0, 1), (3558, 51, 0, 1), (3559, 51, 0, 1), (87, 51, 0, 1), (88, 51, 0, 1), (818, 51, 0, 1), (144, 51, 0, 1), (3560, 51, 0, 1), (202, 51, 0, 1), (318, 51, 0, 1), (2318, 51, 0, 1), (3561, 51, 0, 1), (1704, 51, 0, 1), (136, 51, 0, 1), (43, 51, 0, 1), (2286, 51, 0, 1), (3562, 51, 0, 1), (180, 51, 0, 1), (3563, 51, 0, 1), (1261, 51, 0, 1), (3732, 51, 0, 1), (3733, 51, 0, 1), (3734, 51, 0, 1), (3735, 51, 0, 1), (3736, 51, 0, 1), (2294, 52, 0, 1), (3564, 52, 0, 1), (221, 52, 0, 1), (3772, 52, 0, 1), (3773, 52, 0, 1), (402, 52, 0, 1), (3563, 52, 0, 1), (43, 52, 0, 1), (147, 52, 0, 1), (1939, 52, 0, 1), (3567, 52, 0, 1), (394, 52, 0, 1), (1916, 52, 0, 1), (2356, 52, 0, 1), (2096, 52, 0, 1), (3568, 52, 0, 1), (292, 52, 0, 1), (852, 52, 0, 1), (817, 52, 0, 1), (2097, 52, 0, 1), (3569, 52, 0, 1), (652, 52, 0, 1), (3570, 52, 0, 1), (1261, 52, 0, 1), (818, 52, 0, 1), (3571, 52, 0, 1), (599, 52, 0, 1), (165, 52, 0, 1), (37, 52, 0, 1), (3572, 52, 0, 1), (3573, 52, 0, 1), (2334, 52, 0, 1), (3574, 52, 0, 1), (2179, 52, 0, 1), (2514, 52, 0, 1), (3575, 52, 0, 1), (3576, 52, 0, 1), (3323, 52, 0, 1), (222, 52, 0, 1), (2174, 52, 0, 1), (3139, 52, 0, 1), (3577, 52, 0, 1), (3359, 52, 0, 1), (2837, 52, 0, 1), (2913, 52, 0, 1), (1010, 52, 0, 1), (3074, 52, 0, 1), (3578, 52, 0, 1), (10, 52, 0, 1), (7, 52, 0, 1), (44, 52, 0, 1), (118, 52, 0, 1), (195, 52, 0, 1), (196, 52, 0, 1), (166, 52, 0, 1), (3579, 52, 0, 1), (8, 52, 0, 1), (844, 52, 0, 1), (2158, 52, 0, 1), (1771, 52, 0, 1), (63, 52, 0, 1), (1661, 52, 0, 1), (3580, 52, 0, 1), (389, 52, 0, 1), (357, 52, 0, 1), (3565, 52, 0, 1), (452, 52, 0, 1), (931, 52, 0, 1), (3581, 52, 0, 1), (773, 52, 0, 1), (25, 52, 0, 1), (3582, 52, 0, 1), (3583, 52, 0, 1), (3584, 52, 0, 1), (3585, 52, 0, 1), (3586, 52, 0, 1), (3587, 52, 0, 1), (241, 52, 0, 1), (318, 52, 0, 1), (3588, 52, 0, 1), (771, 52, 0, 1), (938, 52, 0, 1), (567, 52, 0, 1), (3589, 52, 0, 1), (3590, 52, 0, 1), (469, 52, 0, 1), (54, 52, 0, 1), (583, 52, 0, 1), (3381, 52, 0, 1), (895, 52, 0, 1), (3332, 52, 0, 1), (90, 52, 0, 1), (288, 52, 0, 1), (2269, 52, 0, 1), (3591, 52, 0, 1), (499, 52, 0, 1), (3592, 52, 0, 1), (30, 52, 0, 1), (3593, 52, 0, 1), (251, 52, 0, 1), (2321, 52, 0, 1), (696, 52, 0, 1), (3594, 52, 0, 1), (3595, 52, 0, 1), (254, 52, 0, 1), (1157, 52, 0, 1), (3596, 52, 0, 1), (3597, 52, 0, 1), (3598, 52, 0, 1), (3599, 52, 0, 1), (676, 52, 0, 1), (1793, 52, 0, 1), (3600, 52, 0, 1), (3601, 52, 0, 1), (3602, 52, 0, 1), (3603, 52, 0, 1), (3206, 52, 0, 1), (144, 52, 0, 1), (3212, 52, 0, 1), (3604, 52, 0, 1), (3605, 52, 0, 1), (309, 52, 0, 1), (3606, 52, 0, 1), (140, 52, 0, 1), (407, 52, 0, 1), (3607, 52, 0, 1), (3608, 52, 0, 1), (3041, 52, 0, 1), (3609, 52, 0, 1), (3325, 52, 0, 1), (3610, 52, 0, 1), (444, 52, 0, 1), (3611, 52, 0, 1), (3109, 52, 0, 1), (3612, 52, 0, 1), (1047, 52, 0, 1), (3613, 52, 0, 1), (1801, 52, 0, 1), (3614, 52, 0, 1), (3185, 52, 0, 1), (136, 52, 0, 1), (160, 52, 0, 1), (157, 52, 0, 1), (2206, 52, 0, 1), (3615, 52, 0, 1), (3616, 52, 0, 1), (482, 52, 0, 1), (2589, 52, 0, 1), (2248, 52, 0, 1), (2160, 52, 0, 1), (1168, 52, 0, 1), (2553, 52, 0, 1), (3617, 52, 0, 1), (2762, 52, 0, 1), (197, 52, 0, 1), (2194, 52, 0, 1), (3618, 52, 0, 1), (189, 52, 0, 1), (3619, 52, 0, 1), (3189, 52, 0, 1), (1530, 52, 0, 1), (2253, 52, 0, 1), (3620, 52, 0, 1), (3621, 52, 0, 1), (9, 52, 0, 1), (505, 52, 0, 1), (3622, 52, 0, 1), (2743, 52, 0, 1), (253, 52, 0, 1), (71, 52, 0, 1), (2171, 52, 0, 1), (263, 52, 0, 1), (2437, 52, 0, 1), (3623, 52, 0, 1), (3624, 52, 0, 1), (3625, 52, 0, 1), (3626, 52, 0, 1), (3627, 52, 0, 1), (584, 52, 0, 1), (28, 52, 0, 1), (3628, 52, 0, 1), (183, 52, 0, 1), (1244, 52, 0, 1), (3629, 52, 0, 1), (2673, 52, 0, 1), (3630, 52, 0, 1), (3036, 52, 0, 1), (120, 52, 0, 1), (3560, 52, 0, 1), (3022, 52, 0, 1), (180, 52, 0, 1), (3631, 52, 0, 1), (124, 52, 0, 1), (778, 52, 0, 1), (2749, 52, 0, 1), (3632, 52, 0, 1), (3633, 52, 0, 1), (2326, 52, 0, 1), (3634, 52, 0, 1), (3635, 52, 0, 1), (2684, 52, 0, 1), (142, 52, 0, 1), (3636, 52, 0, 1), (1044, 52, 0, 1), (92, 52, 0, 1), (3637, 52, 0, 1), (115, 52, 0, 1), (2271, 52, 0, 1), (3638, 52, 0, 1), (3639, 52, 0, 1), (287, 52, 0, 1), (2660, 52, 0, 1), (3640, 52, 0, 1), (128, 52, 0, 1), (2226, 52, 0, 1), (3641, 52, 0, 1), (3642, 52, 0, 1), (640, 52, 0, 1), (3643, 52, 0, 1), (67, 52, 0, 1), (1148, 52, 0, 1), (1548, 52, 0, 1), (188, 52, 0, 1), (3644, 52, 0, 1), (3645, 52, 0, 1), (2459, 52, 0, 1), (77, 52, 0, 1), (2403, 52, 0, 1), (3646, 52, 0, 1), (3647, 52, 0, 1), (3648, 52, 0, 1), (3649, 52, 0, 1), (633, 52, 0, 1), (472, 52, 0, 1), (3650, 52, 0, 1), (3651, 52, 0, 1), (2532, 52, 0, 1), (3652, 52, 0, 1), (152, 52, 0, 1), (3523, 52, 0, 1), (3653, 52, 0, 1), (1070, 52, 0, 1), (3654, 52, 0, 1), (1341, 52, 0, 1), (3655, 52, 0, 1), (3656, 52, 0, 1), (3657, 52, 0, 1), (3077, 52, 0, 1), (3658, 52, 0, 1), (3659, 52, 0, 1), (3660, 52, 0, 1), (3661, 52, 0, 1), (3662, 52, 0, 1), (3663, 52, 0, 1), (3664, 52, 0, 1), (3665, 52, 0, 1), (3732, 52, 0, 1), (3733, 52, 0, 1), (3734, 52, 0, 1), (3735, 52, 0, 1), (3736, 52, 0, 1), (2294, 53, 0, 1), (2457, 53, 0, 1), (160, 53, 0, 1), (119, 53, 0, 1), (3774, 53, 0, 1), (3775, 53, 0, 1), (92, 53, 0, 1), (154, 53, 0, 1), (357, 53, 0, 1), (773, 53, 0, 1), (251, 53, 0, 1), (778, 53, 0, 1), (2649, 53, 0, 1), (3667, 53, 0, 1), (2628, 53, 0, 1), (3668, 53, 0, 1), (3669, 53, 0, 1), (3257, 53, 0, 1), (1609, 53, 0, 1), (2409, 53, 0, 1), (3670, 53, 0, 1), (3671, 53, 0, 1), (7, 53, 0, 1), (3672, 53, 0, 1), (1261, 53, 0, 1), (2183, 53, 0, 1), (3673, 53, 0, 1), (2643, 53, 0, 1), (466, 53, 0, 1), (3674, 53, 0, 1), (2813, 53, 0, 1), (3675, 53, 0, 1), (114, 53, 0, 1), (292, 53, 0, 1), (3676, 53, 0, 1), (385, 53, 0, 1), (2179, 53, 0, 1), (2344, 53, 0, 1), (3677, 53, 0, 1), (2318, 53, 0, 1), (3678, 53, 0, 1), (411, 53, 0, 1), (868, 53, 0, 1), (3679, 53, 0, 1), (128, 53, 0, 1), (3680, 53, 0, 1), (3681, 53, 0, 1), (43, 53, 0, 1), (216, 53, 0, 1), (3682, 53, 0, 1), (118, 53, 0, 1), (3683, 53, 0, 1), (2093, 53, 0, 1), (444, 53, 0, 1), (395, 53, 0, 1), (3684, 53, 0, 1), (3685, 53, 0, 1), (2459, 53, 0, 1), (196, 53, 0, 1), (1437, 53, 0, 1), (1877, 53, 0, 1), (3686, 53, 0, 1), (54, 53, 0, 1), (195, 53, 0, 1), (3687, 53, 0, 1), (9, 53, 0, 1), (852, 53, 0, 1), (627, 53, 0, 1), (3688, 53, 0, 1), (2333, 53, 0, 1), (3189, 53, 0, 1), (221, 53, 0, 1), (3689, 53, 0, 1), (120, 53, 0, 1), (3690, 53, 0, 1), (2170, 53, 0, 1), (3691, 53, 0, 1), (1244, 53, 0, 1), (554, 53, 0, 1), (3692, 53, 0, 1), (3693, 53, 0, 1), (2271, 53, 0, 1), (3372, 53, 0, 1), (2285, 53, 0, 1), (3694, 53, 0, 1), (836, 53, 0, 1), (2552, 53, 0, 1), (3185, 53, 0, 1), (1039, 53, 0, 1), (3695, 53, 0, 1), (452, 53, 0, 1), (1552, 53, 0, 1), (1418, 53, 0, 1), (3696, 53, 0, 1), (159, 53, 0, 1), (3320, 53, 0, 1), (3697, 53, 0, 1), (3698, 53, 0, 1), (222, 53, 0, 1), (532, 53, 0, 1), (3699, 53, 0, 1), (1515, 53, 0, 1), (3700, 53, 0, 1), (790, 53, 0, 1), (660, 53, 0, 1), (3701, 53, 0, 1), (3702, 53, 0, 1), (3041, 53, 0, 1), (495, 53, 0, 1), (3277, 53, 0, 1), (3703, 53, 0, 1), (3704, 53, 0, 1), (3377, 53, 0, 1), (2204, 53, 0, 1), (3705, 53, 0, 1), (3706, 53, 0, 1), (482, 53, 0, 1), (3707, 53, 0, 1), (183, 53, 0, 1), (3276, 53, 0, 1), (652, 53, 0, 1), (3708, 53, 0, 1), (3034, 53, 0, 1), (3709, 53, 0, 1), (3710, 53, 0, 1), (144, 53, 0, 1), (3711, 53, 0, 1), (3712, 53, 0, 1), (636, 53, 0, 1), (180, 53, 0, 1), (3713, 53, 0, 1), (3714, 53, 0, 1), (550, 53, 0, 1), (2733, 53, 0, 1), (2383, 53, 0, 1), (970, 53, 0, 1), (3715, 53, 0, 1), (3716, 53, 0, 1), (696, 53, 0, 1), (3717, 53, 0, 1), (3718, 53, 0, 1), (3719, 53, 0, 1), (3720, 53, 0, 1), (3721, 53, 0, 1), (72, 53, 0, 1), (2158, 53, 0, 1), (1688, 53, 0, 1), (3722, 53, 0, 1), (3075, 53, 0, 1), (3049, 53, 0, 1), (3723, 53, 0, 1), (387, 53, 0, 1), (3724, 53, 0, 1), (3725, 53, 0, 1), (3726, 53, 0, 1), (3727, 53, 0, 1), (3728, 53, 0, 1), (3732, 53, 0, 1), (3733, 53, 0, 1), (3734, 53, 0, 1), (3735, 53, 0, 1), (3736, 53, 0, 1), (2159, 4, 1, 0), (2159, 4, 3, 0), (2269, 55, 0, 0), (221, 55, 0, 0), (583, 55, 0, 0), (3776, 55, 0, 0), (2514, 55, 0, 0), (2975, 55, 0, 0), (3273, 56, 0, 0), (3821, 56, 0, 0), (3804, 57, 0, 0), (3912, 57, 0, 0), (3980, 58, 0, 0), (3981, 58, 0, 0), (495, 59, 0, 0), (2500, 59, 0, 0), (3277, 59, 0, 0), (2743, 60, 0, 0), (2186, 60, 0, 0), (1014, 60, 0, 0), (4045, 60, 0, 0), (2361, 61, 0, 0), (2186, 61, 0, 0), (4075, 61, 0, 0), (4114, 62, 0, 0), (2592, 62, 0, 0), (1801, 62, 0, 0), (1716, 62, 0, 0), (71, 62, 0, 0), (4147, 63, 0, 0), (3076, 63, 0, 0), (2664, 63, 0, 0), (160, 63, 0, 0), (3185, 64, 0, 0), (3903, 64, 0, 0), (2437, 64, 0, 0), (2743, 65, 0, 0), (4200, 65, 0, 0), (2743, 66, 0, 0), (2919, 66, 0, 0), (2186, 66, 0, 0), (3210, 66, 0, 0), (2743, 67, 0, 0), (1716, 67, 0, 0), (71, 67, 0, 0), (3817, 68, 0, 0), (2792, 68, 0, 0), (3320, 69, 0, 0), (2141, 69, 0, 0), (2160, 70, 0, 0), (1675, 70, 0, 0), (2160, 72, 0, 0), (2643, 72, 0, 0), (3307, 73, 0, 0), (2460, 73, 0, 0), (3481, 73, 0, 0), (3928, 74, 0, 0), (107, 74, 0, 0), (3514, 75, 0, 0), (1813, 75, 0, 0), (1561, 76, 0, 0), (4570, 76, 0, 0), (4114, 77, 0, 0), (71, 77, 0, 0), (1452, 77, 0, 0), (577, 78, 0, 0), (402, 78, 0, 0), (107, 78, 0, 0), (2294, 55, 0, 1), (2269, 55, 0, 1), (221, 55, 0, 1), (583, 55, 0, 1), (3776, 55, 0, 1), (4638, 55, 0, 1), (4639, 55, 0, 1), (3778, 55, 0, 1), (935, 55, 0, 1), (90, 55, 0, 1), (2, 55, 0, 1), (1000, 55, 0, 1), (1388, 55, 0, 1), (1007, 55, 0, 1), (180, 55, 0, 1), (3779, 55, 0, 1), (43, 55, 0, 1), (115, 55, 0, 1), (2179, 55, 0, 1), (1085, 55, 0, 1), (2301, 55, 0, 1), (7, 55, 0, 1), (2256, 55, 0, 1), (2667, 55, 0, 1), (3780, 55, 0, 1), (1190, 55, 0, 1), (2617, 55, 0, 1), (25, 55, 0, 1), (61, 55, 0, 1), (2578, 55, 0, 1), (4, 55, 0, 1), (3781, 55, 0, 1), (71, 55, 0, 1), (2502, 55, 0, 1), (2220, 55, 0, 1), (3782, 55, 0, 1), (2537, 55, 0, 1), (2492, 55, 0, 1), (1429, 55, 0, 1), (3567, 55, 0, 1), (2437, 55, 0, 1), (3783, 55, 0, 1), (254, 55, 0, 1), (1098, 55, 0, 1), (3273, 55, 0, 1), (124, 55, 0, 1), (219, 55, 0, 1), (292, 55, 0, 1), (192, 55, 0, 1), (3784, 55, 0, 1), (3785, 55, 0, 1), (2794, 55, 0, 1), (3786, 55, 0, 1), (425, 55, 0, 1), (1938, 55, 0, 1), (3787, 55, 0, 1), (766, 55, 0, 1), (3788, 55, 0, 1), (676, 55, 0, 1), (3789, 55, 0, 1), (1202, 55, 0, 1), (3790, 55, 0, 1), (196, 55, 0, 1), (3791, 55, 0, 1), (3792, 55, 0, 1), (452, 55, 0, 1), (216, 55, 0, 1), (3793, 55, 0, 1), (225, 55, 0, 1), (801, 55, 0, 1), (39, 55, 0, 1), (3794, 55, 0, 1), (615, 55, 0, 1), (2514, 55, 0, 1), (2975, 55, 0, 1), (2305, 55, 0, 1), (3795, 55, 0, 1), (389, 55, 0, 1), (3796, 55, 0, 1), (2918, 55, 0, 1), (3797, 55, 0, 1), (366, 55, 0, 1), (3798, 55, 0, 1), (3799, 55, 0, 1), (38, 55, 0, 1), (3800, 55, 0, 1), (2633, 55, 0, 1), (3084, 55, 0, 1), (165, 55, 0, 1), (1821, 55, 0, 1), (3801, 55, 0, 1), (1014, 55, 0, 1), (3802, 55, 0, 1), (3803, 55, 0, 1), (92, 55, 0, 1), (1256, 55, 0, 1), (107, 55, 0, 1), (3804, 55, 0, 1), (3805, 55, 0, 1), (3806, 55, 0, 1), (3807, 55, 0, 1), (3808, 55, 0, 1), (3218, 55, 0, 1), (2682, 55, 0, 1), (3809, 55, 0, 1), (1760, 55, 0, 1), (2211, 55, 0, 1), (67, 55, 0, 1), (171, 55, 0, 1), (3810, 55, 0, 1), (3811, 55, 0, 1), (3812, 55, 0, 1), (3813, 55, 0, 1), (142, 55, 0, 1), (1898, 55, 0, 1), (407, 55, 0, 1), (2168, 55, 0, 1), (3814, 55, 0, 1), (178, 55, 0, 1), (3815, 55, 0, 1), (154, 55, 0, 1), (77, 55, 0, 1), (3286, 55, 0, 1), (63, 55, 0, 1), (3816, 55, 0, 1), (3817, 55, 0, 1), (3818, 55, 0, 1), (2158, 55, 0, 1), (144, 55, 0, 1), (2344, 55, 0, 1), (2417, 55, 0, 1), (3143, 55, 0, 1), (3819, 55, 0, 1), (160, 55, 0, 1), (3820, 55, 0, 1), (495, 55, 0, 1), (457, 55, 0, 1), (3732, 55, 0, 1), (3733, 55, 0, 1), (3734, 55, 0, 1), (3735, 55, 0, 1), (3736, 55, 0, 1), (2294, 56, 0, 1), (3273, 56, 0, 1), (4640, 56, 0, 1), (4641, 56, 0, 1), (2179, 56, 0, 1), (1087, 56, 0, 1), (1190, 56, 0, 1), (3823, 56, 0, 1), (293, 56, 0, 1), (1939, 56, 0, 1), (938, 56, 0, 1), (3824, 56, 0, 1), (180, 56, 0, 1), (773, 56, 0, 1), (7, 56, 0, 1), (3672, 56, 0, 1), (43, 56, 0, 1), (567, 56, 0, 1), (30, 56, 0, 1), (3825, 56, 0, 1), (3826, 56, 0, 1), (634, 56, 0, 1), (221, 56, 0, 1), (2689, 56, 0, 1), (160, 56, 0, 1), (3827, 56, 0, 1), (676, 56, 0, 1), (537, 56, 0, 1), (2285, 56, 0, 1), (3828, 56, 0, 1), (3829, 56, 0, 1), (2968, 56, 0, 1), (3830, 56, 0, 1), (2255, 56, 0, 1), (3348, 56, 0, 1), (2234, 56, 0, 1), (3831, 56, 0, 1), (444, 56, 0, 1), (3832, 56, 0, 1), (3184, 56, 0, 1), (1377, 56, 0, 1), (2743, 56, 0, 1), (3833, 56, 0, 1), (2220, 56, 0, 1), (844, 56, 0, 1), (1021, 56, 0, 1), (2333, 56, 0, 1), (3834, 56, 0, 1), (3134, 56, 0, 1), (3835, 56, 0, 1), (2838, 56, 0, 1), (3836, 56, 0, 1), (253, 56, 0, 1), (1912, 56, 0, 1), (2643, 56, 0, 1), (607, 56, 0, 1), (196, 56, 0, 1), (3837, 56, 0, 1), (3838, 56, 0, 1), (1261, 56, 0, 1), (202, 56, 0, 1), (3397, 56, 0, 1), (2301, 56, 0, 1), (2628, 56, 0, 1), (3839, 56, 0, 1), (3840, 56, 0, 1), (3320, 56, 0, 1), (1501, 56, 0, 1), (3841, 56, 0, 1), (3842, 56, 0, 1), (3108, 56, 0, 1), (3109, 56, 0, 1), (3843, 56, 0, 1), (193, 56, 0, 1), (797, 56, 0, 1), (3844, 56, 0, 1), (3845, 56, 0, 1), (466, 56, 0, 1), (2168, 56, 0, 1), (606, 56, 0, 1), (37, 56, 0, 1), (1157, 56, 0, 1), (3846, 56, 0, 1), (3074, 56, 0, 1), (67, 56, 0, 1), (3847, 56, 0, 1), (2259, 56, 0, 1), (3848, 56, 0, 1), (3849, 56, 0, 1), (357, 56, 0, 1), (2318, 56, 0, 1), (3850, 56, 0, 1), (3851, 56, 0, 1), (2417, 56, 0, 1), (3787, 56, 0, 1), (2226, 56, 0, 1), (2170, 56, 0, 1), (3852, 56, 0, 1), (263, 56, 0, 1), (1898, 56, 0, 1), (171, 56, 0, 1), (633, 56, 0, 1), (801, 56, 0, 1), (920, 56, 0, 1), (17, 56, 0, 1), (1044, 56, 0, 1), (660, 56, 0, 1), (3853, 56, 0, 1), (3854, 56, 0, 1), (3855, 56, 0, 1), (3051, 56, 0, 1), (389, 56, 0, 1), (272, 56, 0, 1), (3856, 56, 0, 1), (3819, 56, 0, 1), (128, 56, 0, 1), (425, 56, 0, 1), (89, 56, 0, 1), (2183, 56, 0, 1), (3189, 56, 0, 1), (92, 56, 0, 1), (75, 56, 0, 1), (3677, 56, 0, 1), (3857, 56, 0, 1), (2691, 56, 0, 1), (3858, 56, 0, 1), (3394, 56, 0, 1), (852, 56, 0, 1), (2542, 56, 0, 1), (2344, 56, 0, 1), (90, 56, 0, 1), (3859, 56, 0, 1), (2658, 56, 0, 1), (2529, 56, 0, 1), (385, 56, 0, 1), (469, 56, 0, 1), (539, 56, 0, 1), (3860, 56, 0, 1), (1688, 56, 0, 1), (3208, 56, 0, 1), (695, 56, 0, 1), (3861, 56, 0, 1), (1673, 56, 0, 1), (12, 56, 0, 1), (3862, 56, 0, 1), (251, 56, 0, 1), (2288, 56, 0, 1), (3863, 56, 0, 1), (71, 56, 0, 1), (3864, 56, 0, 1), (2441, 56, 0, 1), (3098, 56, 0, 1), (3865, 56, 0, 1), (172, 56, 0, 1), (3866, 56, 0, 1), (118, 56, 0, 1), (115, 56, 0, 1), (3867, 56, 0, 1), (3868, 56, 0, 1), (3869, 56, 0, 1), (120, 56, 0, 1), (1089, 56, 0, 1), (3870, 56, 0, 1), (3871, 56, 0, 1), (178, 56, 0, 1), (222, 56, 0, 1), (3872, 56, 0, 1), (3873, 56, 0, 1), (3874, 56, 0, 1), (3875, 56, 0, 1), (3876, 56, 0, 1), (124, 56, 0, 1), (3877, 56, 0, 1), (356, 56, 0, 1), (3878, 56, 0, 1), (148, 56, 0, 1), (3879, 56, 0, 1), (3880, 56, 0, 1), (28, 56, 0, 1), (3081, 56, 0, 1), (3881, 56, 0, 1), (3882, 56, 0, 1), (482, 56, 0, 1), (3883, 56, 0, 1), (495, 56, 0, 1), (2321, 56, 0, 1), (2642, 56, 0, 1), (3460, 56, 0, 1), (2660, 56, 0, 1), (2278, 56, 0, 1), (3308, 56, 0, 1), (2171, 56, 0, 1), (2304, 56, 0, 1), (8, 56, 0, 1), (614, 56, 0, 1), (3884, 56, 0, 1), (3885, 56, 0, 1), (250, 56, 0, 1), (3886, 56, 0, 1), (3887, 56, 0, 1), (3888, 56, 0, 1), (3032, 56, 0, 1), (3066, 56, 0, 1), (3821, 56, 0, 1), (2765, 56, 0, 1), (1418, 56, 0, 1), (3889, 56, 0, 1), (2160, 56, 0, 1), (3367, 56, 0, 1), (3890, 56, 0, 1), (204, 56, 0, 1), (165, 56, 0, 1), (2485, 56, 0, 1), (3891, 56, 0, 1), (3892, 56, 0, 1), (3893, 56, 0, 1), (140, 56, 0, 1), (3894, 56, 0, 1), (3895, 56, 0, 1), (3896, 56, 0, 1), (3897, 56, 0, 1), (449, 56, 0, 1), (3279, 56, 0, 1), (2509, 56, 0, 1), (3898, 56, 0, 1), (192, 56, 0, 1), (21, 56, 0, 1), (2607, 56, 0, 1), (3899, 56, 0, 1), (151, 56, 0, 1), (2174, 56, 0, 1), (3430, 56, 0, 1), (3900, 56, 0, 1), (3901, 56, 0, 1), (3902, 56, 0, 1), (3903, 56, 0, 1), (394, 56, 0, 1), (3797, 56, 0, 1), (2373, 56, 0, 1), (54, 56, 0, 1), (63, 56, 0, 1), (3904, 56, 0, 1), (3905, 56, 0, 1), (3906, 56, 0, 1), (3598, 56, 0, 1), (3907, 56, 0, 1), (3908, 56, 0, 1), (3909, 56, 0, 1), (3910, 56, 0, 1), (2340, 56, 0, 1), (3911, 56, 0, 1), (2462, 56, 0, 1), (393, 56, 0, 1), (183, 56, 0, 1), (135, 56, 0, 1), (38, 56, 0, 1), (2633, 56, 0, 1), (3732, 56, 0, 1), (3733, 56, 0, 1), (3734, 56, 0, 1), (3735, 56, 0, 1), (3736, 56, 0, 1), (2294, 57, 0, 1), (3804, 57, 0, 1), (4642, 57, 0, 1), (4643, 57, 0, 1), (615, 57, 0, 1), (3331, 57, 0, 1), (137, 57, 0, 1), (3914, 57, 0, 1), (3915, 57, 0, 1), (3916, 57, 0, 1), (797, 57, 0, 1), (3917, 57, 0, 1), (3918, 57, 0, 1), (3919, 57, 0, 1), (957, 57, 0, 1), (3920, 57, 0, 1), (157, 57, 0, 1), (144, 57, 0, 1), (676, 57, 0, 1), (3921, 57, 0, 1), (3922, 57, 0, 1), (3923, 57, 0, 1), (7, 57, 0, 1), (1085, 57, 0, 1), (505, 57, 0, 1), (2513, 57, 0, 1), (567, 57, 0, 1), (3924, 57, 0, 1), (2982, 57, 0, 1), (385, 57, 0, 1), (3925, 57, 0, 1), (3926, 57, 0, 1), (373, 57, 0, 1), (82, 57, 0, 1), (3927, 57, 0, 1), (2457, 57, 0, 1), (3928, 57, 0, 1), (3929, 57, 0, 1), (292, 57, 0, 1), (2521, 57, 0, 1), (3930, 57, 0, 1), (3931, 57, 0, 1), (3932, 57, 0, 1), (3933, 57, 0, 1), (3934, 57, 0, 1), (3935, 57, 0, 1), (484, 57, 0, 1), (195, 57, 0, 1), (3104, 57, 0, 1), (160, 57, 0, 1), (3936, 57, 0, 1), (196, 57, 0, 1), (444, 57, 0, 1), (3937, 57, 0, 1), (771, 57, 0, 1), (3938, 57, 0, 1), (3939, 57, 0, 1), (3940, 57, 0, 1), (3045, 57, 0, 1), (10, 57, 0, 1), (197, 57, 0, 1), (301, 57, 0, 1), (2149, 57, 0, 1), (176, 57, 0, 1), (3941, 57, 0, 1), (2837, 57, 0, 1), (2301, 57, 0, 1), (92, 57, 0, 1), (1256, 57, 0, 1), (2340, 57, 0, 1), (2059, 57, 0, 1), (482, 57, 0, 1), (2269, 57, 0, 1), (3942, 57, 0, 1), (3943, 57, 0, 1), (30, 57, 0, 1), (222, 57, 0, 1), (227, 57, 0, 1), (3944, 57, 0, 1), (3912, 57, 0, 1), (3945, 57, 0, 1), (357, 57, 0, 1), (1025, 57, 0, 1), (70, 57, 0, 1), (3946, 57, 0, 1), (43, 57, 0, 1), (2592, 57, 0, 1), (3947, 57, 0, 1), (3948, 57, 0, 1), (3441, 57, 0, 1), (2206, 57, 0, 1), (844, 57, 0, 1), (773, 57, 0, 1), (9, 57, 0, 1), (3949, 57, 0, 1), (253, 57, 0, 1), (2643, 57, 0, 1), (3950, 57, 0, 1), (1549, 57, 0, 1), (324, 57, 0, 1), (3951, 57, 0, 1), (1140, 57, 0, 1), (180, 57, 0, 1), (3952, 57, 0, 1), (3953, 57, 0, 1), (493, 57, 0, 1), (2586, 57, 0, 1), (147, 57, 0, 1), (2192, 57, 0, 1), (2160, 57, 0, 1), (54, 57, 0, 1), (39, 57, 0, 1), (3954, 57, 0, 1), (3955, 57, 0, 1), (3956, 57, 0, 1), (3957, 57, 0, 1), (119, 57, 0, 1), (2834, 57, 0, 1), (3564, 57, 0, 1), (3958, 57, 0, 1), (3959, 57, 0, 1), (660, 57, 0, 1), (3960, 57, 0, 1), (3961, 57, 0, 1), (3962, 57, 0, 1), (2443, 57, 0, 1), (389, 57, 0, 1), (3185, 57, 0, 1), (1261, 57, 0, 1), (3963, 57, 0, 1), (938, 57, 0, 1), (2957, 57, 0, 1), (402, 57, 0, 1), (1077, 57, 0, 1), (330, 57, 0, 1), (3448, 57, 0, 1), (3964, 57, 0, 1), (219, 57, 0, 1), (3965, 57, 0, 1), (107, 57, 0, 1), (3154, 57, 0, 1), (3966, 57, 0, 1), (3967, 57, 0, 1), (3968, 57, 0, 1), (695, 57, 0, 1), (1661, 57, 0, 1), (2168, 57, 0, 1), (3969, 57, 0, 1), (25, 57, 0, 1), (3970, 57, 0, 1), (142, 57, 0, 1), (3598, 57, 0, 1), (3971, 57, 0, 1), (2305, 57, 0, 1), (3972, 57, 0, 1), (3973, 57, 0, 1), (3974, 57, 0, 1), (290, 57, 0, 1), (3975, 57, 0, 1), (2183, 57, 0, 1), (673, 57, 0, 1), (3976, 57, 0, 1), (696, 57, 0, 1), (89, 57, 0, 1), (2158, 57, 0, 1), (3977, 57, 0, 1), (3241, 57, 0, 1), (2559, 57, 0, 1), (3978, 57, 0, 1), (2667, 57, 0, 1), (67, 57, 0, 1), (3979, 57, 0, 1), (3195, 57, 0, 1), (3732, 57, 0, 1), (3733, 57, 0, 1), (3734, 57, 0, 1), (3735, 57, 0, 1), (3736, 57, 0, 1), (2294, 58, 0, 1), (3980, 58, 0, 1), (4644, 58, 0, 1), (4645, 58, 0, 1), (3983, 58, 0, 1), (1169, 58, 0, 1), (2183, 58, 0, 1), (3257, 58, 0, 1), (1071, 58, 0, 1), (1072, 58, 0, 1), (43, 58, 0, 1), (3902, 58, 0, 1), (3984, 58, 0, 1), (3985, 58, 0, 1), (773, 58, 0, 1), (144, 58, 0, 1), (3986, 58, 0, 1), (3987, 58, 0, 1), (1851, 58, 0, 1), (3329, 58, 0, 1), (389, 58, 0, 1), (2234, 58, 0, 1), (3988, 58, 0, 1), (3598, 58, 0, 1), (164, 58, 0, 1), (9, 58, 0, 1), (240, 58, 0, 1), (3189, 58, 0, 1), (3706, 58, 0, 1), (3989, 58, 0, 1), (3990, 58, 0, 1), (3191, 58, 0, 1), (3991, 58, 0, 1), (3156, 58, 0, 1), (633, 58, 0, 1), (2553, 58, 0, 1), (449, 58, 0, 1), (7, 58, 0, 1), (3992, 58, 0, 1), (312, 58, 0, 1), (3993, 58, 0, 1), (178, 58, 0, 1), (2769, 58, 0, 1), (128, 58, 0, 1), (1515, 58, 0, 1), (2461, 58, 0, 1), (1157, 58, 0, 1), (71, 58, 0, 1), (3994, 58, 0, 1), (2649, 58, 0, 1), (607, 58, 0, 1), (2158, 58, 0, 1), (152, 58, 0, 1), (3995, 58, 0, 1), (3873, 58, 0, 1), (797, 58, 0, 1), (147, 58, 0, 1), (2646, 58, 0, 1), (92, 58, 0, 1), (2269, 58, 0, 1), (395, 58, 0, 1), (357, 58, 0, 1), (3996, 58, 0, 1), (3997, 58, 0, 1), (3998, 58, 0, 1), (838, 58, 0, 1), (2160, 58, 0, 1), (2643, 58, 0, 1), (817, 58, 0, 1), (3247, 58, 0, 1), (3348, 58, 0, 1), (2628, 58, 0, 1), (1281, 58, 0, 1), (2186, 58, 0, 1), (1014, 58, 0, 1), (3074, 58, 0, 1), (2443, 58, 0, 1), (1912, 58, 0, 1), (1056, 58, 0, 1), (3999, 58, 0, 1), (578, 58, 0, 1), (1261, 58, 0, 1), (3732, 58, 0, 1), (3733, 58, 0, 1), (3734, 58, 0, 1), (3735, 58, 0, 1), (3736, 58, 0, 1), (2294, 59, 0, 1), (495, 59, 0, 1), (2500, 59, 0, 1), (4646, 59, 0, 1), (4647, 59, 0, 1), (4001, 59, 0, 1), (2206, 59, 0, 1), (673, 59, 0, 1), (43, 59, 0, 1), (3041, 59, 0, 1), (3350, 59, 0, 1), (2204, 59, 0, 1), (160, 59, 0, 1), (2186, 59, 0, 1), (4002, 59, 0, 1), (4003, 59, 0, 1), (4004, 59, 0, 1), (7, 59, 0, 1), (4005, 59, 0, 1), (4006, 59, 0, 1), (3567, 59, 0, 1), (4007, 59, 0, 1), (1393, 59, 0, 1), (2746, 59, 0, 1), (4008, 59, 0, 1), (2476, 59, 0, 1), (54, 59, 0, 1), (681, 59, 0, 1), (4009, 59, 0, 1), (251, 59, 0, 1), (195, 59, 0, 1), (4010, 59, 0, 1), (4011, 59, 0, 1), (676, 59, 0, 1), (1611, 59, 0, 1), (47, 59, 0, 1), (3484, 59, 0, 1), (1417, 59, 0, 1), (413, 59, 0, 1), (4012, 59, 0, 1), (38, 59, 0, 1), (3817, 59, 0, 1), (120, 59, 0, 1), (129, 59, 0, 1), (161, 59, 0, 1), (1418, 59, 0, 1), (135, 59, 0, 1), (3279, 59, 0, 1), (4013, 59, 0, 1), (4014, 59, 0, 1), (4015, 59, 0, 1), (4016, 59, 0, 1), (389, 59, 0, 1), (2183, 59, 0, 1), (2749, 59, 0, 1), (4017, 59, 0, 1), (539, 59, 0, 1), (4018, 59, 0, 1), (482, 59, 0, 1), (3920, 59, 0, 1), (92, 59, 0, 1), (4019, 59, 0, 1), (4020, 59, 0, 1), (4021, 59, 0, 1), (4022, 59, 0, 1), (366, 59, 0, 1), (3218, 59, 0, 1), (1244, 59, 0, 1), (442, 59, 0, 1), (3799, 59, 0, 1), (4023, 59, 0, 1), (2512, 59, 0, 1), (316, 59, 0, 1), (222, 59, 0, 1), (9, 59, 0, 1), (4024, 59, 0, 1), (2174, 59, 0, 1), (986, 59, 0, 1), (250, 59, 0, 1), (1548, 59, 0, 1), (4025, 59, 0, 1), (1039, 59, 0, 1), (4026, 59, 0, 1), (180, 59, 0, 1), (142, 59, 0, 1), (3360, 59, 0, 1), (118, 59, 0, 1), (3815, 59, 0, 1), (4027, 59, 0, 1), (4028, 59, 0, 1), (773, 59, 0, 1), (2556, 59, 0, 1), (4029, 59, 0, 1), (3189, 59, 0, 1), (253, 59, 0, 1), (393, 59, 0, 1), (4030, 59, 0, 1), (4031, 59, 0, 1), (550, 59, 0, 1), (4032, 59, 0, 1), (4033, 59, 0, 1), (21, 59, 0, 1), (476, 59, 0, 1), (196, 59, 0, 1), (466, 59, 0, 1), (4034, 59, 0, 1), (810, 59, 0, 1), (2597, 59, 0, 1), (4035, 59, 0, 1), (158, 59, 0, 1), (4036, 59, 0, 1), (4037, 59, 0, 1), (1533, 59, 0, 1), (4038, 59, 0, 1), (4039, 59, 0, 1), (3377, 59, 0, 1), (269, 59, 0, 1), (26, 59, 0, 1), (147, 59, 0, 1), (817, 59, 0, 1), (151, 59, 0, 1), (1168, 59, 0, 1), (2371, 59, 0, 1), (357, 59, 0, 1), (4040, 59, 0, 1), (4041, 59, 0, 1), (3804, 59, 0, 1), (2834, 59, 0, 1), (148, 59, 0, 1), (4042, 59, 0, 1), (2918, 59, 0, 1), (2361, 59, 0, 1), (1801, 59, 0, 1), (4043, 59, 0, 1), (25, 59, 0, 1), (1025, 59, 0, 1), (82, 59, 0, 1), (83, 59, 0, 1), (385, 59, 0, 1), (3914, 59, 0, 1), (4044, 59, 0, 1), (124, 59, 0, 1), (3732, 59, 0, 1), (3733, 59, 0, 1), (3734, 59, 0, 1), (3735, 59, 0, 1), (3736, 59, 0, 1), (2294, 60, 0, 1), (2743, 60, 0, 1), (2186, 60, 0, 1), (1014, 60, 0, 1), (4648, 60, 0, 1), (4649, 60, 0, 1), (1098, 60, 0, 1), (4047, 60, 0, 1), (2991, 60, 0, 1), (356, 60, 0, 1), (145, 60, 0, 1), (4048, 60, 0, 1), (43, 60, 0, 1), (4049, 60, 0, 1), (2183, 60, 0, 1), (1797, 60, 0, 1), (7, 60, 0, 1), (2775, 60, 0, 1), (4050, 60, 0, 1), (69, 60, 0, 1), (4051, 60, 0, 1), (4052, 60, 0, 1), (696, 60, 0, 1), (4053, 60, 0, 1), (2594, 60, 0, 1), (160, 60, 0, 1), (385, 60, 0, 1), (4054, 60, 0, 1), (92, 60, 0, 1), (2413, 60, 0, 1), (4055, 60, 0, 1), (202, 60, 0, 1), (2554, 60, 0, 1), (4056, 60, 0, 1), (1087, 60, 0, 1), (2682, 60, 0, 1), (4057, 60, 0, 1), (482, 60, 0, 1), (3282, 60, 0, 1), (4058, 60, 0, 1), (537, 60, 0, 1), (183, 60, 0, 1), (4059, 60, 0, 1), (279, 60, 0, 1), (2800, 60, 0, 1), (4060, 60, 0, 1), (4061, 60, 0, 1), (1075, 60, 0, 1), (4062, 60, 0, 1), (1256, 60, 0, 1), (4063, 60, 0, 1), (357, 60, 0, 1), (1154, 60, 0, 1), (3482, 60, 0, 1), (2718, 60, 0, 1), (4064, 60, 0, 1), (3430, 60, 0, 1), (54, 60, 0, 1), (1487, 60, 0, 1), (844, 60, 0, 1), (4065, 60, 0, 1), (1735, 60, 0, 1), (2185, 60, 0, 1), (4066, 60, 0, 1), (2918, 60, 0, 1), (1821, 60, 0, 1), (1047, 60, 0, 1), (2834, 60, 0, 1), (3804, 60, 0, 1), (2161, 60, 0, 1), (28, 60, 0, 1), (4067, 60, 0, 1), (495, 60, 0, 1), (2398, 60, 0, 1), (4068, 60, 0, 1), (676, 60, 0, 1), (197, 60, 0, 1), (128, 60, 0, 1), (4069, 60, 0, 1), (4070, 60, 0, 1), (3500, 60, 0, 1), (4071, 60, 0, 1), (36, 60, 0, 1), (4072, 60, 0, 1), (2131, 60, 0, 1), (4073, 60, 0, 1), (4074, 60, 0, 1), (3732, 60, 0, 1), (3733, 60, 0, 1), (3734, 60, 0, 1), (3735, 60, 0, 1), (3736, 60, 0, 1), (2294, 61, 0, 1), (2361, 61, 0, 1), (2186, 61, 0, 1), (4650, 61, 0, 1), (4651, 61, 0, 1), (180, 61, 0, 1), (773, 61, 0, 1), (2216, 61, 0, 1), (115, 61, 0, 1), (3394, 61, 0, 1), (838, 61, 0, 1), (2340, 61, 0, 1), (2500, 61, 0, 1), (3259, 61, 0, 1), (1014, 61, 0, 1), (4011, 61, 0, 1), (676, 61, 0, 1), (4077, 61, 0, 1), (3210, 61, 0, 1), (751, 61, 0, 1), (160, 61, 0, 1), (120, 61, 0, 1), (252, 61, 0, 1), (4078, 61, 0, 1), (899, 61, 0, 1), (4079, 61, 0, 1), (640, 61, 0, 1), (4080, 61, 0, 1), (43, 61, 0, 1), (118, 61, 0, 1), (4081, 61, 0, 1), (4082, 61, 0, 1), (69, 61, 0, 1), (4083, 61, 0, 1), (578, 61, 0, 1), (4084, 61, 0, 1), (2658, 61, 0, 1), (250, 61, 0, 1), (269, 61, 0, 1), (3999, 61, 0, 1), (4085, 61, 0, 1), (24, 61, 0, 1), (1481, 61, 0, 1), (4086, 61, 0, 1), (2732, 61, 0, 1), (4087, 61, 0, 1), (292, 61, 0, 1), (39, 61, 0, 1), (4088, 61, 0, 1), (2168, 61, 0, 1), (3801, 61, 0, 1), (1548, 61, 0, 1), (210, 61, 0, 1), (413, 61, 0, 1), (4036, 61, 0, 1), (2649, 61, 0, 1), (90, 61, 0, 1), (4089, 61, 0, 1), (4090, 61, 0, 1), (4091, 61, 0, 1), (4075, 61, 0, 1), (232, 61, 0, 1), (25, 61, 0, 1), (4092, 61, 0, 1), (3778, 61, 0, 1), (4093, 61, 0, 1), (4094, 61, 0, 1), (19, 61, 0, 1), (4095, 61, 0, 1), (3195, 61, 0, 1), (4096, 61, 0, 1), (4097, 61, 0, 1), (3799, 61, 0, 1), (4098, 61, 0, 1), (92, 61, 0, 1), (1218, 61, 0, 1), (4099, 61, 0, 1), (1740, 61, 0, 1), (4100, 61, 0, 1), (4101, 61, 0, 1), (4102, 61, 0, 1), (162, 61, 0, 1), (4103, 61, 0, 1), (4104, 61, 0, 1), (116, 61, 0, 1), (2183, 61, 0, 1), (3344, 61, 0, 1), (4105, 61, 0, 1), (4106, 61, 0, 1), (4107, 61, 0, 1), (3916, 61, 0, 1), (1261, 61, 0, 1), (251, 61, 0, 1), (4108, 61, 0, 1), (1157, 61, 0, 1), (83, 61, 0, 1), (158, 61, 0, 1), (610, 61, 0, 1), (4109, 61, 0, 1), (1418, 61, 0, 1), (58, 61, 0, 1), (4110, 61, 0, 1), (2476, 61, 0, 1), (4111, 61, 0, 1), (4008, 61, 0, 1), (4112, 61, 0, 1), (2918, 61, 0, 1), (4113, 61, 0, 1), (3732, 61, 0, 1), (3733, 61, 0, 1), (3734, 61, 0, 1), (3735, 61, 0, 1), (3736, 61, 0, 1), (2294, 62, 0, 1), (4114, 62, 0, 1), (2592, 62, 0, 1), (1801, 62, 0, 1), (4652, 62, 0, 1), (4653, 62, 0, 1), (1716, 62, 0, 1), (537, 62, 0, 1), (2459, 62, 0, 1), (12, 62, 0, 1), (482, 62, 0, 1), (673, 62, 0, 1), (202, 62, 0, 1), (254, 62, 0, 1), (4116, 62, 0, 1), (505, 62, 0, 1), (309, 62, 0, 1), (4117, 62, 0, 1), (3056, 62, 0, 1), (4118, 62, 0, 1), (43, 62, 0, 1), (4119, 62, 0, 1), (2183, 62, 0, 1), (4014, 62, 0, 1), (4120, 62, 0, 1), (3279, 62, 0, 1), (165, 62, 0, 1), (4121, 62, 0, 1), (2204, 62, 0, 1), (1820, 62, 0, 1), (2186, 62, 0, 1), (2301, 62, 0, 1), (92, 62, 0, 1), (204, 62, 0, 1), (4122, 62, 0, 1), (117, 62, 0, 1), (164, 62, 0, 1), (7, 62, 0, 1), (396, 62, 0, 1), (19, 62, 0, 1), (3983, 62, 0, 1), (2522, 62, 0, 1), (3189, 62, 0, 1), (1987, 62, 0, 1), (3034, 62, 0, 1), (38, 62, 0, 1), (4123, 62, 0, 1), (660, 62, 0, 1), (1407, 62, 0, 1), (676, 62, 0, 1), (852, 62, 0, 1), (607, 62, 0, 1), (196, 62, 0, 1), (2646, 62, 0, 1), (144, 62, 0, 1), (4124, 62, 0, 1), (2683, 62, 0, 1), (938, 62, 0, 1), (1163, 62, 0, 1), (672, 62, 0, 1), (4125, 62, 0, 1), (4126, 62, 0, 1), (188, 62, 0, 1), (888, 62, 0, 1), (2194, 62, 0, 1), (2439, 62, 0, 1), (844, 62, 0, 1), (4127, 62, 0, 1), (2561, 62, 0, 1), (4128, 62, 0, 1), (2593, 62, 0, 1), (469, 62, 0, 1), (61, 62, 0, 1), (817, 62, 0, 1), (4129, 62, 0, 1), (773, 62, 0, 1), (195, 62, 0, 1), (2413, 62, 0, 1), (4130, 62, 0, 1), (899, 62, 0, 1), (320, 62, 0, 1), (3390, 62, 0, 1), (4131, 62, 0, 1), (4132, 62, 0, 1), (578, 62, 0, 1), (1087, 62, 0, 1), (4048, 62, 0, 1), (4133, 62, 0, 1), (2426, 62, 0, 1), (2733, 62, 0, 1), (444, 62, 0, 1), (3063, 62, 0, 1), (4134, 62, 0, 1), (4135, 62, 0, 1), (4136, 62, 0, 1), (4137, 62, 0, 1), (1449, 62, 0, 1), (4138, 62, 0, 1), (2185, 62, 0, 1), (4139, 62, 0, 1), (3667, 62, 0, 1), (4140, 62, 0, 1), (4141, 62, 0, 1), (431, 62, 0, 1), (1189, 62, 0, 1), (67, 62, 0, 1), (4142, 62, 0, 1), (4143, 62, 0, 1), (4144, 62, 0, 1), (2443, 62, 0, 1), (1154, 62, 0, 1), (4145, 62, 0, 1), (269, 62, 0, 1), (205, 62, 0, 1), (160, 62, 0, 1), (1519, 62, 0, 1), (4146, 62, 0, 1), (3732, 62, 0, 1), (3733, 62, 0, 1), (3734, 62, 0, 1), (3735, 62, 0, 1), (3736, 62, 0, 1), (2294, 63, 0, 1), (4147, 63, 0, 1), (3076, 63, 0, 1), (4148, 63, 0, 1), (4654, 63, 0, 1), (1418, 63, 0, 1), (2642, 63, 0, 1), (495, 63, 0, 1), (844, 63, 0, 1), (3277, 63, 0, 1), (676, 63, 0, 1), (4150, 63, 0, 1), (4151, 63, 0, 1), (4152, 63, 0, 1), (2289, 63, 0, 1), (43, 63, 0, 1), (357, 63, 0, 1), (4153, 63, 0, 1), (2183, 63, 0, 1), (3649, 63, 0, 1), (2970, 63, 0, 1), (77, 63, 0, 1), (3946, 63, 0, 1), (250, 63, 0, 1), (4154, 63, 0, 1), (609, 63, 0, 1), (194, 63, 0, 1), (25, 63, 0, 1), (565, 63, 0, 1), (195, 63, 0, 1), (2361, 63, 0, 1), (24, 63, 0, 1), (2371, 63, 0, 1), (3847, 63, 0, 1), (2259, 63, 0, 1), (251, 63, 0, 1), (638, 63, 0, 1), (160, 63, 0, 1), (959, 63, 0, 1), (7, 63, 0, 1), (4155, 63, 0, 1), (62, 63, 0, 1), (2521, 63, 0, 1), (37, 63, 0, 1), (4156, 63, 0, 1), (4157, 63, 0, 1), (4158, 63, 0, 1), (3189, 63, 0, 1), (4159, 63, 0, 1), (2412, 63, 0, 1), (92, 63, 0, 1), (221, 63, 0, 1), (4160, 63, 0, 1), (4161, 63, 0, 1), (1280, 63, 0, 1), (2633, 63, 0, 1), (3236, 63, 0, 1), (67, 63, 0, 1), (3804, 63, 0, 1), (1441, 63, 0, 1), (3816, 63, 0, 1), (1039, 63, 0, 1), (2486, 63, 0, 1), (2206, 63, 0, 1), (3344, 63, 0, 1), (577, 63, 0, 1), (2779, 63, 0, 1), (3825, 63, 0, 1), (4162, 63, 0, 1), (3667, 63, 0, 1), (356, 63, 0, 1), (549, 63, 0, 1), (120, 63, 0, 1), (695, 63, 0, 1), (4163, 63, 0, 1), (4164, 63, 0, 1), (8, 63, 0, 1), (385, 63, 0, 1), (4165, 63, 0, 1), (2845, 63, 0, 1), (4166, 63, 0, 1), (4167, 63, 0, 1), (204, 63, 0, 1), (2234, 63, 0, 1), (938, 63, 0, 1), (81, 63, 0, 1), (3598, 63, 0, 1), (1429, 63, 0, 1), (292, 63, 0, 1), (2179, 63, 0, 1), (1526, 63, 0, 1), (4168, 63, 0, 1), (1630, 63, 0, 1), (4169, 63, 0, 1), (444, 63, 0, 1), (265, 63, 0, 1), (1114, 63, 0, 1), (205, 63, 0, 1), (2622, 63, 0, 1), (596, 63, 0, 1), (4170, 63, 0, 1), (4171, 63, 0, 1), (2529, 63, 0, 1), (3276, 63, 0, 1), (4172, 63, 0, 1), (3257, 63, 0, 1), (183, 63, 0, 1), (2974, 63, 0, 1), (142, 63, 0, 1), (773, 63, 0, 1), (4173, 63, 0, 1), (4174, 63, 0, 1), (253, 63, 0, 1), (4175, 63, 0, 1), (4176, 63, 0, 1), (407, 63, 0, 1), (4177, 63, 0, 1), (54, 63, 0, 1), (4178, 63, 0, 1), (4179, 63, 0, 1), (1874, 63, 0, 1), (1256, 63, 0, 1), (4180, 63, 0, 1), (4181, 63, 0, 1), (178, 63, 0, 1), (4182, 63, 0, 1), (387, 63, 0, 1), (4183, 63, 0, 1), (3732, 63, 0, 1), (3733, 63, 0, 1), (3734, 63, 0, 1), (3735, 63, 0, 1), (3736, 63, 0, 1), (2294, 64, 0, 1), (3185, 64, 0, 1), (3903, 64, 0, 1), (4655, 64, 0, 1), (4656, 64, 0, 1), (269, 64, 0, 1), (38, 64, 0, 1), (4185, 64, 0, 1), (26, 64, 0, 1), (4186, 64, 0, 1), (4187, 64, 0, 1), (145, 64, 0, 1), (4188, 64, 0, 1), (3638, 64, 0, 1), (452, 64, 0, 1), (1530, 64, 0, 1), (198, 64, 0, 1), (449, 64, 0, 1), (607, 64, 0, 1), (2592, 64, 0, 1), (4189, 64, 0, 1), (577, 64, 0, 1), (395, 64, 0, 1), (71, 64, 0, 1), (3797, 64, 0, 1), (4190, 64, 0, 1), (778, 64, 0, 1), (4191, 64, 0, 1), (4192, 64, 0, 1), (633, 64, 0, 1), (7, 64, 0, 1), (1084, 64, 0, 1), (43, 64, 0, 1), (4193, 64, 0, 1), (676, 64, 0, 1), (4194, 64, 0, 1), (136, 64, 0, 1), (505, 64, 0, 1), (3506, 64, 0, 1), (4195, 64, 0, 1), (3320, 64, 0, 1), (195, 64, 0, 1), (216, 64, 0, 1), (1261, 64, 0, 1), (4196, 64, 0, 1), (282, 64, 0, 1), (4197, 64, 0, 1), (160, 64, 0, 1), (2189, 64, 0, 1), (196, 64, 0, 1), (180, 64, 0, 1), (4198, 64, 0, 1), (4199, 64, 0, 1), (3564, 64, 0, 1), (959, 64, 0, 1), (394, 64, 0, 1), (3732, 64, 0, 1), (3733, 64, 0, 1), (3734, 64, 0, 1), (3735, 64, 0, 1), (3736, 64, 0, 1), (2294, 65, 0, 1), (2743, 65, 0, 1), (4657, 65, 0, 1), (4658, 65, 0, 1), (4200, 65, 0, 1), (222, 65, 0, 1), (2811, 65, 0, 1), (128, 65, 0, 1), (444, 65, 0, 1), (2256, 65, 0, 1), (773, 65, 0, 1), (4202, 65, 0, 1), (1418, 65, 0, 1), (2457, 65, 0, 1), (1877, 65, 0, 1), (4203, 65, 0, 1), (567, 65, 0, 1), (663, 65, 0, 1), (118, 65, 0, 1), (2269, 65, 0, 1), (195, 65, 0, 1), (90, 65, 0, 1), (1637, 65, 0, 1), (4204, 65, 0, 1), (251, 65, 0, 1), (402, 65, 0, 1), (1566, 65, 0, 1), (196, 65, 0, 1), (92, 65, 0, 1), (183, 65, 0, 1), (4205, 65, 0, 1), (43, 65, 0, 1), (3367, 65, 0, 1), (165, 65, 0, 1), (3315, 65, 0, 1), (449, 65, 0, 1), (2170, 65, 0, 1), (240, 65, 0, 1), (642, 65, 0, 1), (3189, 65, 0, 1), (318, 65, 0, 1), (585, 65, 0, 1), (4206, 65, 0, 1), (4207, 65, 0, 1), (63, 65, 0, 1), (37, 65, 0, 1), (357, 65, 0, 1), (1548, 65, 0, 1), (71, 65, 0, 1), (2160, 65, 0, 1), (253, 65, 0, 1), (4208, 65, 0, 1), (4209, 65, 0, 1), (4210, 65, 0, 1), (4211, 65, 0, 1), (852, 65, 0, 1), (274, 65, 0, 1), (655, 65, 0, 1), (280, 65, 0, 1), (395, 65, 0, 1), (2193, 65, 0, 1), (4212, 65, 0, 1), (2206, 65, 0, 1), (202, 65, 0, 1), (389, 65, 0, 1), (385, 65, 0, 1), (844, 65, 0, 1), (3415, 65, 0, 1), (4213, 65, 0, 1), (4214, 65, 0, 1), (1501, 65, 0, 1), (2183, 65, 0, 1), (3331, 65, 0, 1), (2371, 65, 0, 1), (443, 65, 0, 1), (164, 65, 0, 1), (2589, 65, 0, 1), (1154, 65, 0, 1), (2185, 65, 0, 1), (120, 65, 0, 1), (4215, 65, 0, 1), (2577, 65, 0, 1), (1999, 65, 0, 1), (4216, 65, 0, 1), (673, 65, 0, 1), (160, 65, 0, 1), (2918, 65, 0, 1), (356, 65, 0, 1), (1107, 65, 0, 1), (77, 65, 0, 1), (4217, 65, 0, 1), (620, 65, 0, 1), (2343, 65, 0, 1), (3208, 65, 0, 1), (2168, 65, 0, 1), (935, 65, 0, 1), (4218, 65, 0, 1), (2736, 65, 0, 1), (3732, 65, 0, 1), (3733, 65, 0, 1), (3734, 65, 0, 1), (3735, 65, 0, 1), (3736, 65, 0, 1), (2294, 66, 0, 1), (2743, 66, 0, 1), (2919, 66, 0, 1), (2186, 66, 0, 1), (4659, 66, 0, 1), (4660, 66, 0, 1), (673, 66, 0, 1), (118, 66, 0, 1), (650, 66, 0, 1), (264, 66, 0, 1), (4220, 66, 0, 1), (43, 66, 0, 1), (202, 66, 0, 1), (1797, 66, 0, 1), (25, 66, 0, 1), (4221, 66, 0, 1), (3210, 66, 0, 1), (751, 66, 0, 1), (160, 66, 0, 1), (2732, 66, 0, 1), (4087, 66, 0, 1), (120, 66, 0, 1), (3823, 66, 0, 1), (157, 66, 0, 1), (3627, 66, 0, 1), (4222, 66, 0, 1), (1662, 66, 0, 1), (415, 66, 0, 1), (4223, 66, 0, 1), (4224, 66, 0, 1), (4225, 66, 0, 1), (77, 66, 0, 1), (4226, 66, 0, 1), (4227, 66, 0, 1), (1544, 66, 0, 1), (7, 66, 0, 1), (4228, 66, 0, 1), (3279, 66, 0, 1), (4229, 66, 0, 1), (4230, 66, 0, 1), (4231, 66, 0, 1), (4232, 66, 0, 1), (2206, 66, 0, 1), (144, 66, 0, 1), (3093, 66, 0, 1), (4233, 66, 0, 1), (263, 66, 0, 1), (2658, 66, 0, 1), (4234, 66, 0, 1), (4235, 66, 0, 1), (4088, 66, 0, 1), (4236, 66, 0, 1), (2746, 66, 0, 1), (1075, 66, 0, 1), (2335, 66, 0, 1), (3946, 66, 0, 1), (1874, 66, 0, 1), (1203, 66, 0, 1), (2638, 66, 0, 1), (4237, 66, 0, 1), (210, 66, 0, 1), (2183, 66, 0, 1), (164, 66, 0, 1), (320, 66, 0, 1), (2354, 66, 0, 1), (162, 66, 0, 1), (2918, 66, 0, 1), (4238, 66, 0, 1), (2181, 66, 0, 1), (4035, 66, 0, 1), (219, 66, 0, 1), (676, 66, 0, 1), (4239, 66, 0, 1), (3914, 66, 0, 1), (1148, 66, 0, 1), (4020, 66, 0, 1), (773, 66, 0, 1), (627, 66, 0, 1), (797, 66, 0, 1), (3359, 66, 0, 1), (92, 66, 0, 1), (633, 66, 0, 1), (2892, 66, 0, 1), (920, 66, 0, 1), (3804, 66, 0, 1), (124, 66, 0, 1), (4240, 66, 0, 1), (4241, 66, 0, 1), (505, 66, 0, 1), (136, 66, 0, 1), (38, 66, 0, 1), (3999, 66, 0, 1), (2170, 66, 0, 1), (4242, 66, 0, 1), (3177, 66, 0, 1), (466, 66, 0, 1), (258, 66, 0, 1), (4041, 66, 0, 1), (4243, 66, 0, 1), (66, 66, 0, 1), (1087, 66, 0, 1), (3930, 66, 0, 1), (292, 66, 0, 1), (4244, 66, 0, 1), (3237, 66, 0, 1), (1190, 66, 0, 1), (4245, 66, 0, 1), (4246, 66, 0, 1), (3470, 66, 0, 1), (71, 66, 0, 1), (3873, 66, 0, 1), (28, 66, 0, 1), (539, 66, 0, 1), (70, 66, 0, 1), (2991, 66, 0, 1), (1014, 66, 0, 1), (4247, 66, 0, 1), (3817, 66, 0, 1), (3282, 66, 0, 1), (4248, 66, 0, 1), (3984, 66, 0, 1), (1987, 66, 0, 1), (1056, 66, 0, 1), (2797, 66, 0, 1), (2553, 66, 0, 1), (357, 66, 0, 1), (4249, 66, 0, 1), (3063, 66, 0, 1), (142, 66, 0, 1), (17, 66, 0, 1), (4250, 66, 0, 1), (1154, 66, 0, 1), (1631, 66, 0, 1), (2649, 66, 0, 1), (222, 66, 0, 1), (1552, 66, 0, 1), (4251, 66, 0, 1), (3732, 66, 0, 1), (3733, 66, 0, 1), (3734, 66, 0, 1), (3735, 66, 0, 1), (3736, 66, 0, 1), (2294, 67, 0, 1), (2743, 67, 0, 1), (1716, 67, 0, 1), (3757, 67, 0, 1), (3754, 67, 0, 1), (71, 67, 0, 1), (2131, 67, 0, 1), (4253, 67, 0, 1), (4254, 67, 0, 1), (673, 67, 0, 1), (3063, 67, 0, 1), (3166, 67, 0, 1), (2553, 67, 0, 1), (4255, 67, 0, 1), (4256, 67, 0, 1), (1288, 67, 0, 1), (4257, 67, 0, 1), (2183, 67, 0, 1), (3189, 67, 0, 1), (4258, 67, 0, 1), (124, 67, 0, 1), (2882, 67, 0, 1), (1168, 67, 0, 1), (676, 67, 0, 1), (147, 67, 0, 1), (951, 67, 0, 1), (180, 67, 0, 1), (2234, 67, 0, 1), (357, 67, 0, 1), (4259, 67, 0, 1), (142, 67, 0, 1), (4193, 67, 0, 1), (160, 67, 0, 1), (2592, 67, 0, 1), (2593, 67, 0, 1), (773, 67, 0, 1), (4260, 67, 0, 1), (2209, 67, 0, 1), (4261, 67, 0, 1), (4262, 67, 0, 1); INSERT INTO `search_keywords` VALUES (4263, 67, 0, 1), (817, 67, 0, 1), (4264, 67, 0, 1), (225, 67, 0, 1), (2373, 67, 0, 1), (4265, 67, 0, 1), (495, 67, 0, 1), (4004, 67, 0, 1), (407, 67, 0, 1), (4266, 67, 0, 1), (4267, 67, 0, 1), (574, 67, 0, 1), (1244, 67, 0, 1), (92, 67, 0, 1), (2757, 67, 0, 1), (2220, 67, 0, 1), (4268, 67, 0, 1), (4269, 67, 0, 1), (90, 67, 0, 1), (1170, 67, 0, 1), (4270, 67, 0, 1), (2417, 67, 0, 1), (2361, 67, 0, 1), (4271, 67, 0, 1), (3842, 67, 0, 1), (30, 67, 0, 1), (778, 67, 0, 1), (17, 67, 0, 1), (227, 67, 0, 1), (4272, 67, 0, 1), (1414, 67, 0, 1), (2247, 67, 0, 1), (4273, 67, 0, 1), (578, 67, 0, 1), (2255, 67, 0, 1), (1449, 67, 0, 1), (4274, 67, 0, 1), (4275, 67, 0, 1), (4116, 67, 0, 1), (4276, 67, 0, 1), (4277, 67, 0, 1), (164, 67, 0, 1), (4278, 67, 0, 1), (4279, 67, 0, 1), (633, 67, 0, 1), (4280, 67, 0, 1), (2770, 67, 0, 1), (4281, 67, 0, 1), (2646, 67, 0, 1), (43, 67, 0, 1), (4282, 67, 0, 1), (4283, 67, 0, 1), (4284, 67, 0, 1), (2437, 67, 0, 1), (4285, 67, 0, 1), (77, 67, 0, 1), (2182, 67, 0, 1), (4286, 67, 0, 1), (4287, 67, 0, 1), (7, 67, 0, 1), (4288, 67, 0, 1), (4289, 67, 0, 1), (627, 67, 0, 1), (1256, 67, 0, 1), (4290, 67, 0, 1), (1044, 67, 0, 1), (4291, 67, 0, 1), (4292, 67, 0, 1), (642, 67, 0, 1), (193, 67, 0, 1), (3088, 67, 0, 1), (2283, 67, 0, 1), (4293, 67, 0, 1), (4294, 67, 0, 1), (446, 67, 0, 1), (4295, 67, 0, 1), (4296, 67, 0, 1), (76, 67, 0, 1), (24, 67, 0, 1), (797, 67, 0, 1), (4297, 67, 0, 1), (2321, 67, 0, 1), (364, 67, 0, 1), (4298, 67, 0, 1), (526, 67, 0, 1), (3638, 67, 0, 1), (4299, 67, 0, 1), (4300, 67, 0, 1), (1904, 67, 0, 1), (3817, 67, 0, 1), (2792, 67, 0, 1), (4301, 67, 0, 1), (3869, 67, 0, 1), (4302, 67, 0, 1), (4303, 67, 0, 1), (3799, 67, 0, 1), (4304, 67, 0, 1), (4305, 67, 0, 1), (2446, 67, 0, 1), (4025, 67, 0, 1), (197, 67, 0, 1), (3906, 67, 0, 1), (482, 67, 0, 1), (2586, 67, 0, 1), (265, 67, 0, 1), (4306, 67, 0, 1), (3381, 67, 0, 1), (3732, 67, 0, 1), (3733, 67, 0, 1), (3734, 67, 0, 1), (3735, 67, 0, 1), (3736, 67, 0, 1), (2294, 68, 0, 1), (3817, 68, 0, 1), (4661, 68, 0, 1), (4662, 68, 0, 1), (2792, 68, 0, 1), (1346, 68, 0, 1), (4048, 68, 0, 1), (43, 68, 0, 1), (357, 68, 0, 1), (77, 68, 0, 1), (4308, 68, 0, 1), (2463, 68, 0, 1), (944, 68, 0, 1), (120, 68, 0, 1), (951, 68, 0, 1), (71, 68, 0, 1), (7, 68, 0, 1), (4309, 68, 0, 1), (3082, 68, 0, 1), (2183, 68, 0, 1), (2553, 68, 0, 1), (4310, 68, 0, 1), (676, 68, 0, 1), (4311, 68, 0, 1), (673, 68, 0, 1), (25, 68, 0, 1), (4312, 68, 0, 1), (189, 68, 0, 1), (4313, 68, 0, 1), (633, 68, 0, 1), (1655, 68, 0, 1), (607, 68, 0, 1), (4314, 68, 0, 1), (1417, 68, 0, 1), (2234, 68, 0, 1), (444, 68, 0, 1), (4315, 68, 0, 1), (1665, 68, 0, 1), (4316, 68, 0, 1), (2488, 68, 0, 1), (1168, 68, 0, 1), (2577, 68, 0, 1), (3732, 68, 0, 1), (3733, 68, 0, 1), (3734, 68, 0, 1), (3735, 68, 0, 1), (3736, 68, 0, 1), (4317, 69, 0, 1), (4663, 69, 0, 1), (4639, 69, 0, 1), (385, 69, 0, 1), (2141, 69, 0, 1), (43, 69, 0, 1), (4319, 69, 0, 1), (20, 69, 0, 1), (4320, 69, 0, 1), (1098, 69, 0, 1), (4321, 69, 0, 1), (3320, 69, 0, 1), (4322, 69, 0, 1), (3926, 69, 0, 1), (2084, 69, 0, 1), (4323, 69, 0, 1), (69, 69, 0, 1), (4324, 69, 0, 1), (4325, 69, 0, 1), (115, 69, 0, 1), (39, 69, 0, 1), (158, 69, 0, 1), (2409, 69, 0, 1), (357, 69, 0, 1), (4326, 69, 0, 1), (160, 69, 0, 1), (3185, 69, 0, 1), (389, 69, 0, 1), (2361, 69, 0, 1), (4327, 69, 0, 1), (128, 69, 0, 1), (4328, 69, 0, 1), (4329, 69, 0, 1), (4330, 69, 0, 1), (1014, 69, 0, 1), (2220, 69, 0, 1), (4331, 69, 0, 1), (1921, 69, 0, 1), (1823, 69, 0, 1), (144, 69, 0, 1), (4332, 69, 0, 1), (1026, 69, 0, 1), (4333, 69, 0, 1), (4334, 69, 0, 1), (4335, 69, 0, 1), (4336, 69, 0, 1), (1418, 69, 0, 1), (2457, 69, 0, 1), (488, 69, 0, 1), (817, 69, 0, 1), (4337, 69, 0, 1), (4338, 69, 0, 1), (2269, 69, 0, 1), (172, 69, 0, 1), (90, 69, 0, 1), (37, 69, 0, 1), (452, 69, 0, 1), (4339, 69, 0, 1), (4340, 69, 0, 1), (25, 69, 0, 1), (292, 69, 0, 1), (2561, 69, 0, 1), (1333, 69, 0, 1), (605, 69, 0, 1), (4341, 69, 0, 1), (4342, 69, 0, 1), (28, 69, 0, 1), (4343, 69, 0, 1), (219, 69, 0, 1), (4344, 69, 0, 1), (4345, 69, 0, 1), (4346, 69, 0, 1), (2973, 69, 0, 1), (4347, 69, 0, 1), (2884, 69, 0, 1), (4348, 69, 0, 1), (2321, 69, 0, 1), (162, 69, 0, 1), (844, 69, 0, 1), (4349, 69, 0, 1), (4350, 69, 0, 1), (4351, 69, 0, 1), (4352, 69, 0, 1), (4353, 69, 0, 1), (4354, 69, 0, 1), (21, 69, 0, 1), (1000, 69, 0, 1), (4355, 69, 0, 1), (117, 69, 0, 1), (3923, 69, 0, 1), (4356, 69, 0, 1), (1594, 69, 0, 1), (4357, 69, 0, 1), (4358, 69, 0, 1), (4359, 69, 0, 1), (642, 69, 0, 1), (4360, 69, 0, 1), (4361, 69, 0, 1), (2698, 69, 0, 1), (578, 69, 0, 1), (4362, 69, 0, 1), (2306, 69, 0, 1), (4363, 69, 0, 1), (88, 69, 0, 1), (212, 69, 0, 1), (2765, 69, 0, 1), (3785, 69, 0, 1), (4364, 69, 0, 1), (4365, 69, 0, 1), (638, 69, 0, 1), (4366, 69, 0, 1), (1277, 69, 0, 1), (482, 69, 0, 1), (3088, 69, 0, 1), (2301, 69, 0, 1), (4367, 69, 0, 1), (4368, 69, 0, 1), (4369, 69, 0, 1), (4370, 69, 0, 1), (1077, 69, 0, 1), (1572, 69, 0, 1), (4371, 69, 0, 1), (584, 69, 0, 1), (1083, 69, 0, 1), (1193, 69, 0, 1), (4372, 69, 0, 1), (54, 69, 0, 1), (395, 69, 0, 1), (3963, 69, 0, 1), (4373, 69, 0, 1), (1519, 69, 0, 1), (4374, 69, 0, 1), (4375, 69, 0, 1), (2613, 69, 0, 1), (4376, 69, 0, 1), (4377, 69, 0, 1), (1260, 69, 0, 1), (2633, 69, 0, 1), (30, 69, 0, 1), (1407, 69, 0, 1), (4378, 69, 0, 1), (2441, 69, 0, 1), (444, 69, 0, 1), (4379, 69, 0, 1), (606, 69, 0, 1), (3732, 69, 0, 1), (3733, 69, 0, 1), (3734, 69, 0, 1), (3735, 69, 0, 1), (3736, 69, 0, 1), (2162, 70, 0, 1), (4664, 70, 0, 1), (4665, 70, 0, 1), (4381, 70, 0, 1), (7, 70, 0, 1), (2422, 70, 0, 1), (1143, 70, 0, 1), (37, 70, 0, 1), (1056, 70, 0, 1), (2185, 70, 0, 1), (2443, 70, 0, 1), (43, 70, 0, 1), (4117, 70, 0, 1), (4382, 70, 0, 1), (1675, 70, 0, 1), (4383, 70, 0, 1), (222, 70, 0, 1), (852, 70, 0, 1), (4384, 70, 0, 1), (71, 70, 0, 1), (2529, 70, 0, 1), (1154, 70, 0, 1), (4385, 70, 0, 1), (844, 70, 0, 1), (696, 70, 0, 1), (2158, 70, 0, 1), (4386, 70, 0, 1), (2660, 70, 0, 1), (1420, 70, 0, 1), (1077, 70, 0, 1), (2183, 70, 0, 1), (2189, 70, 0, 1), (1437, 70, 0, 1), (4387, 70, 0, 1), (4388, 70, 0, 1), (1692, 70, 0, 1), (2160, 70, 0, 1), (2204, 70, 0, 1), (797, 70, 0, 1), (4389, 70, 0, 1), (221, 70, 0, 1), (1268, 70, 0, 1), (4390, 70, 0, 1), (773, 70, 0, 1), (171, 70, 0, 1), (3847, 70, 0, 1), (647, 70, 0, 1), (4391, 70, 0, 1), (4392, 70, 0, 1), (4393, 70, 0, 1), (4394, 70, 0, 1), (54, 70, 0, 1), (42, 70, 0, 1), (4395, 70, 0, 1), (4396, 70, 0, 1), (3732, 70, 0, 1), (3733, 70, 0, 1), (3734, 70, 0, 1), (3735, 70, 0, 1), (3736, 70, 0, 1), (2294, 72, 0, 1), (2160, 72, 0, 1), (3753, 72, 0, 1), (3743, 72, 0, 1), (2643, 72, 0, 1), (1688, 72, 0, 1), (4398, 72, 0, 1), (443, 72, 0, 1), (4399, 72, 0, 1), (115, 72, 0, 1), (4400, 72, 0, 1), (357, 72, 0, 1), (607, 72, 0, 1), (4401, 72, 0, 1), (444, 72, 0, 1), (281, 72, 0, 1), (852, 72, 0, 1), (7, 72, 0, 1), (4402, 72, 0, 1), (2179, 72, 0, 1), (4403, 72, 0, 1), (2586, 72, 0, 1), (4404, 72, 0, 1), (4405, 72, 0, 1), (216, 72, 0, 1), (153, 72, 0, 1), (4406, 72, 0, 1), (2158, 72, 0, 1), (1874, 72, 0, 1), (1203, 72, 0, 1), (4407, 72, 0, 1), (1143, 72, 0, 1), (2649, 72, 0, 1), (4408, 72, 0, 1), (4409, 72, 0, 1), (316, 72, 0, 1), (189, 72, 0, 1), (1793, 72, 0, 1), (43, 72, 0, 1), (221, 72, 0, 1), (1281, 72, 0, 1), (402, 72, 0, 1), (1077, 72, 0, 1), (2844, 72, 0, 1), (577, 72, 0, 1), (673, 72, 0, 1), (250, 72, 0, 1), (356, 72, 0, 1), (4410, 72, 0, 1), (2186, 72, 0, 1), (2743, 72, 0, 1), (19, 72, 0, 1), (330, 72, 0, 1), (844, 72, 0, 1), (2950, 72, 0, 1), (4411, 72, 0, 1), (2234, 72, 0, 1), (196, 72, 0, 1), (1202, 72, 0, 1), (4412, 72, 0, 1), (523, 72, 0, 1), (615, 72, 0, 1), (2123, 72, 0, 1), (253, 72, 0, 1), (4413, 72, 0, 1), (10, 72, 0, 1), (676, 72, 0, 1), (4414, 72, 0, 1), (2949, 72, 0, 1), (2443, 72, 0, 1), (71, 72, 0, 1), (222, 72, 0, 1), (4190, 72, 0, 1), (2857, 72, 0, 1), (2183, 72, 0, 1), (2646, 72, 0, 1), (4330, 72, 0, 1), (922, 72, 0, 1), (2285, 72, 0, 1), (118, 72, 0, 1), (4415, 72, 0, 1), (318, 72, 0, 1), (2437, 72, 0, 1), (2502, 72, 0, 1), (479, 72, 0, 1), (4416, 72, 0, 1), (160, 72, 0, 1), (9, 72, 0, 1), (3036, 72, 0, 1), (3430, 72, 0, 1), (4417, 72, 0, 1), (2190, 72, 0, 1), (1074, 72, 0, 1), (251, 72, 0, 1), (638, 72, 0, 1), (4418, 72, 0, 1), (193, 72, 0, 1), (4419, 72, 0, 1), (69, 72, 0, 1), (4420, 72, 0, 1), (4421, 72, 0, 1), (4422, 72, 0, 1), (4087, 72, 0, 1), (164, 72, 0, 1), (204, 72, 0, 1), (773, 72, 0, 1), (4423, 72, 0, 1), (128, 72, 0, 1), (4424, 72, 0, 1), (663, 72, 0, 1), (4425, 72, 0, 1), (3903, 72, 0, 1), (475, 72, 0, 1), (977, 72, 0, 1), (2335, 72, 0, 1), (4426, 72, 0, 1), (3348, 72, 0, 1), (197, 72, 0, 1), (485, 72, 0, 1), (1071, 72, 0, 1), (4427, 72, 0, 1), (4428, 72, 0, 1), (3320, 72, 0, 1), (3732, 72, 0, 1), (3733, 72, 0, 1), (3734, 72, 0, 1), (3735, 72, 0, 1), (3736, 72, 0, 1), (2294, 73, 0, 1), (3307, 73, 0, 1), (2460, 73, 0, 1), (4666, 73, 0, 1), (4667, 73, 0, 1), (402, 73, 0, 1), (676, 73, 0, 1), (2577, 73, 0, 1), (235, 73, 0, 1), (2702, 73, 0, 1), (172, 73, 0, 1), (4430, 73, 0, 1), (253, 73, 0, 1), (4431, 73, 0, 1), (118, 73, 0, 1), (586, 73, 0, 1), (195, 73, 0, 1), (3481, 73, 0, 1), (196, 73, 0, 1), (2168, 73, 0, 1), (216, 73, 0, 1), (4432, 73, 0, 1), (7, 73, 0, 1), (1343, 73, 0, 1), (43, 73, 0, 1), (222, 73, 0, 1), (538, 73, 0, 1), (2185, 73, 0, 1), (4433, 73, 0, 1), (4025, 73, 0, 1), (2204, 73, 0, 1), (4434, 73, 0, 1), (4435, 73, 0, 1), (58, 73, 0, 1), (4436, 73, 0, 1), (120, 73, 0, 1), (4437, 73, 0, 1), (1801, 73, 0, 1), (1497, 73, 0, 1), (4438, 73, 0, 1), (2779, 73, 0, 1), (4439, 73, 0, 1), (3107, 73, 0, 1), (4440, 73, 0, 1), (2559, 73, 0, 1), (673, 73, 0, 1), (20, 73, 0, 1), (553, 73, 0, 1), (4441, 73, 0, 1), (4442, 73, 0, 1), (444, 73, 0, 1), (92, 73, 0, 1), (3184, 73, 0, 1), (72, 73, 0, 1), (4443, 73, 0, 1), (2524, 73, 0, 1), (4116, 73, 0, 1), (4444, 73, 0, 1), (3660, 73, 0, 1), (261, 73, 0, 1), (291, 73, 0, 1), (4445, 73, 0, 1), (4446, 73, 0, 1), (382, 73, 0, 1), (1509, 73, 0, 1), (4447, 73, 0, 1), (4448, 73, 0, 1), (3206, 73, 0, 1), (3378, 73, 0, 1), (2833, 73, 0, 1), (221, 73, 0, 1), (4449, 73, 0, 1), (628, 73, 0, 1), (206, 73, 0, 1), (171, 73, 0, 1), (357, 73, 0, 1), (77, 73, 0, 1), (607, 73, 0, 1), (3914, 73, 0, 1), (2502, 73, 0, 1), (4450, 73, 0, 1), (3049, 73, 0, 1), (2234, 73, 0, 1), (3381, 73, 0, 1), (192, 73, 0, 1), (513, 73, 0, 1), (4451, 73, 0, 1), (4452, 73, 0, 1), (4453, 73, 0, 1), (4454, 73, 0, 1), (743, 73, 0, 1), (4455, 73, 0, 1), (4456, 73, 0, 1), (4457, 73, 0, 1), (2513, 73, 0, 1), (263, 73, 0, 1), (4458, 73, 0, 1), (751, 73, 0, 1), (160, 73, 0, 1), (1566, 73, 0, 1), (142, 73, 0, 1), (488, 73, 0, 1), (4459, 73, 0, 1), (4460, 73, 0, 1), (452, 73, 0, 1), (81, 73, 0, 1), (158, 73, 0, 1), (4461, 73, 0, 1), (2222, 73, 0, 1), (550, 73, 0, 1), (3598, 73, 0, 1), (2174, 73, 0, 1), (696, 73, 0, 1), (260, 73, 0, 1), (852, 73, 0, 1), (4462, 73, 0, 1), (165, 73, 0, 1), (4463, 73, 0, 1), (2973, 73, 0, 1), (4464, 73, 0, 1), (671, 73, 0, 1), (4465, 73, 0, 1), (1005, 73, 0, 1), (2259, 73, 0, 1), (4466, 73, 0, 1), (4467, 73, 0, 1), (4468, 73, 0, 1), (63, 73, 0, 1), (1157, 73, 0, 1), (3786, 73, 0, 1), (202, 73, 0, 1), (4469, 73, 0, 1), (2721, 73, 0, 1), (2408, 73, 0, 1), (466, 73, 0, 1), (4470, 73, 0, 1), (4471, 73, 0, 1), (4472, 73, 0, 1), (766, 73, 0, 1), (3243, 73, 0, 1), (3405, 73, 0, 1), (4473, 73, 0, 1), (292, 73, 0, 1), (2257, 73, 0, 1), (4474, 73, 0, 1), (4475, 73, 0, 1), (38, 73, 0, 1), (4476, 73, 0, 1), (3189, 73, 0, 1), (4477, 73, 0, 1), (4478, 73, 0, 1), (4479, 73, 0, 1), (4480, 73, 0, 1), (280, 73, 0, 1), (47, 73, 0, 1), (1047, 73, 0, 1), (2651, 73, 0, 1), (3596, 73, 0, 1), (1026, 73, 0, 1), (3603, 73, 0, 1), (4481, 73, 0, 1), (2633, 73, 0, 1), (4482, 73, 0, 1), (4483, 73, 0, 1), (1878, 73, 0, 1), (8, 73, 0, 1), (4484, 73, 0, 1), (567, 73, 0, 1), (2514, 73, 0, 1), (4485, 73, 0, 1), (4486, 73, 0, 1), (1014, 73, 0, 1), (1606, 73, 0, 1), (479, 73, 0, 1), (4487, 73, 0, 1), (4488, 73, 0, 1), (4489, 73, 0, 1), (2474, 73, 0, 1), (1244, 73, 0, 1), (2567, 73, 0, 1), (457, 73, 0, 1), (4490, 73, 0, 1), (844, 73, 0, 1), (393, 73, 0, 1), (4491, 73, 0, 1), (4492, 73, 0, 1), (2046, 73, 0, 1), (2872, 73, 0, 1), (2462, 73, 0, 1), (2693, 73, 0, 1), (1637, 73, 0, 1), (137, 73, 0, 1), (4493, 73, 0, 1), (3732, 73, 0, 1), (3733, 73, 0, 1), (3734, 73, 0, 1), (3735, 73, 0, 1), (3736, 73, 0, 1), (2294, 74, 0, 1), (3928, 74, 0, 1), (3768, 74, 0, 1), (4668, 74, 0, 1), (2792, 74, 0, 1), (19, 74, 0, 1), (999, 74, 0, 1), (43, 74, 0, 1), (3930, 74, 0, 1), (28, 74, 0, 1), (4495, 74, 0, 1), (82, 74, 0, 1), (4496, 74, 0, 1), (4268, 74, 0, 1), (1010, 74, 0, 1), (1014, 74, 0, 1), (202, 74, 0, 1), (1261, 74, 0, 1), (3282, 74, 0, 1), (3595, 74, 0, 1), (385, 74, 0, 1), (221, 74, 0, 1), (3603, 74, 0, 1), (1548, 74, 0, 1), (405, 74, 0, 1), (7, 74, 0, 1), (4497, 74, 0, 1), (1673, 74, 0, 1), (4498, 74, 0, 1), (4499, 74, 0, 1), (3836, 74, 0, 1), (25, 74, 0, 1), (1487, 74, 0, 1), (537, 74, 0, 1), (4500, 74, 0, 1), (4501, 74, 0, 1), (189, 74, 0, 1), (67, 74, 0, 1), (862, 74, 0, 1), (655, 74, 0, 1), (341, 74, 0, 1), (330, 74, 0, 1), (3063, 74, 0, 1), (676, 74, 0, 1), (1017, 74, 0, 1), (1148, 74, 0, 1), (673, 74, 0, 1), (37, 74, 0, 1), (118, 74, 0, 1), (2330, 74, 0, 1), (4502, 74, 0, 1), (482, 74, 0, 1), (288, 74, 0, 1), (2532, 74, 0, 1), (2897, 74, 0, 1), (4503, 74, 0, 1), (4504, 74, 0, 1), (2552, 74, 0, 1), (4505, 74, 0, 1), (4506, 74, 0, 1), (4507, 74, 0, 1), (4508, 74, 0, 1), (549, 74, 0, 1), (650, 74, 0, 1), (120, 74, 0, 1), (2269, 74, 0, 1), (4509, 74, 0, 1), (2953, 74, 0, 1), (4510, 74, 0, 1), (107, 74, 0, 1), (2749, 74, 0, 1), (267, 74, 0, 1), (4511, 74, 0, 1), (216, 74, 0, 1), (222, 74, 0, 1), (2168, 74, 0, 1), (136, 74, 0, 1), (4512, 74, 0, 1), (4513, 74, 0, 1), (4514, 74, 0, 1), (4515, 74, 0, 1), (4516, 74, 0, 1), (4517, 74, 0, 1), (292, 74, 0, 1), (280, 74, 0, 1), (162, 74, 0, 1), (586, 74, 0, 1), (4518, 74, 0, 1), (4519, 74, 0, 1), (642, 74, 0, 1), (444, 74, 0, 1), (627, 74, 0, 1), (493, 74, 0, 1), (2559, 74, 0, 1), (160, 74, 0, 1), (4520, 74, 0, 1), (1999, 74, 0, 1), (4521, 74, 0, 1), (4522, 74, 0, 1), (2507, 74, 0, 1), (4523, 74, 0, 1), (450, 74, 0, 1), (4524, 74, 0, 1), (2183, 74, 0, 1), (4525, 74, 0, 1), (54, 74, 0, 1), (2516, 74, 0, 1), (2604, 74, 0, 1), (449, 74, 0, 1), (4526, 74, 0, 1), (2351, 74, 0, 1), (2531, 74, 0, 1), (4527, 74, 0, 1), (706, 74, 0, 1), (2536, 74, 0, 1), (1000, 74, 0, 1), (4528, 74, 0, 1), (4529, 74, 0, 1), (648, 74, 0, 1), (1718, 74, 0, 1), (409, 74, 0, 1), (3184, 74, 0, 1), (4530, 74, 0, 1), (453, 74, 0, 1), (4531, 74, 0, 1), (2450, 74, 0, 1), (4532, 74, 0, 1), (4533, 74, 0, 1), (4534, 74, 0, 1), (195, 74, 0, 1), (39, 74, 0, 1), (196, 74, 0, 1), (3045, 74, 0, 1), (357, 74, 0, 1), (2194, 74, 0, 1), (578, 74, 0, 1), (1025, 74, 0, 1), (567, 74, 0, 1), (2349, 74, 0, 1), (2500, 74, 0, 1), (2356, 74, 0, 1), (4535, 74, 0, 1), (1195, 74, 0, 1), (2305, 74, 0, 1), (4536, 74, 0, 1), (1429, 74, 0, 1), (2254, 74, 0, 1), (103, 74, 0, 1), (844, 74, 0, 1), (393, 74, 0, 1), (4537, 74, 0, 1), (12, 74, 0, 1), (1640, 74, 0, 1), (2588, 74, 0, 1), (2577, 74, 0, 1), (436, 74, 0, 1), (636, 74, 0, 1), (197, 74, 0, 1), (4538, 74, 0, 1), (2876, 74, 0, 1), (251, 74, 0, 1), (212, 74, 0, 1), (475, 74, 0, 1), (2535, 74, 0, 1), (597, 74, 0, 1), (145, 74, 0, 1), (4539, 74, 0, 1), (584, 74, 0, 1), (2186, 74, 0, 1), (1098, 74, 0, 1), (4540, 74, 0, 1), (1973, 74, 0, 1), (4541, 74, 0, 1), (4542, 74, 0, 1), (158, 74, 0, 1), (180, 74, 0, 1), (4543, 74, 0, 1), (63, 74, 0, 1), (2557, 74, 0, 1), (4544, 74, 0, 1), (2561, 74, 0, 1), (4545, 74, 0, 1), (3492, 74, 0, 1), (147, 74, 0, 1), (4546, 74, 0, 1), (4547, 74, 0, 1), (3279, 74, 0, 1), (4548, 74, 0, 1), (2171, 74, 0, 1), (3732, 74, 0, 1), (3733, 74, 0, 1), (3734, 74, 0, 1), (3735, 74, 0, 1), (3736, 74, 0, 1), (2294, 75, 0, 1), (3514, 75, 0, 1), (4669, 75, 0, 1), (3765, 75, 0, 1), (2256, 75, 0, 1), (1524, 75, 0, 1), (394, 75, 0, 1), (43, 75, 0, 1), (2179, 75, 0, 1), (1035, 75, 0, 1), (1813, 75, 0, 1), (3902, 75, 0, 1), (4550, 75, 0, 1), (4551, 75, 0, 1), (216, 75, 0, 1), (4552, 75, 0, 1), (7, 75, 0, 1), (1355, 75, 0, 1), (4553, 75, 0, 1), (3195, 75, 0, 1), (1010, 75, 0, 1), (133, 75, 0, 1), (4554, 75, 0, 1), (128, 75, 0, 1), (30, 75, 0, 1), (1437, 75, 0, 1), (4555, 75, 0, 1), (114, 75, 0, 1), (2264, 75, 0, 1), (39, 75, 0, 1), (626, 75, 0, 1), (309, 75, 0, 1), (2204, 75, 0, 1), (4227, 75, 0, 1), (444, 75, 0, 1), (92, 75, 0, 1), (357, 75, 0, 1), (4401, 75, 0, 1), (25, 75, 0, 1), (144, 75, 0, 1), (4556, 75, 0, 1), (609, 75, 0, 1), (4557, 75, 0, 1), (3594, 75, 0, 1), (4558, 75, 0, 1), (4559, 75, 0, 1), (495, 75, 0, 1), (115, 75, 0, 1), (2206, 75, 0, 1), (4560, 75, 0, 1), (2211, 75, 0, 1), (4561, 75, 0, 1), (4266, 75, 0, 1), (1089, 75, 0, 1), (4562, 75, 0, 1), (1566, 75, 0, 1), (385, 75, 0, 1), (54, 75, 0, 1), (4563, 75, 0, 1), (2234, 75, 0, 1), (1637, 75, 0, 1), (402, 75, 0, 1), (3165, 75, 0, 1), (3795, 75, 0, 1), (183, 75, 0, 1), (1077, 75, 0, 1), (2248, 75, 0, 1), (605, 75, 0, 1), (3889, 75, 0, 1), (583, 75, 0, 1), (2141, 75, 0, 1), (1528, 75, 0, 1), (574, 75, 0, 1), (2160, 75, 0, 1), (3367, 75, 0, 1), (696, 75, 0, 1), (577, 75, 0, 1), (124, 75, 0, 1), (673, 75, 0, 1), (3974, 75, 0, 1), (136, 75, 0, 1), (1036, 75, 0, 1), (3712, 75, 0, 1), (2183, 75, 0, 1), (1261, 75, 0, 1), (2485, 75, 0, 1), (4564, 75, 0, 1), (165, 75, 0, 1), (221, 75, 0, 1), (2387, 75, 0, 1), (2413, 75, 0, 1), (2608, 75, 0, 1), (145, 75, 0, 1), (3582, 75, 0, 1), (4565, 75, 0, 1), (37, 75, 0, 1), (1427, 75, 0, 1), (320, 75, 0, 1), (431, 75, 0, 1), (147, 75, 0, 1), (4566, 75, 0, 1), (678, 75, 0, 1), (58, 75, 0, 1), (2884, 75, 0, 1), (2251, 75, 0, 1), (2495, 75, 0, 1), (63, 75, 0, 1), (1710, 75, 0, 1), (4567, 75, 0, 1), (4568, 75, 0, 1), (3095, 75, 0, 1), (3598, 75, 0, 1), (4569, 75, 0, 1), (3732, 75, 0, 1), (3733, 75, 0, 1), (3734, 75, 0, 1), (3735, 75, 0, 1), (3736, 75, 0, 1), (2294, 76, 0, 1), (1561, 76, 0, 1), (4670, 76, 0, 1), (3754, 76, 0, 1), (4570, 76, 0, 1), (120, 76, 0, 1), (4572, 76, 0, 1), (147, 76, 0, 1), (2230, 76, 0, 1), (2269, 76, 0, 1), (4573, 76, 0, 1), (90, 76, 0, 1), (4574, 76, 0, 1), (92, 76, 0, 1), (4575, 76, 0, 1), (160, 76, 0, 1), (539, 76, 0, 1), (450, 76, 0, 1), (142, 76, 0, 1), (2183, 76, 0, 1), (3522, 76, 0, 1), (7, 76, 0, 1), (676, 76, 0, 1), (4576, 76, 0, 1), (3816, 76, 0, 1), (1782, 76, 0, 1), (3139, 76, 0, 1), (938, 76, 0, 1), (4577, 76, 0, 1), (2428, 76, 0, 1), (647, 76, 0, 1), (4578, 76, 0, 1), (3189, 76, 0, 1), (1497, 76, 0, 1), (152, 76, 0, 1), (3664, 76, 0, 1), (4042, 76, 0, 1), (4579, 76, 0, 1), (222, 76, 0, 1), (4580, 76, 0, 1), (193, 76, 0, 1), (3034, 76, 0, 1), (482, 76, 0, 1), (171, 76, 0, 1), (357, 76, 0, 1), (197, 76, 0, 1), (2586, 76, 0, 1), (3022, 76, 0, 1), (4581, 76, 0, 1), (3703, 76, 0, 1), (4582, 76, 0, 1), (2204, 76, 0, 1), (43, 76, 0, 1), (773, 76, 0, 1), (4583, 76, 0, 1), (495, 76, 0, 1), (2683, 76, 0, 1), (4584, 76, 0, 1), (12, 76, 0, 1), (4585, 76, 0, 1), (902, 76, 0, 1), (3903, 76, 0, 1), (4586, 76, 0, 1), (4587, 76, 0, 1), (862, 76, 0, 1), (1662, 76, 0, 1), (4671, 76, 0, 1), (3733, 76, 0, 1), (3734, 76, 0, 1), (3735, 76, 0, 1), (3736, 76, 0, 1), (2294, 77, 0, 1), (4114, 77, 0, 1), (71, 77, 0, 1), (3737, 77, 0, 1), (3775, 77, 0, 1), (844, 77, 0, 1), (2158, 77, 0, 1), (466, 77, 0, 1), (2589, 77, 0, 1), (4590, 77, 0, 1), (222, 77, 0, 1), (4591, 77, 0, 1), (902, 77, 0, 1), (2441, 77, 0, 1), (4592, 77, 0, 1), (2175, 77, 0, 1), (943, 77, 0, 1), (172, 77, 0, 1), (2269, 77, 0, 1), (4593, 77, 0, 1), (4594, 77, 0, 1), (3598, 77, 0, 1), (2174, 77, 0, 1), (676, 77, 0, 1), (1256, 77, 0, 1), (2285, 77, 0, 1), (4595, 77, 0, 1), (4596, 77, 0, 1), (4597, 77, 0, 1), (627, 77, 0, 1), (4598, 77, 0, 1), (4599, 77, 0, 1), (1452, 77, 0, 1), (7, 77, 0, 1), (935, 77, 0, 1), (4600, 77, 0, 1), (92, 77, 0, 1), (357, 77, 0, 1), (4601, 77, 0, 1), (1039, 77, 0, 1), (3128, 77, 0, 1), (2183, 77, 0, 1), (2189, 77, 0, 1), (493, 77, 0, 1), (2953, 77, 0, 1), (1407, 77, 0, 1), (4, 77, 0, 1), (2437, 77, 0, 1), (2529, 77, 0, 1), (452, 77, 0, 1), (4602, 77, 0, 1), (475, 77, 0, 1), (2507, 77, 0, 1), (221, 77, 0, 1), (43, 77, 0, 1), (2343, 77, 0, 1), (144, 77, 0, 1), (596, 77, 0, 1), (288, 77, 0, 1), (4603, 77, 0, 1), (2202, 77, 0, 1), (2942, 77, 0, 1), (881, 77, 0, 1), (4604, 77, 0, 1), (70, 77, 0, 1), (4605, 77, 0, 1), (4606, 77, 0, 1), (147, 77, 0, 1), (621, 77, 0, 1), (3976, 77, 0, 1), (81, 77, 0, 1), (1000, 77, 0, 1), (212, 77, 0, 1), (32, 77, 0, 1), (4551, 77, 0, 1), (4607, 77, 0, 1), (4608, 77, 0, 1), (1157, 77, 0, 1), (4609, 77, 0, 1), (1244, 77, 0, 1), (4610, 77, 0, 1), (2531, 77, 0, 1), (754, 77, 0, 1), (2351, 77, 0, 1), (4611, 77, 0, 1), (1801, 77, 0, 1), (124, 77, 0, 1), (180, 77, 0, 1), (4014, 77, 0, 1), (4612, 77, 0, 1), (2459, 77, 0, 1), (4613, 77, 0, 1), (165, 77, 0, 1), (537, 77, 0, 1), (521, 77, 0, 1), (105, 77, 0, 1), (696, 77, 0, 1), (4614, 77, 0, 1), (3470, 77, 0, 1), (2731, 77, 0, 1), (2234, 77, 0, 1), (195, 77, 0, 1), (4615, 77, 0, 1), (2508, 77, 0, 1), (2518, 77, 0, 1), (4616, 77, 0, 1), (4617, 77, 0, 1), (128, 77, 0, 1), (2697, 77, 0, 1), (467, 77, 0, 1), (4618, 77, 0, 1), (4619, 77, 0, 1), (2204, 77, 0, 1), (568, 77, 0, 1), (2131, 77, 0, 1), (4620, 77, 0, 1), (2783, 77, 0, 1), (4621, 77, 0, 1), (4622, 77, 0, 1), (488, 77, 0, 1), (449, 77, 0, 1), (38, 77, 0, 1), (4623, 77, 0, 1), (4624, 77, 0, 1), (4625, 77, 0, 1), (118, 77, 0, 1), (550, 77, 0, 1), (4626, 77, 0, 1), (2647, 77, 0, 1), (1261, 77, 0, 1), (2649, 77, 0, 1), (482, 77, 0, 1), (2578, 77, 0, 1), (2168, 77, 0, 1), (2318, 77, 0, 1), (4627, 77, 0, 1), (115, 77, 0, 1), (2599, 77, 0, 1), (2172, 77, 0, 1), (3399, 77, 0, 1), (2443, 77, 0, 1), (394, 77, 0, 1), (8, 77, 0, 1), (495, 77, 0, 1), (2883, 77, 0, 1), (4628, 77, 0, 1), (586, 77, 0, 1), (107, 77, 0, 1), (3206, 77, 0, 1), (4629, 77, 0, 1), (597, 77, 0, 1), (599, 77, 0, 1), (999, 77, 0, 1), (2798, 77, 0, 1), (37, 77, 0, 1), (4630, 77, 0, 1), (4631, 77, 0, 1), (454, 77, 0, 1), (4632, 77, 0, 1), (67, 77, 0, 1), (2552, 77, 0, 1), (4633, 77, 0, 1), (25, 77, 0, 1), (2240, 77, 0, 1), (26, 77, 0, 1), (4634, 77, 0, 1), (142, 77, 0, 1), (4635, 77, 0, 1), (2203, 77, 0, 1), (120, 77, 0, 1), (4636, 77, 0, 1), (4637, 77, 0, 1), (2763, 77, 0, 1), (269, 77, 0, 1), (2577, 77, 0, 1), (250, 77, 0, 1), (2008, 77, 0, 1), (2664, 77, 0, 1), (2193, 77, 0, 1), (4117, 77, 0, 1), (3732, 77, 0, 1), (3733, 77, 0, 1), (3734, 77, 0, 1), (3735, 77, 0, 1), (3736, 77, 0, 1), (2159, 5, 1, 0), (2159, 5, 3, 0), (2457, 79, 0, 0), (160, 79, 0, 0), (543, 79, 0, 0), (4672, 79, 0, 0), (3894, 79, 0, 0), (2457, 80, 0, 0), (160, 80, 0, 0), (4709, 80, 0, 0), (1373, 80, 0, 0), (2907, 81, 0, 0), (773, 81, 0, 0), (2234, 81, 0, 0), (444, 81, 0, 0), (9, 81, 0, 0), (3359, 81, 0, 0), (3185, 82, 0, 0), (389, 82, 0, 0), (3980, 83, 0, 0), (1014, 83, 0, 0), (4754, 84, 0, 0), (959, 84, 0, 0), (673, 84, 0, 0), (480, 85, 0, 0), (117, 85, 0, 0), (3184, 86, 0, 0), (4558, 86, 0, 0), (3842, 86, 0, 0), (235, 87, 0, 0), (482, 87, 0, 0), (1261, 87, 0, 0), (115, 88, 0, 0), (30, 88, 0, 0), (2183, 88, 0, 0), (3522, 88, 0, 0), (1462, 89, 0, 0), (4989, 89, 0, 0), (5036, 90, 0, 0), (2285, 91, 0, 0), (2794, 91, 0, 0), (5092, 92, 0, 0), (2553, 92, 0, 0), (2334, 92, 0, 0), (3441, 93, 0, 0), (2141, 93, 0, 0), (2907, 94, 0, 0), (2443, 94, 0, 0), (30, 94, 0, 0), (3073, 94, 0, 0), (3304, 95, 0, 0), (5174, 95, 0, 0), (2141, 95, 0, 0), (2294, 79, 0, 1), (2457, 79, 0, 1), (160, 79, 0, 1), (543, 79, 0, 1), (5257, 79, 0, 1), (4639, 79, 0, 1), (118, 79, 0, 1), (4674, 79, 0, 1), (895, 79, 0, 1), (1418, 79, 0, 1), (4672, 79, 0, 1), (3894, 79, 0, 1), (142, 79, 0, 1), (4675, 79, 0, 1), (4676, 79, 0, 1), (4677, 79, 0, 1), (4678, 79, 0, 1), (4679, 79, 0, 1), (4680, 79, 0, 1), (158, 79, 0, 1), (4681, 79, 0, 1), (157, 79, 0, 1), (1611, 79, 0, 1), (1157, 79, 0, 1), (395, 79, 0, 1), (4682, 79, 0, 1), (362, 79, 0, 1), (3276, 79, 0, 1), (4683, 79, 0, 1), (4684, 79, 0, 1), (3938, 79, 0, 1), (1594, 79, 0, 1), (196, 79, 0, 1), (316, 79, 0, 1), (4685, 79, 0, 1), (2642, 79, 0, 1), (2179, 79, 0, 1), (1793, 79, 0, 1), (253, 79, 0, 1), (2223, 79, 0, 1), (743, 79, 0, 1), (2383, 79, 0, 1), (4686, 79, 0, 1), (4687, 79, 0, 1), (324, 79, 0, 1), (37, 79, 0, 1), (4688, 79, 0, 1), (4689, 79, 0, 1), (4690, 79, 0, 1), (2158, 79, 0, 1), (3109, 79, 0, 1), (4691, 79, 0, 1), (2701, 79, 0, 1), (4692, 79, 0, 1), (357, 79, 0, 1), (586, 79, 0, 1), (4693, 79, 0, 1), (3829, 79, 0, 1), (140, 79, 0, 1), (773, 79, 0, 1), (1089, 79, 0, 1), (358, 79, 0, 1), (2186, 79, 0, 1), (2206, 79, 0, 1), (4694, 79, 0, 1), (466, 79, 0, 1), (3134, 79, 0, 1), (193, 79, 0, 1), (1193, 79, 0, 1), (2170, 79, 0, 1), (3832, 79, 0, 1), (2658, 79, 0, 1), (2743, 79, 0, 1), (4695, 79, 0, 1), (7, 79, 0, 1), (4696, 79, 0, 1), (1801, 79, 0, 1), (1487, 79, 0, 1), (117, 79, 0, 1), (751, 79, 0, 1), (4697, 79, 0, 1), (221, 79, 0, 1), (676, 79, 0, 1), (2746, 79, 0, 1), (1075, 79, 0, 1), (4698, 79, 0, 1), (4699, 79, 0, 1), (4700, 79, 0, 1), (549, 79, 0, 1), (1348, 79, 0, 1), (43, 79, 0, 1), (396, 79, 0, 1), (154, 79, 0, 1), (3802, 79, 0, 1), (195, 79, 0, 1), (1599, 79, 0, 1), (385, 79, 0, 1), (4701, 79, 0, 1), (778, 79, 0, 1), (202, 79, 0, 1), (3013, 79, 0, 1), (92, 79, 0, 1), (87, 79, 0, 1), (578, 79, 0, 1), (2183, 79, 0, 1), (4702, 79, 0, 1), (2907, 79, 0, 1), (2204, 79, 0, 1), (3594, 79, 0, 1), (4703, 79, 0, 1), (183, 79, 0, 1), (4704, 79, 0, 1), (454, 79, 0, 1), (444, 79, 0, 1), (2664, 79, 0, 1), (67, 79, 0, 1), (4705, 79, 0, 1), (2269, 79, 0, 1), (164, 79, 0, 1), (3706, 79, 0, 1), (318, 79, 0, 1), (2318, 79, 0, 1), (128, 79, 0, 1), (482, 79, 0, 1), (4706, 79, 0, 1), (4707, 79, 0, 1), (2770, 79, 0, 1), (3598, 79, 0, 1), (4708, 79, 0, 1), (3732, 79, 0, 1), (3733, 79, 0, 1), (3734, 79, 0, 1), (3735, 79, 0, 1), (3736, 79, 0, 1), (2294, 80, 0, 1), (2457, 80, 0, 1), (160, 80, 0, 1), (4709, 80, 0, 1), (5258, 80, 0, 1), (3752, 80, 0, 1), (535, 80, 0, 1), (4711, 80, 0, 1), (452, 80, 0, 1), (44, 80, 0, 1), (4712, 80, 0, 1), (4713, 80, 0, 1), (4714, 80, 0, 1), (147, 80, 0, 1), (4715, 80, 0, 1), (4716, 80, 0, 1), (4717, 80, 0, 1), (43, 80, 0, 1), (4718, 80, 0, 1), (870, 80, 0, 1), (4719, 80, 0, 1), (144, 80, 0, 1), (4720, 80, 0, 1), (3065, 80, 0, 1), (4047, 80, 0, 1), (4721, 80, 0, 1), (482, 80, 0, 1), (444, 80, 0, 1), (4722, 80, 0, 1), (2179, 80, 0, 1), (1114, 80, 0, 1), (263, 80, 0, 1), (1373, 80, 0, 1), (171, 80, 0, 1), (4723, 80, 0, 1), (4724, 80, 0, 1), (3219, 80, 0, 1), (128, 80, 0, 1), (158, 80, 0, 1), (3386, 80, 0, 1), (4725, 80, 0, 1), (4726, 80, 0, 1), (4727, 80, 0, 1), (253, 80, 0, 1), (2134, 80, 0, 1), (265, 80, 0, 1), (676, 80, 0, 1), (3564, 80, 0, 1), (4728, 80, 0, 1), (195, 80, 0, 1), (2209, 80, 0, 1), (537, 80, 0, 1), (607, 80, 0, 1), (9, 80, 0, 1), (222, 80, 0, 1), (2660, 80, 0, 1), (4729, 80, 0, 1), (2248, 80, 0, 1), (4730, 80, 0, 1), (2043, 80, 0, 1), (140, 80, 0, 1), (4731, 80, 0, 1), (1473, 80, 0, 1), (1484, 80, 0, 1), (1247, 80, 0, 1), (673, 80, 0, 1), (4117, 80, 0, 1), (38, 80, 0, 1), (3320, 80, 0, 1), (4732, 80, 0, 1), (1487, 80, 0, 1), (4733, 80, 0, 1), (196, 80, 0, 1), (2561, 80, 0, 1), (136, 80, 0, 1), (1168, 80, 0, 1), (2186, 80, 0, 1), (1716, 80, 0, 1), (4734, 80, 0, 1), (251, 80, 0, 1), (3068, 80, 0, 1), (4050, 80, 0, 1), (4437, 80, 0, 1), (2485, 80, 0, 1), (385, 80, 0, 1), (192, 80, 0, 1), (4735, 80, 0, 1), (797, 80, 0, 1), (1026, 80, 0, 1), (2185, 80, 0, 1), (708, 80, 0, 1), (4736, 80, 0, 1), (743, 80, 0, 1), (844, 80, 0, 1), (164, 80, 0, 1), (357, 80, 0, 1), (2642, 80, 0, 1), (3034, 80, 0, 1), (2234, 80, 0, 1), (2289, 80, 0, 1), (4737, 80, 0, 1), (4738, 80, 0, 1), (2183, 80, 0, 1), (4739, 80, 0, 1), (4740, 80, 0, 1), (4741, 80, 0, 1), (124, 80, 0, 1), (4742, 80, 0, 1), (4743, 80, 0, 1), (3156, 80, 0, 1), (393, 80, 0, 1), (4744, 80, 0, 1), (1797, 80, 0, 1), (1665, 80, 0, 1), (2589, 80, 0, 1), (3398, 80, 0, 1), (4745, 80, 0, 1), (4746, 80, 0, 1), (3732, 80, 0, 1), (3733, 80, 0, 1), (3734, 80, 0, 1), (3735, 80, 0, 1), (3736, 80, 0, 1), (2294, 81, 0, 1), (2907, 81, 0, 1), (773, 81, 0, 1), (2234, 81, 0, 1), (444, 81, 0, 1), (222, 81, 0, 1), (4747, 81, 0, 1), (5259, 81, 0, 1), (3775, 81, 0, 1), (92, 81, 0, 1), (118, 81, 0, 1), (357, 81, 0, 1), (43, 81, 0, 1), (495, 81, 0, 1), (128, 81, 0, 1), (3335, 81, 0, 1), (2974, 81, 0, 1), (2181, 81, 0, 1), (2586, 81, 0, 1), (7, 81, 0, 1), (265, 81, 0, 1), (251, 81, 0, 1), (565, 81, 0, 1), (505, 81, 0, 1), (90, 81, 0, 1), (8, 81, 0, 1), (4749, 81, 0, 1), (4750, 81, 0, 1), (136, 81, 0, 1), (4751, 81, 0, 1), (225, 81, 0, 1), (183, 81, 0, 1), (152, 81, 0, 1), (523, 81, 0, 1), (21, 81, 0, 1), (318, 81, 0, 1), (71, 81, 0, 1), (4752, 81, 0, 1), (4753, 81, 0, 1), (4265, 81, 0, 1), (160, 81, 0, 1), (25, 81, 0, 1), (2711, 81, 0, 1), (745, 81, 0, 1), (2834, 81, 0, 1), (676, 81, 0, 1), (4754, 81, 0, 1), (385, 81, 0, 1), (959, 81, 0, 1), (2183, 81, 0, 1), (2267, 81, 0, 1), (3720, 81, 0, 1), (115, 81, 0, 1), (4755, 81, 0, 1), (1010, 81, 0, 1), (2928, 81, 0, 1), (2553, 81, 0, 1), (4756, 81, 0, 1), (4757, 81, 0, 1), (2158, 81, 0, 1), (4758, 81, 0, 1), (120, 81, 0, 1), (1148, 81, 0, 1), (4759, 81, 0, 1), (2288, 81, 0, 1), (196, 81, 0, 1), (4760, 81, 0, 1), (2770, 81, 0, 1), (221, 81, 0, 1), (4279, 81, 0, 1), (4761, 81, 0, 1), (63, 81, 0, 1), (4762, 81, 0, 1), (607, 81, 0, 1), (3189, 81, 0, 1), (162, 81, 0, 1), (4763, 81, 0, 1), (2951, 81, 0, 1), (4764, 81, 0, 1), (144, 81, 0, 1), (2507, 81, 0, 1), (817, 81, 0, 1), (189, 81, 0, 1), (3847, 81, 0, 1), (482, 81, 0, 1), (4765, 81, 0, 1), (3075, 81, 0, 1), (626, 81, 0, 1), (3732, 81, 0, 1), (3733, 81, 0, 1), (3734, 81, 0, 1), (3735, 81, 0, 1), (3736, 81, 0, 1), (2294, 82, 0, 1), (3185, 82, 0, 1), (5260, 82, 0, 1), (3754, 82, 0, 1), (389, 82, 0, 1), (357, 82, 0, 1), (3564, 82, 0, 1), (2443, 82, 0, 1), (1143, 82, 0, 1), (3411, 82, 0, 1), (291, 82, 0, 1), (4767, 82, 0, 1), (394, 82, 0, 1), (43, 82, 0, 1), (4270, 82, 0, 1), (160, 82, 0, 1), (4768, 82, 0, 1), (4769, 82, 0, 1), (444, 82, 0, 1), (4377, 82, 0, 1), (1407, 82, 0, 1), (4770, 82, 0, 1), (2626, 82, 0, 1), (1154, 82, 0, 1), (118, 82, 0, 1), (4771, 82, 0, 1), (4191, 82, 0, 1), (10, 82, 0, 1), (1423, 82, 0, 1), (2331, 82, 0, 1), (253, 82, 0, 1), (1261, 82, 0, 1), (1594, 82, 0, 1), (196, 82, 0, 1), (1851, 82, 0, 1), (4772, 82, 0, 1), (4773, 82, 0, 1), (4774, 82, 0, 1), (4775, 82, 0, 1), (1343, 82, 0, 1), (4776, 82, 0, 1), (1056, 82, 0, 1), (4777, 82, 0, 1), (4778, 82, 0, 1), (240, 82, 0, 1), (844, 82, 0, 1), (195, 82, 0, 1), (1543, 82, 0, 1), (189, 82, 0, 1), (4779, 82, 0, 1), (322, 82, 0, 1), (128, 82, 0, 1), (225, 82, 0, 1), (2158, 82, 0, 1), (1912, 82, 0, 1), (1314, 82, 0, 1), (362, 82, 0, 1), (4780, 82, 0, 1), (650, 82, 0, 1), (3320, 82, 0, 1), (3189, 82, 0, 1), (4781, 82, 0, 1), (4782, 82, 0, 1), (4783, 82, 0, 1), (2594, 82, 0, 1), (140, 82, 0, 1), (3894, 82, 0, 1), (4784, 82, 0, 1), (7, 82, 0, 1), (4785, 82, 0, 1), (4786, 82, 0, 1), (385, 82, 0, 1), (2628, 82, 0, 1), (647, 82, 0, 1), (505, 82, 0, 1), (4787, 82, 0, 1), (4788, 82, 0, 1), (4789, 82, 0, 1), (193, 82, 0, 1), (4790, 82, 0, 1), (620, 82, 0, 1), (4791, 82, 0, 1), (3153, 82, 0, 1), (3154, 82, 0, 1), (4792, 82, 0, 1), (2485, 82, 0, 1), (4793, 82, 0, 1), (147, 82, 0, 1), (4794, 82, 0, 1), (4795, 82, 0, 1), (2288, 82, 0, 1), (4796, 82, 0, 1), (4797, 82, 0, 1), (1527, 82, 0, 1), (120, 82, 0, 1), (4798, 82, 0, 1), (532, 82, 0, 1), (37, 82, 0, 1), (1355, 82, 0, 1), (743, 82, 0, 1), (446, 82, 0, 1), (3983, 82, 0, 1), (4799, 82, 0, 1), (2179, 82, 0, 1), (172, 82, 0, 1), (1312, 82, 0, 1), (838, 82, 0, 1), (4800, 82, 0, 1), (642, 82, 0, 1), (4801, 82, 0, 1), (12, 82, 0, 1), (3360, 82, 0, 1), (4268, 82, 0, 1), (4802, 82, 0, 1), (3032, 82, 0, 1), (4803, 82, 0, 1), (222, 82, 0, 1), (4804, 82, 0, 1), (2689, 82, 0, 1), (482, 82, 0, 1), (2884, 82, 0, 1), (4805, 82, 0, 1), (3041, 82, 0, 1), (2174, 82, 0, 1), (4806, 82, 0, 1), (660, 82, 0, 1), (387, 82, 0, 1), (3708, 82, 0, 1), (4807, 82, 0, 1), (773, 82, 0, 1), (707, 82, 0, 1), (1180, 82, 0, 1), (4808, 82, 0, 1), (407, 82, 0, 1), (4809, 82, 0, 1), (4810, 82, 0, 1), (3872, 82, 0, 1), (290, 82, 0, 1), (70, 82, 0, 1), (4811, 82, 0, 1), (1548, 82, 0, 1), (4812, 82, 0, 1), (676, 82, 0, 1), (4813, 82, 0, 1), (2183, 82, 0, 1), (1510, 82, 0, 1), (4463, 82, 0, 1), (3371, 82, 0, 1), (4575, 82, 0, 1), (3914, 82, 0, 1), (25, 82, 0, 1), (4814, 82, 0, 1), (92, 82, 0, 1), (3732, 82, 0, 1), (3733, 82, 0, 1), (3734, 82, 0, 1), (3735, 82, 0, 1), (3736, 82, 0, 1), (2294, 83, 0, 1), (3980, 83, 0, 1), (5261, 83, 0, 1), (3752, 83, 0, 1), (4816, 83, 0, 1), (270, 83, 0, 1), (544, 83, 0, 1), (393, 83, 0, 1), (4817, 83, 0, 1), (202, 83, 0, 1), (387, 83, 0, 1), (4818, 83, 0, 1), (513, 83, 0, 1), (4819, 83, 0, 1), (2486, 83, 0, 1), (4820, 83, 0, 1), (4821, 83, 0, 1), (4445, 83, 0, 1), (1851, 83, 0, 1), (2346, 83, 0, 1), (195, 83, 0, 1), (797, 83, 0, 1), (4822, 83, 0, 1), (2575, 83, 0, 1), (4823, 83, 0, 1), (2630, 83, 0, 1), (744, 83, 0, 1), (4824, 83, 0, 1), (3778, 83, 0, 1), (4825, 83, 0, 1), (180, 83, 0, 1), (4826, 83, 0, 1), (50, 83, 0, 1), (357, 83, 0, 1), (3014, 83, 0, 1), (4827, 83, 0, 1), (2186, 83, 0, 1), (43, 83, 0, 1), (4801, 83, 0, 1), (4828, 83, 0, 1), (25, 83, 0, 1), (1874, 83, 0, 1), (4829, 83, 0, 1), (4230, 83, 0, 1), (4830, 83, 0, 1), (4831, 83, 0, 1), (4344, 83, 0, 1), (196, 83, 0, 1), (2972, 83, 0, 1), (844, 83, 0, 1), (2174, 83, 0, 1), (3508, 83, 0, 1), (37, 83, 0, 1), (4832, 83, 0, 1), (495, 83, 0, 1), (216, 83, 0, 1), (1288, 83, 0, 1), (250, 83, 0, 1), (4833, 83, 0, 1), (2182, 83, 0, 1), (2356, 83, 0, 1), (4834, 83, 0, 1), (4835, 83, 0, 1), (30, 83, 0, 1), (4507, 83, 0, 1), (322, 83, 0, 1), (4836, 83, 0, 1), (4837, 83, 0, 1), (3197, 83, 0, 1), (4838, 83, 0, 1), (4839, 83, 0, 1), (225, 83, 0, 1), (2158, 83, 0, 1), (120, 83, 0, 1), (1449, 83, 0, 1), (3516, 83, 0, 1), (1014, 83, 0, 1), (4840, 83, 0, 1), (210, 83, 0, 1), (4841, 83, 0, 1), (653, 83, 0, 1), (701, 83, 0, 1), (4842, 83, 0, 1), (633, 83, 0, 1), (4843, 83, 0, 1), (2500, 83, 0, 1), (2529, 83, 0, 1), (4844, 83, 0, 1), (136, 83, 0, 1), (578, 83, 0, 1), (4845, 83, 0, 1), (32, 83, 0, 1), (7, 83, 0, 1), (4846, 83, 0, 1), (206, 83, 0, 1), (3185, 83, 0, 1), (4847, 83, 0, 1), (4848, 83, 0, 1), (90, 83, 0, 1), (147, 83, 0, 1), (128, 83, 0, 1), (68, 83, 0, 1), (4849, 83, 0, 1), (189, 83, 0, 1), (444, 83, 0, 1), (9, 83, 0, 1), (160, 83, 0, 1), (356, 83, 0, 1), (4850, 83, 0, 1), (3514, 83, 0, 1), (4851, 83, 0, 1), (4852, 83, 0, 1), (2170, 83, 0, 1), (4853, 83, 0, 1), (61, 83, 0, 1), (4854, 83, 0, 1), (114, 83, 0, 1), (1898, 83, 0, 1), (2453, 83, 0, 1), (4855, 83, 0, 1), (1716, 83, 0, 1), (4255, 83, 0, 1), (4856, 83, 0, 1), (4857, 83, 0, 1), (1999, 83, 0, 1), (4858, 83, 0, 1), (2446, 83, 0, 1), (3279, 83, 0, 1), (183, 83, 0, 1), (4859, 83, 0, 1), (2566, 83, 0, 1), (4556, 83, 0, 1), (1148, 83, 0, 1), (251, 83, 0, 1), (2664, 83, 0, 1), (4860, 83, 0, 1), (4861, 83, 0, 1), (144, 83, 0, 1), (4862, 83, 0, 1), (3307, 83, 0, 1), (4280, 83, 0, 1), (4863, 83, 0, 1), (4864, 83, 0, 1), (3379, 83, 0, 1), (3441, 83, 0, 1), (4153, 83, 0, 1), (1527, 83, 0, 1), (4865, 83, 0, 1), (3983, 83, 0, 1), (3834, 83, 0, 1), (4270, 83, 0, 1), (4866, 83, 0, 1), (3448, 83, 0, 1), (4867, 83, 0, 1), (4136, 83, 0, 1), (2419, 83, 0, 1), (4868, 83, 0, 1), (607, 83, 0, 1), (4869, 83, 0, 1), (4870, 83, 0, 1), (4871, 83, 0, 1), (27, 83, 0, 1), (413, 83, 0, 1), (193, 83, 0, 1), (1098, 83, 0, 1), (2, 83, 0, 1), (4872, 83, 0, 1), (4140, 83, 0, 1), (1000, 83, 0, 1), (4873, 83, 0, 1), (3389, 83, 0, 1), (4874, 83, 0, 1), (4875, 83, 0, 1), (4876, 83, 0, 1), (1658, 83, 0, 1), (2422, 83, 0, 1), (3865, 83, 0, 1), (4877, 83, 0, 1), (468, 83, 0, 1), (4878, 83, 0, 1), (254, 83, 0, 1), (2638, 83, 0, 1), (4879, 83, 0, 1), (283, 83, 0, 1), (2318, 83, 0, 1), (222, 83, 0, 1), (2589, 83, 0, 1), (1261, 83, 0, 1), (605, 83, 0, 1), (1259, 83, 0, 1), (4880, 83, 0, 1), (4881, 83, 0, 1), (4882, 83, 0, 1), (171, 83, 0, 1), (341, 83, 0, 1), (1841, 83, 0, 1), (4883, 83, 0, 1), (4884, 83, 0, 1), (1132, 83, 0, 1), (218, 83, 0, 1), (4885, 83, 0, 1), (63, 83, 0, 1), (4886, 83, 0, 1), (192, 83, 0, 1), (3046, 83, 0, 1), (4887, 83, 0, 1), (163, 83, 0, 1), (54, 83, 0, 1), (4888, 83, 0, 1), (4889, 83, 0, 1), (5262, 83, 0, 1), (3733, 83, 0, 1), (3734, 83, 0, 1), (3735, 83, 0, 1), (3736, 83, 0, 1), (2294, 84, 0, 1), (4754, 84, 0, 1), (959, 84, 0, 1), (5263, 84, 0, 1), (3754, 84, 0, 1), (673, 84, 0, 1), (586, 84, 0, 1), (3185, 84, 0, 1), (2348, 84, 0, 1), (43, 84, 0, 1), (4109, 84, 0, 1), (707, 84, 0, 1), (58, 84, 0, 1), (3976, 84, 0, 1), (3329, 84, 0, 1), (283, 84, 0, 1), (365, 84, 0, 1), (1437, 84, 0, 1), (3862, 84, 0, 1), (2183, 84, 0, 1), (2795, 84, 0, 1), (7, 84, 0, 1), (103, 84, 0, 1), (128, 84, 0, 1), (4892, 84, 0, 1), (2633, 84, 0, 1), (253, 84, 0, 1), (3360, 84, 0, 1), (4893, 84, 0, 1), (3363, 84, 0, 1), (4894, 84, 0, 1), (4895, 84, 0, 1), (136, 84, 0, 1), (407, 84, 0, 1), (222, 84, 0, 1), (2907, 84, 0, 1), (4896, 84, 0, 1), (4897, 84, 0, 1), (4898, 84, 0, 1), (934, 84, 0, 1), (537, 84, 0, 1), (4368, 84, 0, 1), (2186, 84, 0, 1), (4899, 84, 0, 1), (1203, 84, 0, 1), (4900, 84, 0, 1), (3732, 84, 0, 1), (3733, 84, 0, 1), (3734, 84, 0, 1), (3735, 84, 0, 1), (3736, 84, 0, 1), (2294, 85, 0, 1), (480, 85, 0, 1), (3742, 85, 0, 1), (3765, 85, 0, 1), (144, 85, 0, 1), (633, 85, 0, 1), (2186, 85, 0, 1), (673, 85, 0, 1), (578, 85, 0, 1), (3842, 85, 0, 1), (43, 85, 0, 1), (92, 85, 0, 1), (1603, 85, 0, 1), (1152, 85, 0, 1), (620, 85, 0, 1), (676, 85, 0, 1), (505, 85, 0, 1), (1148, 85, 0, 1), (452, 85, 0, 1), (3065, 85, 0, 1), (797, 85, 0, 1), (2174, 85, 0, 1), (1168, 85, 0, 1), (609, 85, 0, 1), (4902, 85, 0, 1), (3022, 85, 0, 1), (1261, 85, 0, 1), (7, 85, 0, 1), (3073, 85, 0, 1), (178, 85, 0, 1), (4903, 85, 0, 1), (4904, 85, 0, 1), (1561, 85, 0, 1), (1087, 85, 0, 1), (935, 85, 0, 1), (90, 85, 0, 1), (2554, 85, 0, 1), (147, 85, 0, 1), (4905, 85, 0, 1), (357, 85, 0, 1), (140, 85, 0, 1), (4731, 85, 0, 1), (4635, 85, 0, 1), (2450, 85, 0, 1), (4906, 85, 0, 1), (4907, 85, 0, 1), (1905, 85, 0, 1), (4908, 85, 0, 1), (4909, 85, 0, 1), (1071, 85, 0, 1), (642, 85, 0, 1), (4910, 85, 0, 1), (4911, 85, 0, 1), (3189, 85, 0, 1), (4208, 85, 0, 1), (124, 85, 0, 1), (4159, 85, 0, 1), (3431, 85, 0, 1), (3706, 85, 0, 1), (4912, 85, 0, 1), (1256, 85, 0, 1), (623, 85, 0, 1), (1451, 85, 0, 1), (30, 85, 0, 1), (3208, 85, 0, 1), (54, 85, 0, 1), (444, 85, 0, 1), (3529, 85, 0, 1), (2480, 85, 0, 1), (265, 85, 0, 1), (4913, 85, 0, 1), (4914, 85, 0, 1), (2513, 85, 0, 1), (263, 85, 0, 1), (2711, 85, 0, 1), (137, 85, 0, 1), (773, 85, 0, 1), (240, 85, 0, 1), (4191, 85, 0, 1), (2500, 85, 0, 1), (1285, 85, 0, 1), (4915, 85, 0, 1), (1874, 85, 0, 1), (2733, 85, 0, 1), (253, 85, 0, 1), (4209, 85, 0, 1), (2160, 85, 0, 1), (2643, 85, 0, 1), (696, 85, 0, 1), (1929, 85, 0, 1), (4916, 85, 0, 1), (216, 85, 0, 1), (4050, 85, 0, 1), (2247, 85, 0, 1), (221, 85, 0, 1), (4917, 85, 0, 1), (3732, 85, 0, 1), (3733, 85, 0, 1), (3734, 85, 0, 1), (3735, 85, 0, 1), (3736, 85, 0, 1), (2294, 86, 0, 1), (3184, 86, 0, 1), (4558, 86, 0, 1), (5264, 86, 0, 1), (3746, 86, 0, 1), (136, 86, 0, 1), (2801, 86, 0, 1), (3842, 86, 0, 1), (43, 86, 0, 1), (2271, 86, 0, 1), (3987, 86, 0, 1), (2206, 86, 0, 1), (4919, 86, 0, 1), (673, 86, 0, 1), (158, 86, 0, 1), (2168, 86, 0, 1), (4531, 86, 0, 1), (4401, 86, 0, 1), (539, 86, 0, 1), (357, 86, 0, 1), (128, 86, 0, 1), (183, 86, 0, 1), (4920, 86, 0, 1), (4301, 86, 0, 1), (160, 86, 0, 1), (7, 86, 0, 1), (4921, 86, 0, 1), (4922, 86, 0, 1), (4923, 86, 0, 1), (1673, 86, 0, 1), (144, 86, 0, 1), (2158, 86, 0, 1), (4924, 86, 0, 1), (4925, 86, 0, 1), (2844, 86, 0, 1), (28, 86, 0, 1), (385, 86, 0, 1), (2514, 86, 0, 1), (2882, 86, 0, 1), (4265, 86, 0, 1), (2183, 86, 0, 1), (3522, 86, 0, 1), (4926, 86, 0, 1), (2913, 86, 0, 1), (138, 86, 0, 1), (92, 86, 0, 1), (633, 86, 0, 1), (4927, 86, 0, 1), (1418, 86, 0, 1), (4928, 86, 0, 1), (938, 86, 0, 1), (195, 86, 0, 1), (4929, 86, 0, 1), (452, 86, 0, 1), (4930, 86, 0, 1), (164, 86, 0, 1), (566, 86, 0, 1), (3282, 86, 0, 1), (4931, 86, 0, 1), (82, 86, 0, 1), (2845, 86, 0, 1), (4932, 86, 0, 1), (4933, 86, 0, 1), (10, 86, 0, 1), (416, 86, 0, 1), (3189, 86, 0, 1), (1261, 86, 0, 1), (4934, 86, 0, 1), (505, 86, 0, 1), (3732, 86, 0, 1), (3733, 86, 0, 1), (3734, 86, 0, 1), (3735, 86, 0, 1), (3736, 86, 0, 1), (2294, 87, 0, 1), (235, 87, 0, 1), (482, 87, 0, 1), (1261, 87, 0, 1), (3775, 87, 0, 1), (3307, 87, 0, 1), (2183, 87, 0, 1), (3276, 87, 0, 1), (2749, 87, 0, 1), (1801, 87, 0, 1), (3189, 87, 0, 1), (3441, 87, 0, 1), (1525, 87, 0, 1), (4936, 87, 0, 1), (676, 87, 0, 1), (183, 87, 0, 1), (28, 87, 0, 1), (4937, 87, 0, 1), (4938, 87, 0, 1), (4775, 87, 0, 1), (195, 87, 0, 1), (4939, 87, 0, 1), (1143, 87, 0, 1), (4791, 87, 0, 1), (3320, 87, 0, 1), (4940, 87, 0, 1), (39, 87, 0, 1), (196, 87, 0, 1), (3348, 87, 0, 1), (2643, 87, 0, 1), (292, 87, 0, 1), (3195, 87, 0, 1), (633, 87, 0, 1), (4941, 87, 0, 1), (4942, 87, 0, 1), (2882, 87, 0, 1), (3074, 87, 0, 1), (1148, 87, 0, 1), (136, 87, 0, 1), (673, 87, 0, 1), (3218, 87, 0, 1), (2918, 87, 0, 1), (3732, 87, 0, 1), (3733, 87, 0, 1), (3734, 87, 0, 1), (3735, 87, 0, 1), (3736, 87, 0, 1), (2294, 88, 0, 1), (115, 88, 0, 1), (30, 88, 0, 1), (2183, 88, 0, 1), (5265, 88, 0, 1), (3754, 88, 0, 1), (3522, 88, 0, 1), (1462, 88, 0, 1), (844, 88, 0, 1), (3189, 88, 0, 1), (4763, 88, 0, 1), (159, 88, 0, 1), (72, 88, 0, 1), (4944, 88, 0, 1), (3598, 88, 0, 1), (4945, 88, 0, 1), (3724, 88, 0, 1), (32, 88, 0, 1), (4946, 88, 0, 1), (2667, 88, 0, 1), (797, 88, 0, 1), (4947, 88, 0, 1), (4948, 88, 0, 1), (4949, 88, 0, 1), (4950, 88, 0, 1), (1877, 88, 0, 1), (157, 88, 0, 1), (4951, 88, 0, 1), (566, 88, 0, 1), (3383, 88, 0, 1), (92, 88, 0, 1), (9, 88, 0, 1), (4706, 88, 0, 1), (2638, 88, 0, 1), (4952, 88, 0, 1), (1481, 88, 0, 1), (221, 88, 0, 1), (773, 88, 0, 1), (495, 88, 0, 1), (4953, 88, 0, 1), (2174, 88, 0, 1), (2485, 88, 0, 1), (4954, 88, 0, 1), (250, 88, 0, 1), (253, 88, 0, 1), (3276, 88, 0, 1), (3706, 88, 0, 1), (222, 88, 0, 1), (195, 88, 0, 1), (196, 88, 0, 1), (197, 88, 0, 1), (2649, 88, 0, 1), (4955, 88, 0, 1), (3720, 88, 0, 1), (3812, 88, 0, 1), (4791, 88, 0, 1), (4745, 88, 0, 1), (3191, 88, 0, 1), (43, 88, 0, 1), (7, 88, 0, 1), (4956, 88, 0, 1), (3201, 88, 0, 1), (205, 88, 0, 1), (202, 88, 0, 1), (2996, 88, 0, 1), (673, 88, 0, 1), (2461, 88, 0, 1), (120, 88, 0, 1), (385, 88, 0, 1), (2234, 88, 0, 1), (246, 88, 0, 1), (251, 88, 0, 1), (4957, 88, 0, 1), (160, 88, 0, 1), (1418, 88, 0, 1), (2563, 88, 0, 1), (2318, 88, 0, 1), (396, 88, 0, 1), (3705, 88, 0, 1), (4958, 88, 0, 1), (4959, 88, 0, 1), (532, 88, 0, 1), (4960, 88, 0, 1), (4531, 88, 0, 1), (2741, 88, 0, 1), (938, 88, 0, 1), (4961, 88, 0, 1), (578, 88, 0, 1), (4962, 88, 0, 1), (1841, 88, 0, 1), (4147, 88, 0, 1), (39, 88, 0, 1), (4963, 88, 0, 1), (128, 88, 0, 1), (285, 88, 0, 1), (3465, 88, 0, 1), (444, 88, 0, 1), (69, 88, 0, 1), (4964, 88, 0, 1), (3063, 88, 0, 1), (4965, 88, 0, 1), (164, 88, 0, 1), (25, 88, 0, 1), (1170, 88, 0, 1), (4966, 88, 0, 1), (660, 88, 0, 1), (357, 88, 0, 1), (4967, 88, 0, 1), (2509, 88, 0, 1), (4968, 88, 0, 1), (479, 88, 0, 1), (2562, 88, 0, 1), (3277, 88, 0, 1), (482, 88, 0, 1), (4969, 88, 0, 1), (2369, 88, 0, 1), (744, 88, 0, 1), (4970, 88, 0, 1), (4971, 88, 0, 1), (4972, 88, 0, 1), (3564, 88, 0, 1), (4270, 88, 0, 1), (42, 88, 0, 1), (3903, 88, 0, 1), (4973, 88, 0, 1), (817, 88, 0, 1), (1648, 88, 0, 1), (4893, 88, 0, 1), (171, 88, 0, 1), (586, 88, 0, 1), (4974, 88, 0, 1), (3394, 88, 0, 1), (4975, 88, 0, 1), (4976, 88, 0, 1), (1594, 88, 0, 1), (4977, 88, 0, 1), (1688, 88, 0, 1), (4978, 88, 0, 1), (539, 88, 0, 1), (2270, 88, 0, 1), (4979, 88, 0, 1), (1454, 88, 0, 1), (4980, 88, 0, 1), (4981, 88, 0, 1), (4982, 88, 0, 1), (452, 88, 0, 1), (4983, 88, 0, 1), (4984, 88, 0, 1), (4985, 88, 0, 1), (4986, 88, 0, 1), (466, 88, 0, 1), (313, 88, 0, 1), (4987, 88, 0, 1), (1502, 88, 0, 1), (4988, 88, 0, 1), (4836, 88, 0, 1), (676, 88, 0, 1), (4176, 88, 0, 1), (3732, 88, 0, 1), (3733, 88, 0, 1), (3734, 88, 0, 1), (3735, 88, 0, 1), (3736, 88, 0, 1), (2294, 89, 0, 1), (1462, 89, 0, 1), (5266, 89, 0, 1), (5267, 89, 0, 1), (4991, 89, 0, 1), (221, 89, 0, 1), (4992, 89, 0, 1), (3209, 89, 0, 1), (4993, 89, 0, 1), (202, 89, 0, 1), (573, 89, 0, 1), (2462, 89, 0, 1), (4994, 89, 0, 1), (4399, 89, 0, 1), (3983, 89, 0, 1), (2183, 89, 0, 1), (3189, 89, 0, 1), (676, 89, 0, 1), (2269, 89, 0, 1), (124, 89, 0, 1), (128, 89, 0, 1), (389, 89, 0, 1), (4995, 89, 0, 1), (4996, 89, 0, 1), (449, 89, 0, 1), (3273, 89, 0, 1), (90, 89, 0, 1), (4997, 89, 0, 1), (938, 89, 0, 1), (4998, 89, 0, 1), (444, 89, 0, 1), (92, 89, 0, 1), (1813, 89, 0, 1), (673, 89, 0, 1), (4999, 89, 0, 1), (4937, 89, 0, 1), (817, 89, 0, 1), (43, 89, 0, 1), (931, 89, 0, 1), (2174, 89, 0, 1), (5000, 89, 0, 1), (486, 89, 0, 1), (195, 89, 0, 1), (1261, 89, 0, 1), (1143, 89, 0, 1), (5001, 89, 0, 1), (1072, 89, 0, 1), (1071, 89, 0, 1), (3045, 89, 0, 1), (2452, 89, 0, 1), (773, 89, 0, 1), (1090, 89, 0, 1), (2649, 89, 0, 1), (4248, 89, 0, 1), (1497, 89, 0, 1), (3063, 89, 0, 1), (385, 89, 0, 1), (5002, 89, 0, 1), (2553, 89, 0, 1), (25, 89, 0, 1), (1874, 89, 0, 1), (2552, 89, 0, 1), (585, 89, 0, 1), (5003, 89, 0, 1), (5004, 89, 0, 1), (5005, 89, 0, 1), (4775, 89, 0, 1), (1548, 89, 0, 1), (3210, 89, 0, 1), (152, 89, 0, 1), (3282, 89, 0, 1), (5006, 89, 0, 1), (160, 89, 0, 1), (312, 89, 0, 1), (4827, 89, 0, 1), (638, 89, 0, 1), (2961, 89, 0, 1), (2857, 89, 0, 1), (5007, 89, 0, 1), (2762, 89, 0, 1), (3954, 89, 0, 1), (172, 89, 0, 1), (5008, 89, 0, 1), (357, 89, 0, 1), (3874, 89, 0, 1), (5009, 89, 0, 1), (2409, 89, 0, 1), (482, 89, 0, 1), (5010, 89, 0, 1), (3299, 89, 0, 1), (222, 89, 0, 1), (197, 89, 0, 1), (2384, 89, 0, 1), (5011, 89, 0, 1), (253, 89, 0, 1), (3862, 89, 0, 1), (4496, 89, 0, 1), (37, 89, 0, 1), (5012, 89, 0, 1), (4401, 89, 0, 1), (5013, 89, 0, 1), (193, 89, 0, 1), (5014, 89, 0, 1), (120, 89, 0, 1), (5015, 89, 0, 1), (3221, 89, 0, 1), (1244, 89, 0, 1), (3696, 89, 0, 1), (159, 89, 0, 1), (7, 89, 0, 1), (2793, 89, 0, 1), (5016, 89, 0, 1), (2170, 89, 0, 1), (1021, 89, 0, 1), (314, 89, 0, 1), (2481, 89, 0, 1), (524, 89, 0, 1), (3047, 89, 0, 1), (178, 89, 0, 1), (3591, 89, 0, 1), (4297, 89, 0, 1), (2683, 89, 0, 1), (3195, 89, 0, 1), (3208, 89, 0, 1), (3612, 89, 0, 1), (5017, 89, 0, 1), (4978, 89, 0, 1), (1454, 89, 0, 1), (4795, 89, 0, 1), (4176, 89, 0, 1), (225, 89, 0, 1), (5018, 89, 0, 1), (119, 89, 0, 1), (3842, 89, 0, 1), (196, 89, 0, 1), (3197, 89, 0, 1), (2486, 89, 0, 1), (1573, 89, 0, 1), (1420, 89, 0, 1), (3383, 89, 0, 1), (5019, 89, 0, 1), (157, 89, 0, 1), (5020, 89, 0, 1), (2972, 89, 0, 1), (394, 89, 0, 1), (5021, 89, 0, 1), (5022, 89, 0, 1), (844, 89, 0, 1), (2158, 89, 0, 1), (5023, 89, 0, 1), (2179, 89, 0, 1), (4288, 89, 0, 1), (3345, 89, 0, 1), (667, 89, 0, 1), (118, 89, 0, 1), (2343, 89, 0, 1), (153, 89, 0, 1), (655, 89, 0, 1), (5024, 89, 0, 1), (171, 89, 0, 1), (5025, 89, 0, 1), (1288, 89, 0, 1), (3381, 89, 0, 1), (442, 89, 0, 1), (696, 89, 0, 1), (3344, 89, 0, 1), (2291, 89, 0, 1), (39, 89, 0, 1), (3319, 89, 0, 1), (5026, 89, 0, 1), (922, 89, 0, 1), (5027, 89, 0, 1), (5028, 89, 0, 1), (4689, 89, 0, 1), (935, 89, 0, 1), (2192, 89, 0, 1), (5029, 89, 0, 1), (5030, 89, 0, 1), (5031, 89, 0, 1), (5032, 89, 0, 1), (269, 89, 0, 1), (5033, 89, 0, 1), (3287, 89, 0, 1), (5034, 89, 0, 1), (2577, 89, 0, 1), (5035, 89, 0, 1), (3732, 89, 0, 1), (3733, 89, 0, 1), (3734, 89, 0, 1), (3735, 89, 0, 1), (3736, 89, 0, 1), (2294, 90, 0, 1), (5268, 90, 0, 1), (3754, 90, 0, 1), (5038, 90, 0, 1), (1072, 90, 0, 1), (43, 90, 0, 1), (19, 90, 0, 1), (32, 90, 0, 1), (5039, 90, 0, 1), (28, 90, 0, 1), (482, 90, 0, 1), (288, 90, 0, 1), (1441, 90, 0, 1), (5040, 90, 0, 1), (5041, 90, 0, 1), (160, 90, 0, 1), (488, 90, 0, 1), (164, 90, 0, 1), (2289, 90, 0, 1), (797, 90, 0, 1), (762, 90, 0, 1), (5036, 90, 0, 1), (3273, 90, 0, 1), (2183, 90, 0, 1), (2646, 90, 0, 1), (90, 90, 0, 1), (128, 90, 0, 1), (5042, 90, 0, 1), (172, 90, 0, 1), (7, 90, 0, 1), (3972, 90, 0, 1), (5043, 90, 0, 1), (118, 90, 0, 1), (70, 90, 0, 1), (5044, 90, 0, 1), (92, 90, 0, 1), (2816, 90, 0, 1), (5045, 90, 0, 1), (30, 90, 0, 1), (144, 90, 0, 1), (147, 90, 0, 1), (3334, 90, 0, 1), (2638, 90, 0, 1), (385, 90, 0, 1), (838, 90, 0, 1), (3621, 90, 0, 1), (2179, 90, 0, 1), (154, 90, 0, 1), (357, 90, 0, 1), (4991, 90, 0, 1), (585, 90, 0, 1), (253, 90, 0, 1), (5046, 90, 0, 1), (5047, 90, 0, 1), (5048, 90, 0, 1), (222, 90, 0, 1), (696, 90, 0, 1), (553, 90, 0, 1), (773, 90, 0, 1), (42, 90, 0, 1), (5049, 90, 0, 1), (2170, 90, 0, 1), (499, 90, 0, 1), (157, 90, 0, 1), (4041, 90, 0, 1), (1573, 90, 0, 1), (4017, 90, 0, 1), (4268, 90, 0, 1), (5050, 90, 0, 1), (2174, 90, 0, 1), (1190, 90, 0, 1), (2796, 90, 0, 1), (3591, 90, 0, 1), (5051, 90, 0, 1), (5052, 90, 0, 1), (5053, 90, 0, 1), (578, 90, 0, 1), (1261, 90, 0, 1), (452, 90, 0, 1), (5054, 90, 0, 1), (3276, 90, 0, 1), (5055, 90, 0, 1), (152, 90, 0, 1), (5056, 90, 0, 1), (852, 90, 0, 1), (1021, 90, 0, 1), (3565, 90, 0, 1), (938, 90, 0, 1), (1737, 90, 0, 1), (2385, 90, 0, 1), (3189, 90, 0, 1), (5057, 90, 0, 1), (2462, 90, 0, 1), (1688, 90, 0, 1), (119, 90, 0, 1), (3732, 90, 0, 1), (3733, 90, 0, 1), (3734, 90, 0, 1), (3735, 90, 0, 1), (3736, 90, 0, 1), (2294, 91, 0, 1), (2285, 91, 0, 1), (5269, 91, 0, 1), (3765, 91, 0, 1), (2183, 91, 0, 1), (3212, 91, 0, 1), (2794, 91, 0, 1), (4265, 91, 0, 1), (2646, 91, 0, 1), (37, 91, 0, 1), (5059, 91, 0, 1), (5060, 91, 0, 1), (3627, 91, 0, 1), (2795, 91, 0, 1), (2658, 91, 0, 1), (444, 91, 0, 1), (5061, 91, 0, 1), (1157, 91, 0, 1), (5062, 91, 0, 1), (1190, 91, 0, 1), (2462, 91, 0, 1), (3381, 91, 0, 1), (5063, 91, 0, 1), (2248, 91, 0, 1), (253, 91, 0, 1), (5064, 91, 0, 1), (92, 91, 0, 1), (1295, 91, 0, 1), (2174, 91, 0, 1), (577, 91, 0, 1), (1564, 91, 0, 1), (5065, 91, 0, 1), (222, 91, 0, 1), (357, 91, 0, 1), (2348, 91, 0, 1), (43, 91, 0, 1), (272, 91, 0, 1), (1131, 91, 0, 1), (3778, 91, 0, 1), (4507, 91, 0, 1), (2972, 91, 0, 1), (197, 91, 0, 1), (128, 91, 0, 1), (482, 91, 0, 1), (2168, 91, 0, 1), (9, 91, 0, 1), (696, 91, 0, 1), (5066, 91, 0, 1), (3899, 91, 0, 1), (3705, 91, 0, 1), (5067, 91, 0, 1), (2647, 91, 0, 1), (4286, 91, 0, 1), (7, 91, 0, 1), (2563, 91, 0, 1), (3360, 91, 0, 1), (5068, 91, 0, 1), (676, 91, 0, 1), (2043, 91, 0, 1), (120, 91, 0, 1), (5069, 91, 0, 1), (1801, 91, 0, 1), (817, 91, 0, 1), (3472, 91, 0, 1), (3386, 91, 0, 1), (5070, 91, 0, 1), (2485, 91, 0, 1), (5071, 91, 0, 1), (3095, 91, 0, 1), (5072, 91, 0, 1), (2179, 91, 0, 1), (3892, 91, 0, 1), (1449, 91, 0, 1), (586, 91, 0, 1), (5073, 91, 0, 1), (5074, 91, 0, 1), (862, 91, 0, 1), (773, 91, 0, 1), (158, 91, 0, 1), (2265, 91, 0, 1), (1536, 91, 0, 1), (810, 91, 0, 1), (2797, 91, 0, 1), (318, 91, 0, 1), (778, 91, 0, 1), (1021, 91, 0, 1), (5075, 91, 0, 1), (2333, 91, 0, 1), (183, 91, 0, 1), (485, 91, 0, 1), (5076, 91, 0, 1), (5077, 91, 0, 1), (225, 91, 0, 1), (195, 91, 0, 1), (71, 91, 0, 1), (2660, 91, 0, 1), (160, 91, 0, 1), (607, 91, 0, 1), (1256, 91, 0, 1), (5078, 91, 0, 1), (107, 91, 0, 1), (852, 91, 0, 1), (5079, 91, 0, 1), (5080, 91, 0, 1), (5081, 91, 0, 1), (3583, 91, 0, 1), (5082, 91, 0, 1), (27, 91, 0, 1), (5083, 91, 0, 1), (5084, 91, 0, 1), (4778, 91, 0, 1), (3032, 91, 0, 1), (1114, 91, 0, 1), (5085, 91, 0, 1), (4200, 91, 0, 1), (118, 91, 0, 1), (3153, 91, 0, 1), (117, 91, 0, 1), (254, 91, 0, 1), (5086, 91, 0, 1), (5087, 91, 0, 1), (3007, 91, 0, 1), (5088, 91, 0, 1), (5089, 91, 0, 1), (931, 91, 0, 1), (235, 91, 0, 1), (246, 91, 0, 1), (5090, 91, 0, 1), (389, 91, 0, 1), (5091, 91, 0, 1), (3732, 91, 0, 1), (3733, 91, 0, 1), (3734, 91, 0, 1), (3735, 91, 0, 1), (3736, 91, 0, 1), (2294, 92, 0, 1), (5092, 92, 0, 1), (2553, 92, 0, 1), (5270, 92, 0, 1), (5271, 92, 0, 1), (2334, 92, 0, 1), (5094, 92, 0, 1), (844, 92, 0, 1), (2658, 92, 0, 1), (2340, 92, 0, 1), (37, 92, 0, 1), (5095, 92, 0, 1), (5096, 92, 0, 1), (4268, 92, 0, 1), (5097, 92, 0, 1), (61, 92, 0, 1), (5098, 92, 0, 1), (2499, 92, 0, 1), (196, 92, 0, 1), (4840, 92, 0, 1), (5099, 92, 0, 1), (5100, 92, 0, 1), (1010, 92, 0, 1), (5101, 92, 0, 1), (2373, 92, 0, 1), (1025, 92, 0, 1), (652, 92, 0, 1), (773, 92, 0, 1), (2882, 92, 0, 1), (2179, 92, 0, 1), (387, 92, 0, 1), (5102, 92, 0, 1), (3195, 92, 0, 1), (1261, 92, 0, 1), (5103, 92, 0, 1), (357, 92, 0, 1), (852, 92, 0, 1), (2158, 92, 0, 1), (5104, 92, 0, 1), (444, 92, 0, 1), (673, 92, 0, 1), (253, 92, 0, 1), (3681, 92, 0, 1), (5105, 92, 0, 1), (1114, 92, 0, 1), (43, 92, 0, 1), (3308, 92, 0, 1), (5106, 92, 0, 1), (92, 92, 0, 1), (5107, 92, 0, 1), (2424, 92, 0, 1), (25, 92, 0, 1), (7, 92, 0, 1), (154, 92, 0, 1), (453, 92, 0, 1), (2343, 92, 0, 1), (4635, 92, 0, 1), (292, 92, 0, 1), (577, 92, 0, 1), (3074, 92, 0, 1), (4738, 92, 0, 1), (1418, 92, 0, 1), (1331, 92, 0, 1), (2194, 92, 0, 1), (578, 92, 0, 1), (482, 92, 0, 1), (2168, 92, 0, 1), (2529, 92, 0, 1), (5108, 92, 0, 1), (938, 92, 0, 1), (1256, 92, 0, 1), (586, 92, 0, 1), (1661, 92, 0, 1), (63, 92, 0, 1), (2318, 92, 0, 1), (5109, 92, 0, 1), (2568, 92, 0, 1), (5110, 92, 0, 1), (90, 92, 0, 1), (225, 92, 0, 1), (5111, 92, 0, 1), (479, 92, 0, 1), (4005, 92, 0, 1), (5112, 92, 0, 1), (197, 92, 0, 1), (4720, 92, 0, 1), (12, 92, 0, 1), (1544, 92, 0, 1), (3101, 92, 0, 1), (5113, 92, 0, 1), (3104, 92, 0, 1), (5114, 92, 0, 1), (115, 92, 0, 1), (4435, 92, 0, 1), (1168, 92, 0, 1), (3627, 92, 0, 1), (5115, 92, 0, 1), (1484, 92, 0, 1), (3154, 92, 0, 1), (3201, 92, 0, 1), (2352, 92, 0, 1), (4004, 92, 0, 1), (5116, 92, 0, 1), (136, 92, 0, 1), (1631, 92, 0, 1), (5117, 92, 0, 1), (5118, 92, 0, 1), (120, 92, 0, 1), (495, 92, 0, 1), (5119, 92, 0, 1), (1487, 92, 0, 1), (5120, 92, 0, 1), (5121, 92, 0, 1), (2834, 92, 0, 1), (222, 92, 0, 1), (5122, 92, 0, 1), (195, 92, 0, 1), (5123, 92, 0, 1), (71, 92, 0, 1), (3585, 92, 0, 1), (5124, 92, 0, 1), (5125, 92, 0, 1), (3414, 92, 0, 1), (5126, 92, 0, 1), (144, 92, 0, 1), (5127, 92, 0, 1), (585, 92, 0, 1), (676, 92, 0, 1), (1874, 92, 0, 1), (5128, 92, 0, 1), (5129, 92, 0, 1), (5130, 92, 0, 1), (5131, 92, 0, 1), (2431, 92, 0, 1), (2683, 92, 0, 1), (5132, 92, 0, 1), (366, 92, 0, 1), (1877, 92, 0, 1), (180, 92, 0, 1), (5133, 92, 0, 1), (5061, 92, 0, 1), (5134, 92, 0, 1), (2230, 92, 0, 1), (4792, 92, 0, 1), (5135, 92, 0, 1), (147, 92, 0, 1), (5136, 92, 0, 1), (5137, 92, 0, 1), (5138, 92, 0, 1), (2170, 92, 0, 1), (5139, 92, 0, 1), (5140, 92, 0, 1), (5141, 92, 0, 1), (128, 92, 0, 1), (2204, 92, 0, 1), (2729, 92, 0, 1), (402, 92, 0, 1), (5142, 92, 0, 1), (5143, 92, 0, 1), (290, 92, 0, 1), (1089, 92, 0, 1), (5144, 92, 0, 1), (72, 92, 0, 1), (3448, 92, 0, 1), (2372, 92, 0, 1), (1548, 92, 0, 1), (3732, 92, 0, 1), (3733, 92, 0, 1), (3734, 92, 0, 1), (3735, 92, 0, 1), (3736, 92, 0, 1), (5145, 93, 0, 1), (4663, 93, 0, 1), (3752, 93, 0, 1), (5147, 93, 0, 1), (2158, 93, 0, 1), (43, 93, 0, 1), (5148, 93, 0, 1), (1261, 93, 0, 1), (5149, 93, 0, 1), (235, 93, 0, 1), (183, 93, 0, 1), (1077, 93, 0, 1), (2882, 93, 0, 1), (5150, 93, 0, 1), (1021, 93, 0, 1), (2179, 93, 0, 1), (357, 93, 0, 1), (292, 93, 0, 1), (1157, 93, 0, 1), (1797, 93, 0, 1), (444, 93, 0, 1), (92, 93, 0, 1), (1190, 93, 0, 1), (5151, 93, 0, 1), (1425, 93, 0, 1), (5152, 93, 0, 1), (5153, 93, 0, 1), (2220, 93, 0, 1), (1385, 93, 0, 1), (3277, 93, 0, 1), (1594, 93, 0, 1), (196, 93, 0, 1), (5154, 93, 0, 1), (1526, 93, 0, 1), (5155, 93, 0, 1), (4922, 93, 0, 1), (5156, 93, 0, 1), (2247, 93, 0, 1), (251, 93, 0, 1), (221, 93, 0, 1), (2269, 93, 0, 1), (5157, 93, 0, 1), (160, 93, 0, 1), (5158, 93, 0, 1), (935, 93, 0, 1), (395, 93, 0, 1), (4463, 93, 0, 1), (180, 93, 0, 1), (592, 93, 0, 1), (707, 93, 0, 1), (3340, 93, 0, 1), (5159, 93, 0, 1), (133, 93, 0, 1), (3189, 93, 0, 1), (385, 93, 0, 1), (1258, 93, 0, 1), (1851, 93, 0, 1), (1078, 93, 0, 1), (5160, 93, 0, 1), (504, 93, 0, 1), (5161, 93, 0, 1), (1170, 93, 0, 1), (118, 93, 0, 1), (3065, 93, 0, 1), (5162, 93, 0, 1), (172, 93, 0, 1), (1256, 93, 0, 1), (3916, 93, 0, 1), (5163, 93, 0, 1), (137, 93, 0, 1), (2838, 93, 0, 1), (5164, 93, 0, 1), (482, 93, 0, 1), (5165, 93, 0, 1), (5166, 93, 0, 1), (673, 93, 0, 1), (2206, 93, 0, 1), (120, 93, 0, 1), (5167, 93, 0, 1), (696, 93, 0, 1), (3598, 93, 0, 1), (1114, 93, 0, 1), (5168, 93, 0, 1), (115, 93, 0, 1), (5099, 93, 0, 1), (5169, 93, 0, 1), (1010, 93, 0, 1), (2301, 93, 0, 1), (3088, 93, 0, 1), (2655, 93, 0, 1), (2777, 93, 0, 1), (549, 93, 0, 1), (2234, 93, 0, 1), (1874, 93, 0, 1), (5170, 93, 0, 1), (1519, 93, 0, 1), (5171, 93, 0, 1), (5172, 93, 0, 1), (194, 93, 0, 1), (1333, 93, 0, 1), (2203, 93, 0, 1), (676, 93, 0, 1), (1203, 93, 0, 1), (5173, 93, 0, 1), (5174, 93, 0, 1), (537, 93, 0, 1), (269, 93, 0, 1), (5175, 93, 0, 1), (2991, 93, 0, 1), (1939, 93, 0, 1), (4507, 93, 0, 1), (633, 93, 0, 1), (3154, 93, 0, 1), (7, 93, 0, 1), (5176, 93, 0, 1), (2183, 93, 0, 1), (219, 93, 0, 1), (2586, 93, 0, 1), (495, 93, 0, 1), (5177, 93, 0, 1), (4784, 93, 0, 1), (3010, 93, 0, 1), (2141, 93, 0, 1), (2168, 93, 0, 1), (47, 93, 0, 1), (5178, 93, 0, 1), (1281, 93, 0, 1), (5179, 93, 0, 1), (1420, 93, 0, 1), (2274, 93, 0, 1); INSERT INTO `search_keywords` VALUES (3869, 93, 0, 1), (5180, 93, 0, 1), (5181, 93, 0, 1), (5182, 93, 0, 1), (5183, 93, 0, 1), (660, 93, 0, 1), (801, 93, 0, 1), (82, 93, 0, 1), (5184, 93, 0, 1), (144, 93, 0, 1), (193, 93, 0, 1), (177, 93, 0, 1), (5185, 93, 0, 1), (1544, 93, 0, 1), (2624, 93, 0, 1), (471, 93, 0, 1), (2174, 93, 0, 1), (356, 93, 0, 1), (1014, 93, 0, 1), (5186, 93, 0, 1), (1047, 93, 0, 1), (4446, 93, 0, 1), (5187, 93, 0, 1), (2648, 93, 0, 1), (142, 93, 0, 1), (584, 93, 0, 1), (5188, 93, 0, 1), (5189, 93, 0, 1), (1025, 93, 0, 1), (5190, 93, 0, 1), (25, 93, 0, 1), (681, 93, 0, 1), (5191, 93, 0, 1), (5192, 93, 0, 1), (12, 93, 0, 1), (4048, 93, 0, 1), (567, 93, 0, 1), (5193, 93, 0, 1), (638, 93, 0, 1), (593, 93, 0, 1), (5194, 93, 0, 1), (4140, 93, 0, 1), (2248, 93, 0, 1), (5195, 93, 0, 1), (1606, 93, 0, 1), (280, 93, 0, 1), (5196, 93, 0, 1), (124, 93, 0, 1), (2554, 93, 0, 1), (4893, 93, 0, 1), (136, 93, 0, 1), (5197, 93, 0, 1), (453, 93, 0, 1), (4254, 93, 0, 1), (5198, 93, 0, 1), (158, 93, 0, 1), (883, 93, 0, 1), (63, 93, 0, 1), (5199, 93, 0, 1), (5200, 93, 0, 1), (765, 93, 0, 1), (26, 93, 0, 1), (5201, 93, 0, 1), (5202, 93, 0, 1), (3476, 93, 0, 1), (2765, 93, 0, 1), (3732, 93, 0, 1), (3733, 93, 0, 1), (3734, 93, 0, 1), (3735, 93, 0, 1), (3736, 93, 0, 1), (2294, 94, 0, 1), (2907, 94, 0, 1), (2443, 94, 0, 1), (30, 94, 0, 1), (5272, 94, 0, 1), (3765, 94, 0, 1), (5204, 94, 0, 1), (3073, 94, 0, 1), (61, 94, 0, 1), (3906, 94, 0, 1), (115, 94, 0, 1), (5205, 94, 0, 1), (2204, 94, 0, 1), (574, 94, 0, 1), (2170, 94, 0, 1), (5206, 94, 0, 1), (192, 94, 0, 1), (1014, 94, 0, 1), (5207, 94, 0, 1), (3177, 94, 0, 1), (7, 94, 0, 1), (3181, 94, 0, 1), (482, 94, 0, 1), (47, 94, 0, 1), (1104, 94, 0, 1), (356, 94, 0, 1), (5127, 94, 0, 1), (5208, 94, 0, 1), (681, 94, 0, 1), (225, 94, 0, 1), (4584, 94, 0, 1), (5209, 94, 0, 1), (37, 94, 0, 1), (292, 94, 0, 1), (389, 94, 0, 1), (309, 94, 0, 1), (3069, 94, 0, 1), (5210, 94, 0, 1), (2979, 94, 0, 1), (2186, 94, 0, 1), (4014, 94, 0, 1), (67, 94, 0, 1), (5211, 94, 0, 1), (4265, 94, 0, 1), (4113, 94, 0, 1), (28, 94, 0, 1), (3701, 94, 0, 1), (21, 94, 0, 1), (54, 94, 0, 1), (4230, 94, 0, 1), (5212, 94, 0, 1), (444, 94, 0, 1), (5213, 94, 0, 1), (221, 94, 0, 1), (5214, 94, 0, 1), (4295, 94, 0, 1), (5215, 94, 0, 1), (281, 94, 0, 1), (2972, 94, 0, 1), (4524, 94, 0, 1), (5216, 94, 0, 1), (256, 94, 0, 1), (142, 94, 0, 1), (5217, 94, 0, 1), (43, 94, 0, 1), (92, 94, 0, 1), (5218, 94, 0, 1), (5219, 94, 0, 1), (1315, 94, 0, 1), (2973, 94, 0, 1), (3977, 94, 0, 1), (778, 94, 0, 1), (609, 94, 0, 1), (195, 94, 0, 1), (5220, 94, 0, 1), (5221, 94, 0, 1), (240, 94, 0, 1), (5222, 94, 0, 1), (5223, 94, 0, 1), (2452, 94, 0, 1), (128, 94, 0, 1), (5224, 94, 0, 1), (495, 94, 0, 1), (2596, 94, 0, 1), (357, 94, 0, 1), (3095, 94, 0, 1), (4782, 94, 0, 1), (5225, 94, 0, 1), (473, 94, 0, 1), (5226, 94, 0, 1), (1418, 94, 0, 1), (4556, 94, 0, 1), (25, 94, 0, 1), (5227, 94, 0, 1), (5228, 94, 0, 1), (3732, 94, 0, 1), (3733, 94, 0, 1), (3734, 94, 0, 1), (3735, 94, 0, 1), (3736, 94, 0, 1), (2294, 95, 0, 1), (3304, 95, 0, 1), (5174, 95, 0, 1), (4663, 95, 0, 1), (5273, 95, 0, 1), (402, 95, 0, 1), (1077, 95, 0, 1), (578, 95, 0, 1), (1014, 95, 0, 1), (1487, 95, 0, 1), (5230, 95, 0, 1), (5231, 95, 0, 1), (2158, 95, 0, 1), (4011, 95, 0, 1), (115, 95, 0, 1), (5232, 95, 0, 1), (5233, 95, 0, 1), (43, 95, 0, 1), (1603, 95, 0, 1), (2462, 95, 0, 1), (5234, 95, 0, 1), (4832, 95, 0, 1), (1793, 95, 0, 1), (2183, 95, 0, 1), (5235, 95, 0, 1), (2643, 95, 0, 1), (5236, 95, 0, 1), (5237, 95, 0, 1), (225, 95, 0, 1), (183, 95, 0, 1), (2924, 95, 0, 1), (5238, 95, 0, 1), (1074, 95, 0, 1), (357, 95, 0, 1), (2141, 95, 0, 1), (7, 95, 0, 1), (210, 95, 0, 1), (1258, 95, 0, 1), (3147, 95, 0, 1), (2416, 95, 0, 1), (3828, 95, 0, 1), (2707, 95, 0, 1), (549, 95, 0, 1), (609, 95, 0, 1), (5239, 95, 0, 1), (3083, 95, 0, 1), (5240, 95, 0, 1), (566, 95, 0, 1), (3032, 95, 0, 1), (584, 95, 0, 1), (180, 95, 0, 1), (2179, 95, 0, 1), (5241, 95, 0, 1), (2858, 95, 0, 1), (2255, 95, 0, 1), (468, 95, 0, 1), (3930, 95, 0, 1), (3323, 95, 0, 1), (5242, 95, 0, 1), (986, 95, 0, 1), (25, 95, 0, 1), (76, 95, 0, 1), (431, 95, 0, 1), (3926, 95, 0, 1), (2084, 95, 0, 1), (5243, 95, 0, 1), (676, 95, 0, 1), (2174, 95, 0, 1), (250, 95, 0, 1), (707, 95, 0, 1), (177, 95, 0, 1), (5244, 95, 0, 1), (5245, 95, 0, 1), (202, 95, 0, 1), (1261, 95, 0, 1), (160, 95, 0, 1), (5246, 95, 0, 1), (1939, 95, 0, 1), (5247, 95, 0, 1), (1002, 95, 0, 1), (3419, 95, 0, 1), (92, 95, 0, 1), (5248, 95, 0, 1), (171, 95, 0, 1), (444, 95, 0, 1), (3427, 95, 0, 1), (5249, 95, 0, 1), (3786, 95, 0, 1), (482, 95, 0, 1), (222, 95, 0, 1), (9, 95, 0, 1), (2160, 95, 0, 1), (3802, 95, 0, 1), (5250, 95, 0, 1), (5251, 95, 0, 1), (5252, 95, 0, 1), (253, 95, 0, 1), (5253, 95, 0, 1), (71, 95, 0, 1), (1281, 95, 0, 1), (586, 95, 0, 1), (2172, 95, 0, 1), (3976, 95, 0, 1), (2749, 95, 0, 1), (2794, 95, 0, 1), (2588, 95, 0, 1), (385, 95, 0, 1), (3143, 95, 0, 1), (473, 95, 0, 1), (3360, 95, 0, 1), (5254, 95, 0, 1), (5255, 95, 0, 1), (4326, 95, 0, 1), (4507, 95, 0, 1), (5274, 95, 0, 1), (3733, 95, 0, 1), (3734, 95, 0, 1), (3735, 95, 0, 1), (3736, 95, 0, 1), (2158, 1, 2, 0), (5279, 3, 8, 1), (5276, 3, 8, 1), (5277, 3, 8, 1), (5276, 3, 8, 1), (5277, 3, 8, 1), (5276, 3, 8, 1), (5277, 3, 8, 1), (5278, 3, 8, 1), (2694, 3, 8, 1), (5280, 4, 8, 1), (5276, 4, 8, 1), (5277, 4, 8, 1), (5276, 4, 8, 1), (5277, 4, 8, 1), (5276, 4, 8, 1), (5277, 4, 8, 1), (5278, 4, 8, 1), (2694, 4, 8, 1), (5281, 5, 8, 1), (5276, 5, 8, 1), (5277, 5, 8, 1), (5276, 5, 8, 1), (5277, 5, 8, 1), (5276, 5, 8, 1), (5277, 5, 8, 1), (5278, 5, 8, 1), (2694, 5, 8, 1), (2159, 6, 1, 0), (2159, 6, 3, 0), (5282, 7, 8, 1), (5276, 7, 8, 1), (5277, 7, 8, 1), (5276, 7, 8, 1), (5277, 7, 8, 1), (5276, 7, 8, 1), (5277, 7, 8, 1), (5278, 7, 8, 1), (2694, 7, 8, 1), (5283, 9, 8, 1), (5276, 9, 8, 1), (5277, 9, 8, 1), (5276, 9, 8, 1), (5277, 9, 8, 1), (5276, 9, 8, 1), (5277, 9, 8, 1), (5278, 9, 8, 1), (2694, 9, 8, 1), (3185, 1000, 0, 0), (160, 1000, 0, 0), (1437, 1000, 0, 0), (5284, 1000, 0, 0), (1261, 1001, 0, 0), (160, 1001, 0, 0), (1826, 1001, 0, 0), (628, 1002, 0, 0), (107, 1002, 0, 0), (586, 1003, 0, 0), (549, 1003, 0, 0), (1261, 1004, 0, 0), (160, 1004, 0, 0), (5285, 1004, 0, 0), (5286, 1005, 0, 0), (1264, 1005, 0, 0), (5297, 1006, 0, 0), (1264, 1006, 0, 0), (1261, 1007, 0, 0), (160, 1007, 0, 0), (1264, 1007, 0, 0), (586, 1008, 0, 0), (581, 1008, 0, 0), (5306, 1009, 0, 0), (2183, 1009, 0, 0), (581, 1009, 0, 0), (1261, 1010, 0, 0), (160, 1010, 0, 0), (5303, 1010, 0, 0), (5286, 1011, 0, 0), (581, 1011, 0, 0), (1261, 1012, 0, 0), (160, 1012, 0, 0), (581, 1012, 0, 0), (3583, 1012, 0, 0), (5323, 1013, 0, 0), (1261, 1014, 0, 0), (160, 1014, 0, 0), (663, 1014, 0, 0), (3185, 1015, 0, 0), (160, 1015, 0, 0), (1437, 1015, 0, 0), (5331, 1015, 0, 0), (1261, 1016, 0, 0), (160, 1016, 0, 0), (5332, 1016, 0, 0), (3320, 1017, 0, 0), (2743, 1018, 0, 0), (2183, 1018, 0, 0), (549, 1018, 0, 0), (5337, 1000, 0, 1), (5337, 1001, 0, 1), (5337, 1003, 0, 1), (5337, 1004, 0, 1), (7, 1005, 0, 1), (642, 1005, 0, 1), (581, 1005, 0, 1), (2589, 1005, 0, 1), (2160, 1005, 0, 1), (4311, 1005, 0, 1), (2183, 1005, 0, 1), (922, 1005, 0, 1), (1239, 1005, 0, 1), (5285, 1005, 0, 1), (5287, 1005, 0, 1), (5288, 1005, 0, 1), (5275, 1005, 0, 1), (5338, 1005, 0, 1), (5339, 1005, 0, 1), (248, 1005, 0, 1), (1014, 1005, 0, 1), (5290, 1005, 0, 1), (5340, 1005, 0, 1), (5292, 1005, 0, 1), (92, 1005, 0, 1), (1256, 1005, 0, 1), (3022, 1005, 0, 1), (158, 1005, 0, 1), (801, 1005, 0, 1), (5341, 1005, 0, 1), (5342, 1005, 0, 1), (5343, 1005, 0, 1), (5295, 1005, 0, 1), (5344, 1005, 0, 1), (5345, 1005, 0, 1), (5346, 1005, 0, 1), (5298, 1006, 0, 1), (5290, 1006, 0, 1), (5299, 1006, 0, 1), (2795, 1006, 0, 1), (3329, 1006, 0, 1), (5287, 1006, 0, 1), (578, 1006, 0, 1), (5285, 1006, 0, 1), (5288, 1006, 0, 1), (5277, 1006, 0, 1), (124, 1006, 0, 1), (581, 1006, 0, 1), (1462, 1006, 0, 1), (1264, 1006, 0, 1), (5338, 1006, 0, 1), (5347, 1006, 0, 1), (5348, 1006, 0, 1), (188, 1006, 0, 1), (659, 1006, 0, 1), (92, 1006, 0, 1), (2160, 1006, 0, 1), (5349, 1006, 0, 1), (5342, 1006, 0, 1), (5350, 1006, 0, 1), (5343, 1006, 0, 1), (5303, 1006, 0, 1), (663, 1006, 0, 1), (5351, 1006, 0, 1), (5352, 1006, 0, 1), (5345, 1006, 0, 1), (5337, 1007, 0, 1), (5337, 1008, 0, 1), (5337, 1009, 0, 1), (5337, 1010, 0, 1), (221, 1011, 0, 1), (357, 1011, 0, 1), (4315, 1011, 0, 1), (1264, 1011, 0, 1), (1716, 1011, 0, 1), (2183, 1011, 0, 1), (581, 1011, 0, 1), (40, 1011, 0, 1), (385, 1011, 0, 1), (80, 1011, 0, 1), (5338, 1011, 0, 1), (5353, 1011, 0, 1), (5354, 1011, 0, 1), (2168, 1011, 0, 1), (39, 1011, 0, 1), (43, 1011, 0, 1), (3583, 1011, 0, 1), (5308, 1011, 0, 1), (5309, 1011, 0, 1), (444, 1011, 0, 1), (676, 1011, 0, 1), (5310, 1011, 0, 1), (389, 1011, 0, 1), (4283, 1011, 0, 1), (2843, 1011, 0, 1), (2452, 1011, 0, 1), (5311, 1011, 0, 1), (158, 1011, 0, 1), (5355, 1011, 0, 1), (292, 1011, 0, 1), (957, 1011, 0, 1), (248, 1011, 0, 1), (5313, 1011, 0, 1), (3266, 1011, 0, 1), (5197, 1011, 0, 1), (92, 1011, 0, 1), (1544, 1011, 0, 1), (1256, 1011, 0, 1), (5314, 1011, 0, 1), (5315, 1011, 0, 1), (5306, 1011, 0, 1), (5316, 1011, 0, 1), (5317, 1011, 0, 1), (2897, 1011, 0, 1), (5318, 1011, 0, 1), (1000, 1011, 0, 1), (5348, 1011, 0, 1), (188, 1011, 0, 1), (659, 1011, 0, 1), (5356, 1011, 0, 1), (5357, 1011, 0, 1), (1261, 1011, 0, 1), (160, 1011, 0, 1), (5358, 1011, 0, 1), (5359, 1011, 0, 1), (5360, 1011, 0, 1), (5345, 1011, 0, 1), (5337, 1012, 0, 1), (1826, 1013, 0, 1), (1418, 1013, 0, 1), (4717, 1013, 0, 1), (5324, 1013, 0, 1), (1606, 1013, 0, 1), (444, 1013, 0, 1), (2452, 1013, 0, 1), (5325, 1013, 0, 1), (5326, 1013, 0, 1), (357, 1013, 0, 1), (5327, 1013, 0, 1), (5309, 1013, 0, 1), (1288, 1013, 0, 1), (5328, 1013, 0, 1), (1281, 1013, 0, 1), (248, 1013, 0, 1), (5329, 1013, 0, 1), (5338, 1013, 0, 1), (5353, 1013, 0, 1), (5348, 1013, 0, 1), (7, 1013, 0, 1), (501, 1013, 0, 1), (581, 1013, 0, 1), (92, 1013, 0, 1), (28, 1013, 0, 1), (567, 1013, 0, 1), (884, 1013, 0, 1), (43, 1013, 0, 1), (1544, 1013, 0, 1), (5275, 1013, 0, 1), (2160, 1013, 0, 1), (128, 1013, 0, 1), (260, 1013, 0, 1), (5330, 1013, 0, 1), (3254, 1013, 0, 1), (5337, 1014, 0, 1), (5337, 1015, 0, 1), (5337, 1016, 0, 1), (3320, 1017, 0, 1), (1418, 1017, 0, 1), (4717, 1017, 0, 1), (5324, 1017, 0, 1), (1606, 1017, 0, 1), (5338, 1017, 0, 1), (5361, 1017, 0, 1), (2765, 1017, 0, 1), (1025, 1017, 0, 1), (1333, 1017, 0, 1), (4507, 1017, 0, 1), (5347, 1017, 0, 1), (5348, 1017, 0, 1), (188, 1017, 0, 1), (659, 1017, 0, 1), (92, 1017, 0, 1), (357, 1017, 0, 1), (2642, 1017, 0, 1), (5334, 1017, 0, 1), (1544, 1017, 0, 1), (5362, 1017, 0, 1), (5363, 1017, 0, 1), (5364, 1017, 0, 1), (5365, 1017, 0, 1), (5366, 1017, 0, 1), (5367, 1017, 0, 1), (5368, 1017, 0, 1), (5369, 1017, 0, 1), (5345, 1017, 0, 1), (5346, 1017, 0, 1), (5337, 1018, 0, 1), (2159, 7, 1, 0), (2159, 7, 3, 0), (628, 1019, 0, 0), (107, 1019, 0, 0), (1261, 1020, 0, 0), (160, 1020, 0, 0), (5370, 1020, 0, 0), (575, 1021, 0, 0), (1264, 1021, 0, 0), (675, 1021, 0, 0), (1935, 1022, 0, 0), (590, 1022, 0, 0), (5290, 1022, 0, 1), (1771, 1022, 0, 1), (767, 1022, 0, 1), (1025, 1022, 0, 1), (1935, 1022, 0, 1), (3842, 1022, 0, 1), (1606, 1022, 0, 1), (5371, 1022, 0, 1), (1256, 1022, 0, 1), (550, 1022, 0, 1), (5372, 1022, 0, 1), (5316, 1022, 0, 1), (19, 1022, 0, 1), (2897, 1022, 0, 1), (5373, 1022, 0, 1), (3249, 1022, 0, 1), (5197, 1022, 0, 1), (1544, 1022, 0, 1), (67, 1022, 0, 1), (5325, 1022, 0, 1), (2743, 1022, 0, 1), (253, 1022, 0, 1), (5287, 1022, 0, 1), (5319, 1022, 0, 1), (96, 1022, 0, 1), (659, 1022, 0, 1), (92, 1022, 0, 1), (2160, 1022, 0, 1), (5374, 1022, 0, 1), (1261, 1022, 0, 1), (160, 1022, 0, 1), (5370, 1022, 0, 1), (5275, 1022, 0, 1), (5321, 1022, 0, 1), (5375, 1022, 0, 1), (2703, 1023, 0, 0), (1239, 1023, 0, 0), (12, 1023, 0, 0), (5287, 1023, 0, 0), (5376, 1024, 0, 0), (3493, 1024, 0, 0), (5377, 1024, 0, 0), (1264, 1024, 0, 0), (1261, 1025, 0, 0), (160, 1025, 0, 0), (5378, 1025, 0, 0), (1261, 1026, 0, 0), (160, 1026, 0, 0), (5197, 1026, 0, 0), (1264, 1027, 0, 0), (5297, 1027, 0, 0), (3266, 1027, 0, 0), (4856, 1027, 0, 1), (30, 1027, 0, 1), (2441, 1027, 0, 1), (1264, 1027, 0, 1), (1716, 1027, 0, 1), (3266, 1027, 0, 1), (357, 1027, 0, 1), (385, 1027, 0, 1), (1527, 1027, 0, 1), (590, 1027, 0, 1), (43, 1027, 0, 1), (4265, 1027, 0, 1), (5379, 1027, 0, 1), (158, 1027, 0, 1), (4356, 1027, 0, 1), (188, 1027, 0, 1), (659, 1027, 0, 1), (189, 1027, 0, 1), (92, 1027, 0, 1), (5380, 1027, 0, 1), (2703, 1027, 0, 1), (1239, 1027, 0, 1), (12, 1027, 0, 1), (5381, 1027, 0, 1), (575, 1027, 0, 1), (5382, 1027, 0, 1), (5376, 1027, 0, 1), (3493, 1027, 0, 1), (5377, 1027, 0, 1), (5383, 1027, 0, 1), (1261, 1027, 0, 1), (160, 1027, 0, 1), (5384, 1027, 0, 1), (2159, 8, 1, 0), (2159, 8, 3, 0), (1261, 1028, 0, 0), (160, 1028, 0, 0), (2473, 1028, 0, 0), (2794, 1028, 0, 0), (884, 1028, 0, 0), (5385, 1029, 0, 0), (2643, 1029, 0, 0), (5386, 1029, 0, 1), (4074, 1029, 0, 1), (5275, 1029, 0, 1), (5290, 1029, 0, 1), (1256, 1029, 0, 1), (2643, 1029, 0, 1), (1606, 1029, 0, 1), (4266, 1029, 0, 1), (1143, 1029, 0, 1), (5285, 1029, 0, 1), (2480, 1029, 0, 1), (4507, 1029, 0, 1), (126, 1029, 0, 1), (444, 1029, 0, 1), (357, 1029, 0, 1), (257, 1029, 0, 1), (263, 1029, 0, 1), (610, 1029, 0, 1), (85, 1029, 0, 1), (1637, 1029, 0, 1), (107, 1029, 0, 1), (751, 1029, 0, 1), (160, 1029, 0, 1), (398, 1029, 0, 1), (2794, 1029, 0, 1), (76, 1029, 0, 1), (5387, 1029, 0, 1), (5388, 1029, 0, 1), (147, 1029, 0, 1), (210, 1029, 0, 1), (2795, 1029, 0, 1), (5389, 1029, 0, 1), (427, 1029, 0, 1), (5390, 1029, 0, 1), (5391, 1029, 0, 1), (1072, 1029, 0, 1), (184, 1029, 0, 1), (1469, 1029, 0, 1), (5021, 1029, 0, 1), (4036, 1029, 0, 1), (1481, 1029, 0, 1), (199, 1029, 0, 1), (5392, 1029, 0, 1), (43, 1029, 0, 1), (3329, 1029, 0, 1), (2572, 1029, 0, 1), (5393, 1029, 0, 1), (771, 1029, 0, 1), (1473, 1029, 0, 1), (5319, 1029, 0, 1), (188, 1029, 0, 1), (659, 1029, 0, 1), (92, 1029, 0, 1), (5320, 1029, 0, 1), (1261, 1029, 0, 1), (5321, 1029, 0, 1), (586, 1029, 0, 1), (5394, 1029, 0, 1), (5395, 1030, 0, 0), (5396, 1030, 0, 0), (628, 1031, 0, 0), (107, 1031, 0, 0), (1261, 1032, 0, 0), (160, 1032, 0, 0), (2643, 1032, 0, 0), (1261, 1033, 0, 0), (160, 1033, 0, 0), (879, 1033, 0, 0), (2584, 1033, 0, 0), (1837, 1034, 0, 0), (2794, 1034, 0, 0), (5397, 1034, 0, 0), (5286, 1035, 0, 0), (2206, 1035, 0, 0), (212, 1035, 0, 0), (5275, 1035, 0, 1), (5386, 1035, 0, 1), (4832, 1035, 0, 1), (2500, 1035, 0, 1), (2183, 1035, 0, 1), (2206, 1035, 0, 1), (212, 1035, 0, 1), (586, 1035, 0, 1), (3329, 1035, 0, 1), (5398, 1035, 0, 1), (1606, 1035, 0, 1), (5399, 1035, 0, 1), (5400, 1035, 0, 1), (5401, 1035, 0, 1), (357, 1035, 0, 1), (3279, 1035, 0, 1), (5402, 1035, 0, 1), (5403, 1035, 0, 1), (5404, 1035, 0, 1), (1281, 1035, 0, 1), (2203, 1035, 0, 1), (160, 1035, 0, 1), (3865, 1035, 0, 1), (5405, 1035, 0, 1), (5406, 1035, 0, 1), (2643, 1035, 0, 1), (935, 1035, 0, 1), (751, 1035, 0, 1), (2450, 1035, 0, 1), (5319, 1035, 0, 1), (96, 1035, 0, 1), (5407, 1035, 0, 1), (92, 1035, 0, 1), (2160, 1035, 0, 1), (5374, 1035, 0, 1), (5321, 1035, 0, 1), (1261, 1035, 0, 1), (5408, 1035, 0, 1), (2500, 1036, 0, 0), (2183, 1036, 0, 0), (2206, 1036, 0, 0), (212, 1036, 0, 0), (1261, 1037, 0, 0), (160, 1037, 0, 0), (5401, 1037, 0, 0), (28, 1038, 0, 0), (2794, 1038, 0, 0), (160, 1038, 0, 0), (1637, 1038, 0, 0), (80, 1038, 0, 0), (586, 1039, 0, 0), (5409, 1039, 0, 0), (107, 1039, 0, 0), (5275, 2, 2, 0); -- -------------------------------------------------------- -- -- Table structure for table `sent_notifications` -- CREATE TABLE `sent_notifications` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `timestamp` int(10) NOT NULL, `recipient` varchar(255) DEFAULT NULL, `subject` varchar(255) NOT NULL, `body` text, `html_message` tinyint(1) DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `surveys` -- CREATE TABLE `surveys` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `survey_code` varchar(150) DEFAULT NULL, `survey_name` varchar(150) DEFAULT NULL, `survey_info` mediumtext, `author` varchar(100) DEFAULT NULL, `lang` varchar(50) DEFAULT NULL, `start_date` int(10) unsigned DEFAULT NULL, `end_date` int(10) unsigned DEFAULT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL, `status` tinyint(1) DEFAULT '0', `start_text` mediumtext, `end_text` mediumtext, PRIMARY KEY (`id`), KEY `survey_code` (`survey_code`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `survey_questions_done` -- CREATE TABLE `survey_questions_done` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `surveys_ID` mediumint(8) unsigned NOT NULL, `question_ID` mediumint(8) unsigned NOT NULL, `user_answers` mediumtext NOT NULL, `submited` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `tests` -- CREATE TABLE `tests` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `active` tinyint(1) NOT NULL DEFAULT '1', `content_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', `mastery_score` tinyint(4) unsigned NOT NULL DEFAULT '0', `description` text, `options` text, `publish` tinyint(1) DEFAULT '1', `keep_best` tinyint(1) DEFAULT '0', PRIMARY KEY (`id`), KEY `lessons_ID` (`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ; -- -- Dumping data for table `tests` -- INSERT INTO `tests` VALUES (1, 1, 2, 1, 'General concepts test', 0, '', 'a:8:{s:8:"duration";s:3:"300";s:8:"redoable";s:1:"2";s:8:"onebyone";s:1:"1";s:7:"answers";s:1:"1";s:13:"given_answers";s:1:"1";s:17:"shuffle_questions";s:1:"0";s:15:"shuffle_answers";s:1:"0";s:17:"general_threshold";i:50;}', 1, 0), (2, 1, 30, 2, 'Maya History Test', 50, '<p><span style="font-size: 13px;">This is a generic test about Maya History with 6 generic questions.<br /> Note: All questions and possible answers are shuffled with each test view.<br /> <br /> <strong> </strong></span></p>', 'a:21:{s:8:"duration";i:900;s:8:"redoable";s:2:"20";s:8:"onebyone";s:1:"0";s:7:"answers";s:1:"1";s:13:"given_answers";s:1:"1";s:17:"shuffle_questions";s:1:"1";s:15:"shuffle_answers";s:1:"1";s:17:"general_threshold";i:50;s:12:"master_score";i:50;s:11:"random_pool";i:0;s:17:"user_configurable";i:0;s:16:"maintain_history";s:1:"5";s:12:"display_list";s:1:"0";s:10:"pause_test";s:1:"1";s:15:"display_weights";s:1:"1";s:12:"only_forward";s:1:"0";s:10:"answer_all";s:1:"0";s:10:"redo_wrong";s:1:"0";s:8:"redirect";s:1:"0";s:13:"assign_to_new";N;s:20:"automatic_assignment";N;}', 1, 0), (3, 1, 54, 3, 'Small self-assesment test', 50, '<p><span style="font-family: trebuchet ms,geneva; font-size: 16px;"><strong>This is a small test that will check your basic programming skills</strong></span></p>', 'a:21:{s:8:"duration";i:180;s:8:"redoable";i:0;s:8:"onebyone";s:1:"0";s:7:"answers";s:1:"0";s:13:"given_answers";s:1:"0";s:17:"shuffle_questions";s:1:"1";s:15:"shuffle_answers";s:1:"1";s:12:"master_score";i:50;s:11:"random_pool";i:0;s:17:"user_configurable";i:0;s:16:"maintain_history";s:1:"5";s:12:"display_list";s:1:"0";s:10:"pause_test";s:1:"1";s:15:"display_weights";s:1:"1";s:12:"only_forward";s:1:"0";s:10:"answer_all";s:1:"0";s:10:"redo_wrong";s:1:"0";s:8:"redirect";s:1:"0";s:17:"general_threshold";i:50;s:13:"assign_to_new";N;s:20:"automatic_assignment";N;}', 1, 0), (4, 1, 78, 4, 'A small programming test', 60, 'A small programming test\r\n', 'a:10:{s:8:"duration";i:300;s:8:"redoable";s:1:"3";s:8:"onebyone";s:1:"0";s:7:"answers";s:1:"1";s:13:"given_answers";s:1:"1";s:17:"shuffle_questions";s:1:"0";s:15:"shuffle_answers";s:1:"0";s:17:"general_threshold";N;s:13:"assign_to_new";s:0:"";s:20:"automatic_assignment";s:0:"";}', 1, 0), (5, 1, 1002, 6, 'Final Test', 50, '', 'a:22:{s:8:"duration";i:0;s:8:"redoable";s:1:"1";s:8:"onebyone";s:1:"0";s:12:"only_forward";s:1:"0";s:13:"given_answers";i:1;s:10:"show_score";i:1;s:20:"show_answers_if_pass";i:1;s:16:"maintain_history";s:1:"5";s:7:"answers";i:0;s:8:"redirect";i:0;s:15:"shuffle_answers";s:1:"0";s:17:"shuffle_questions";s:1:"0";s:10:"pause_test";s:1:"0";s:12:"display_list";s:1:"0";s:15:"display_weights";s:1:"0";s:10:"answer_all";s:1:"1";s:13:"test_password";s:0:"";s:10:"redo_wrong";s:1:"0";s:17:"general_threshold";i:50;s:13:"assign_to_new";N;s:20:"automatic_assignment";N;s:15:"student_results";N;}', 1, 0), (6, 1, 1019, 7, 'Final Test', 50, '', 'a:22:{s:8:"duration";i:0;s:8:"redoable";s:1:"3";s:8:"onebyone";s:1:"0";s:12:"only_forward";s:1:"0";s:13:"given_answers";i:1;s:10:"show_score";i:1;s:20:"show_answers_if_pass";i:0;s:16:"maintain_history";s:1:"3";s:7:"answers";i:0;s:8:"redirect";i:0;s:15:"shuffle_answers";s:1:"0";s:17:"shuffle_questions";s:1:"0";s:10:"pause_test";s:1:"0";s:12:"display_list";s:1:"0";s:15:"display_weights";s:1:"0";s:10:"answer_all";s:1:"0";s:13:"test_password";s:0:"";s:10:"redo_wrong";s:1:"0";s:17:"general_threshold";N;s:13:"assign_to_new";N;s:20:"automatic_assignment";N;s:15:"student_results";N;}', 1, 0), (7, 1, 1031, 8, 'Final test', 50, '', 'a:26:{s:8:"duration";i:0;s:8:"redoable";s:1:"3";s:8:"onebyone";s:1:"0";s:12:"only_forward";s:1:"0";s:13:"given_answers";i:1;s:10:"show_score";i:1;s:20:"show_answers_if_pass";i:1;s:16:"maintain_history";s:1:"3";s:7:"answers";i:0;s:8:"redirect";i:0;s:15:"shuffle_answers";s:1:"0";s:17:"shuffle_questions";s:1:"0";s:10:"pause_test";s:1:"0";s:12:"display_list";s:1:"0";s:15:"display_weights";s:1:"0";s:10:"answer_all";s:1:"0";s:13:"test_password";s:0:"";s:10:"redo_wrong";s:1:"0";s:17:"general_threshold";i:50;s:13:"assign_to_new";N;s:20:"automatic_assignment";N;s:15:"student_results";N;s:13:"mastery_score";i:50;s:11:"random_pool";i:0;s:17:"user_configurable";i:0;s:15:"show_incomplete";i:0;}', 1, 0); -- -------------------------------------------------------- -- -- Table structure for table `tests_to_questions` -- CREATE TABLE `tests_to_questions` ( `tests_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `questions_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `weight` tinyint(1) unsigned NOT NULL DEFAULT '1', `previous_question_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`tests_ID`,`questions_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `tests_to_questions` -- INSERT INTO `tests_to_questions` VALUES (1, 1, 1, 167), (1, 2, 1, 164), (1, 3, 1, 0), (2, 4, 1, 0), (2, 5, 1, 4), (2, 6, 1, 7), (2, 7, 1, 5), (2, 8, 1, 6), (2, 9, 1, 8), (3, 10, 1, 13), (3, 11, 1, 12), (3, 12, 1, 10), (3, 13, 1, 14), (3, 14, 1, 0), (4, 19, 1, 0), (4, 20, 1, 19), (4, 21, 1, 20), (4, 22, 1, 21), (4, 23, 1, 22), (5, 25, 1, 0), (5, 26, 1, 25), (5, 27, 1, 26), (5, 28, 1, 27), (5, 29, 1, 30), (5, 30, 1, 28), (5, 31, 1, 29), (5, 32, 1, 31), (5, 33, 1, 32), (5, 34, 1, 33), (5, 35, 1, 34), (6, 36, 1, 0), (6, 37, 1, 36), (6, 38, 1, 37), (6, 39, 1, 38), (6, 40, 1, 39), (6, 41, 1, 40), (6, 42, 1, 41), (6, 43, 1, 42), (6, 44, 1, 43), (6, 45, 1, 44), (6, 46, 1, 45), (7, 47, 1, 0), (7, 48, 1, 47), (7, 49, 1, 48), (7, 50, 1, 49), (7, 51, 1, 50), (7, 52, 1, 51), (7, 53, 1, 52), (7, 54, 1, 53), (7, 55, 1, 54), (7, 56, 1, 55), (7, 57, 1, 58), (7, 58, 1, 56); -- -------------------------------------------------------- -- -- Table structure for table `themes` -- CREATE TABLE `themes` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL, `title` varchar(100) DEFAULT NULL, `author` varchar(100) DEFAULT NULL, `version` varchar(10) DEFAULT NULL, `description` text, `options` text, `layout` text, `path` text NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; -- -- Dumping data for table `themes` -- INSERT INTO `themes` VALUES (1, 'default', 'Default eFront Theme', 'eFront team', '1.0', 'The default eFront theme', 'a:9:{s:11:"show_header";s:1:"1";s:11:"show_footer";s:1:"1";s:17:"sidebar_interface";s:1:"0";s:13:"sidebar_width";s:3:"175";s:17:"images_displaying";s:1:"0";s:16:"toolbar_position";s:5:"right";s:6:"locked";s:1:"0";s:4:"logo";s:23:"default/images/logo.png";s:7:"favicon";s:26:"default/images/favicon.png";}', 'a:1:{s:9:"positions";a:4:{s:6:"layout";s:5:"three";s:8:"leftList";a:2:{i:0;s:5:"login";i:1;s:6:"online";}s:10:"centerList";a:1:{i:0;s:7:"lessons";}s:9:"rightList";a:2:{i:0;s:4:"news";i:1;s:15:"selectedLessons";}}}', 'default/'), (2, 'eFront2013', 'A minimal eFront theme', 'Athanasios Papagelis', '1.0', 'A minimal eFront theme. This is the default theme for eFront 3.6.13', 'a:7:{s:11:"show_header";s:1:"2";s:11:"show_footer";s:1:"1";s:17:"sidebar_interface";s:1:"2";s:17:"images_displaying";s:1:"2";s:16:"toolbar_position";s:5:"right";s:6:"locked";s:1:"0";s:13:"sidebar_width";i:175;}', 'a:1:{s:9:"positions";a:4:{s:6:"layout";s:4:"left";s:8:"leftList";a:3:{i:0;s:5:"login";i:1;s:6:"online";i:2;s:15:"selectedLessons";}s:10:"centerList";a:2:{i:0;s:4:"news";i:1;s:7:"lessons";}s:9:"rightList";a:0:{}}}', 'efront2013/'); -- -------------------------------------------------------- -- -- Table structure for table `tokens` -- CREATE TABLE `tokens` ( `token` char(30) NOT NULL, `status` text NOT NULL, `users_LOGIN` varchar(100) DEFAULT NULL, `create_timestamp` int(10) unsigned NOT NULL, `expired` tinyint(1) NOT NULL, PRIMARY KEY (`token`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `users` -- CREATE TABLE `users` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `login` varchar(100) NOT NULL, `password` char(32) NOT NULL, `email` varchar(150) NOT NULL, `languages_NAME` varchar(50) NOT NULL, `timezone` varchar(100) DEFAULT '', `name` varchar(100) NOT NULL, `surname` varchar(100) NOT NULL, `active` tinyint(1) NOT NULL DEFAULT '1', `comments` text, `user_type` varchar(50) NOT NULL DEFAULT 'student', `timestamp` int(10) unsigned NOT NULL, `avatar` varchar(255) DEFAULT NULL, `pending` tinyint(1) NOT NULL DEFAULT '0', `user_types_ID` mediumint(8) DEFAULT '0', `additional_accounts` text, `viewed_license` tinyint(1) DEFAULT '0', `status` varchar(255) DEFAULT '', `short_description` text, `balance` float DEFAULT '0', `archive` int(10) unsigned DEFAULT '0', `dashboard_positions` text, `need_mod_init` tinyint(1) DEFAULT '0', `autologin` char(32) DEFAULT NULL, `need_pwd_change` tinyint(1) DEFAULT '0', `last_login` int(10) unsigned NOT NULL DEFAULT '0', `simple_mode` tinyint(1) DEFAULT '0', `email_block` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`login`), KEY `id` (`id`), KEY `active` (`active`), KEY `users_indx1` (`user_type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; -- -- Dumping data for table `users` -- INSERT INTO `users` VALUES (1, '[[admin_username]]', '[[admin_pass]]', '[[admin_email]]', '[[language]]', 'Europe/Helsinki', 'System', 'Administrator', 1, NULL, 'administrator', 1365149958, NULL, 0, 0, 'a:2:{i:0;s:7:"student";i:1;s:9:"professor";}', 0, '', NULL, 0, 0, NULL, 0, NULL, 0, 0, 0, 0), (2, 'professor', '[[admin_pass]]', '[[admin_email]]', '[[language]]', 'Europe/Helsinki', 'Default', 'Professor', 1, NULL, 'professor', 1365149958, NULL, 0, 0, 'a:2:{i:0;s:5:"admin";i:1;s:7:"student";}', 0, '', NULL, 0, 0, NULL, 0, NULL, 0, 0, 0, 0), (3, 'student', '[[admin_pass]]', '[[admin_email]]', '[[language]]', 'Europe/Helsinki', 'Default', 'Student', 1, NULL, 'student', 1365149958, NULL, 0, 0, 'a:2:{i:0;s:5:"admin";i:1;s:9:"professor";}', 0, '', NULL, 0, 0, NULL, 0, NULL, 0, 0, 0, 0); -- -------------------------------------------------------- -- -- Table structure for table `users_to_content` -- CREATE TABLE `users_to_content` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `users_LOGIN` varchar(100) NOT NULL, `content_ID` mediumint(8) unsigned NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL, `success_status` varchar(15) DEFAULT 'unknown', `timestamp` int(10) unsigned DEFAULT NULL, `score` float DEFAULT '0', `entry` varchar(15) DEFAULT '', `total_time` int(10) unsigned NOT NULL DEFAULT '0', `suspend_data` longtext, `archive` tinyint(1) NOT NULL DEFAULT '0', `time_start` int(10) unsigned DEFAULT NULL, `time_end` int(10) unsigned DEFAULT NULL, `pending` tinyint(1) NOT NULL DEFAULT '0', `visits` int(11) DEFAULT NULL, `attempt_identifier` char(32) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `users_LOGIN` (`users_LOGIN`,`content_ID`,`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; -- -- Dumping data for table `users_to_content` -- INSERT INTO `users_to_content` VALUES (1, 'student', 1005, 6, 'unknown', NULL, 0, '', 0, NULL, 0, NULL, NULL, 0, NULL, NULL); -- -------------------------------------------------------- -- -- Table structure for table `users_to_coupons` -- CREATE TABLE `users_to_coupons` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `users_ID` int(10) unsigned NOT NULL, `coupons_ID` int(10) unsigned NOT NULL, `payments_ID` int(10) unsigned NOT NULL, `products_list` text, `timestamp` int(10) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `users_to_courses` -- CREATE TABLE `users_to_courses` ( `users_LOGIN` varchar(100) NOT NULL, `courses_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `active` tinyint(1) NOT NULL DEFAULT '0', `archive` int(10) unsigned DEFAULT '0', `from_timestamp` int(10) unsigned DEFAULT NULL, `user_type` varchar(50) DEFAULT NULL, `completed` tinyint(1) NOT NULL DEFAULT '0', `score` int(11) NOT NULL DEFAULT '0', `issued_certificate` text, `comments` text, `to_timestamp` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`users_LOGIN`,`courses_ID`), KEY `archive` (`archive`), KEY `users_LOGIN` (`users_LOGIN`), KEY `courses_ID` (`courses_ID`), KEY `from_timestamp` (`from_timestamp`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `users_to_courses` -- INSERT INTO `users_to_courses` VALUES ('professor', 1, 1, 0, [[timestamp]], 'professor', 0, 0, '', '', 0), ('professor', 2, 1, 0, [[timestamp]], 'professor', 0, 0, '', '', 0), ('student', 1, 1, 0, [[timestamp]], 'student', 0, 0, '', '', 0), ('student', 2, 1, 0, [[timestamp]], 'student', 0, 0, '', '', 0); -- -------------------------------------------------------- -- -- Table structure for table `users_to_done_surveys` -- CREATE TABLE `users_to_done_surveys` ( `surveys_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `users_LOGIN` varchar(100) NOT NULL DEFAULT '', `done` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`users_LOGIN`,`surveys_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `users_to_files` -- CREATE TABLE `users_to_files` ( `users_LOGIN` varchar(100) NOT NULL, `files_ID` mediumint(8) unsigned NOT NULL, `counter` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`users_LOGIN`,`files_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `users_to_groups` -- CREATE TABLE `users_to_groups` ( `groups_ID` mediumint(8) unsigned NOT NULL, `users_LOGIN` varchar(100) NOT NULL, PRIMARY KEY (`groups_ID`,`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `users_to_lessons` -- CREATE TABLE `users_to_lessons` ( `users_LOGIN` varchar(100) NOT NULL, `lessons_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `active` tinyint(1) NOT NULL DEFAULT '0', `archive` int(10) unsigned DEFAULT '0', `from_timestamp` int(10) unsigned DEFAULT NULL, `user_type` varchar(50) DEFAULT NULL, `positions` text, `done_content` text, `current_unit` mediumint(8) unsigned DEFAULT '0', `completed` tinyint(1) NOT NULL DEFAULT '0', `score` tinyint(3) unsigned NOT NULL DEFAULT '0', `issued_certificate` blob, `comments` text, `to_timestamp` int(10) unsigned DEFAULT NULL, `access_counter` int(10) DEFAULT '0', PRIMARY KEY (`users_LOGIN`,`lessons_ID`), KEY `users_LOGIN` (`users_LOGIN`), KEY `lessons_ID` (`lessons_ID`), KEY `from_timestamp` (`from_timestamp`), KEY `archive` (`archive`), KEY `user_type` (`user_type`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Dumping data for table `users_to_lessons` -- INSERT INTO `users_to_lessons` VALUES ('professor', 1, 1, 0, [[timestamp]], 'professor', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('professor', 2, 1, 0, [[timestamp]], 'professor', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('professor', 3, 1, 0, [[timestamp]], 'professor', '', '', 0, 0, 0, NULL, '', 0, 0), ('professor', 4, 1, 0, [[timestamp]], 'professor', '', '', 0, 0, 0, NULL, '', 0, 0), ('professor', 5, 1, 0, [[timestamp]], 'professor', '', '', 0, 0, 0, NULL, '', 0, 0), ('professor', 6, 1, 0, [[timestamp]], 'professor', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('professor', 7, 1, 0, [[timestamp]], 'professor', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('professor', 8, 1, 0, [[timestamp]], 'professor', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('student', 1, 1, 0, [[timestamp]], 'student', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('student', 2, 1, 0, [[timestamp]], 'student', NULL, '', 0, 0, 0, NULL, '', 0, 0), ('student', 3, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0), ('student', 4, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0), ('student', 5, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0), ('student', 6, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0), ('student', 7, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0), ('student', 8, 1, 0, [[timestamp]], 'student', '', '', 0, 0, 0, NULL, '', 0, 0); -- -------------------------------------------------------- -- -- Table structure for table `users_to_projects` -- CREATE TABLE `users_to_projects` ( `users_LOGIN` varchar(100) NOT NULL, `projects_ID` mediumint(8) unsigned NOT NULL DEFAULT '0', `status` tinyint(1) NOT NULL DEFAULT '0', `comments` text, `grade` float DEFAULT NULL, `filename` varchar(255) DEFAULT NULL, `upload_timestamp` int(10) unsigned DEFAULT NULL, `last_comment` varchar(100) DEFAULT NULL, `professor_upload_filename` varchar(255) DEFAULT NULL, `text_grade` varchar(100) DEFAULT NULL, PRIMARY KEY (`users_LOGIN`,`projects_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `users_to_surveys` -- CREATE TABLE `users_to_surveys` ( `surveys_ID` mediumint(8) unsigned NOT NULL, `users_LOGIN` varchar(100) NOT NULL, `last_access` int(10) unsigned DEFAULT NULL, `last_post` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`users_LOGIN`,`surveys_ID`), KEY `surveys_ID` (`surveys_ID`,`users_LOGIN`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `user_profile` -- CREATE TABLE `user_profile` ( `name` varchar(50) NOT NULL, `description` varchar(100) NOT NULL, `db_type` varchar(10) NOT NULL, `size` tinyint(3) unsigned DEFAULT '255', `type` varchar(10) DEFAULT NULL, `options` text, `default_value` text, `active` tinyint(1) NOT NULL DEFAULT '1', `visible` tinyint(1) NOT NULL DEFAULT '1', `mandatory` tinyint(1) NOT NULL DEFAULT '1', `languages_NAME` varchar(50) NOT NULL, `field_order` int(11) DEFAULT NULL, `rule` varchar(255) DEFAULT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -------------------------------------------------------- -- -- Table structure for table `user_times` -- CREATE TABLE `user_times` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `session_timestamp` int(10) unsigned NOT NULL, `session_id` varchar(255) NOT NULL, `session_custom_identifier` char(40) NOT NULL DEFAULT '', `session_expired` tinyint(1) NOT NULL DEFAULT '0', `users_LOGIN` varchar(100) NOT NULL, `timestamp_now` int(10) unsigned NOT NULL, `time` int(10) unsigned NOT NULL, `lessons_ID` mediumint(8) unsigned DEFAULT NULL, `courses_ID` mediumint(8) unsigned DEFAULT NULL, `entity` varchar(100) NOT NULL, `entity_id` mediumint(8) DEFAULT '0', PRIMARY KEY (`id`), KEY `users_LOGIN` (`users_LOGIN`), KEY `session_expired` (`session_expired`), KEY `entity` (`entity`), KEY `lessons_ID` (`lessons_ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=15 ; -- -- Dumping data for table `user_times` -- INSERT INTO `user_times` VALUES (1, 1365429302, '8641qo59veud1jdu1slik8uie3', '2d98d8a338b48d356b4aae28043332b9d6217924', 1, 'professor', 1365429326, 24, NULL, NULL, 'system', 0), (2, 1365429740, 'bbo6v0vdh2qmcfahphp08vgl25', '5369d080862693f5598d6d07ec233a78e757c160', 1, 'student', 1365429742, 2, NULL, NULL, 'system', 0), (3, 1365429742, 'bbo6v0vdh2qmcfahphp08vgl25', '5369d080862693f5598d6d07ec233a78e757c160', 1, 'student', 1365429752, 10, 6, 2, 'lesson', 6), (4, 1365429752, 'bbo6v0vdh2qmcfahphp08vgl25', '5369d080862693f5598d6d07ec233a78e757c160', 1, 'student', 1365429755, 3, 6, 2, 'unit', 1005), (5, 1365429760, 'tp96t1v416jo618nv8en03b9h7', '714a1f014d2441884de64025c9aaa2a8f69f6169', 1, 'admin', 1365431120, 1360, NULL, NULL, 'system', 0), (6, 1387289515, 'nppovd2ctvg7jpa44b7sj065m0', '238ea429992b6cb1727106659d32f76262d43c13', 1, 'admin', 1387289521, 6, NULL, NULL, 'system', 0), (7, 1387289746, 'vcfuij0jlo37qseb28o91ahqi6', '9708ee6ee67853140640bf0e97516fc838a15d79', 1, 'admin', 1387289755, 9, NULL, NULL, 'system', 0), (8, 1387289821, '3r9sduigqpvi6gmiji1f3jnud1', 'bb225c9631b535667cb373b3318b78274248b439', 1, 'admin', 1387289829, 8, NULL, NULL, 'system', 0), (9, 1431421383, 'g29jd8sfef3r83r8kcmpil28f3', '8ea913a7038205943401579d627268fff0be314f', 1, 'admin', 1431421410, 27, NULL, NULL, 'system', 0), (10, 1431430030, 'tbt4ahkk4v521soakb0o3mmr93', 'f4924a062387e5b35d2ba57cbc5882178c72a32a', 1, 'admin', 1431430033, 3, NULL, NULL, 'system', 0), (11, 1434353063, 'veuq9h8tdqs2t00hofogcekri3', 'fe4b2bc72d1f2caf93bf0851408933639086db86', 1, 'admin', 1434356857, 3794, NULL, NULL, 'system', 0), (12, 1434356952, 'n87vq9t9q8lbds1n43b64qp9a1', '37d8f30b3092162acf25cd0fff61824a02812689', 1, 'admin', 1434356963, 11, NULL, NULL, 'system', 0), (13, 1434357339, 'l197la3kne77qvlsnckqu1q7j3', 'd8ad902dc04d869f2cd20aaebc7b50fce82c3f48', 1, 'admin', 1434357343, 4, NULL, NULL, 'system', 0), (14, 1434358180, '8ttalgkehluv25keoiolcmn3a5', '6376ca8bf21cb375f8de10181b960dca697ef453', 0, 'admin', 1434358293, 113, NULL, NULL, 'system', 0); -- -------------------------------------------------------- -- -- Table structure for table `user_types` -- CREATE TABLE `user_types` ( `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `basic_user_type` varchar(50) NOT NULL, `core_access` text, `modules_access` text, `active` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- -- Table structure for table `words` -- CREATE TABLE `words` ( `groupid` varchar(10) NOT NULL DEFAULT '''lt''', `word` varchar(20) NOT NULL DEFAULT '', `question` text NOT NULL, PRIMARY KEY (`word`,`groupid`), KEY `groupid` (`groupid`), FULLTEXT KEY `word_3` (`word`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -- Constraints for dumped tables -- -- -- Constraints for table `completed_tests_blob` -- ALTER TABLE `completed_tests_blob` ADD CONSTRAINT `ibfk_completed_tests_blob_1` FOREIGN KEY (`completed_tests_ID`) REFERENCES `completed_tests` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; /*!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 */;