1 /* vi:set ts=8 sts=4 sw=4: 2 * 3 * VIM - Vi IMproved by Bram Moolenaar 4 * 5 * Do ":help uganda" in Vim to read copying and usage conditions. 6 * Do ":help credits" in Vim to see a list of people who contributed. 7 * See README.txt for an overview of the Vim source code. 8 */ 9 10 #include "vim.h" 11 12 #ifdef AMIGA 13 # include <time.h> /* for time() */ 14 #endif 15 16 /* 17 * Vim originated from Stevie version 3.6 (Fish disk 217) by GRWalter (Fred) 18 * It has been changed beyond recognition since then. 19 * 20 * Differences between version 6.x and 7.x can be found with ":help version7". 21 * Differences between version 5.x and 6.x can be found with ":help version6". 22 * Differences between version 4.x and 5.x can be found with ":help version5". 23 * Differences between version 3.0 and 4.x can be found with ":help version4". 24 * All the remarks about older versions have been removed, they are not very 25 * interesting. 26 */ 27 28 #include "version.h" 29 30 char *Version = VIM_VERSION_SHORT; 31 static char *mediumVersion = VIM_VERSION_MEDIUM; 32 33 #if defined(HAVE_DATE_TIME) || defined(PROTO) 34 # if (defined(VMS) && defined(VAXC)) || defined(PROTO) 35 char longVersion[sizeof(VIM_VERSION_LONG_DATE) + sizeof(__DATE__) 36 + sizeof(__TIME__) + 3]; 37 38 void 39 make_version(void) 40 { 41 /* 42 * Construct the long version string. Necessary because 43 * VAX C can't catenate strings in the preprocessor. 44 */ 45 strcpy(longVersion, VIM_VERSION_LONG_DATE); 46 strcat(longVersion, __DATE__); 47 strcat(longVersion, " "); 48 strcat(longVersion, __TIME__); 49 strcat(longVersion, ")"); 50 } 51 # else 52 char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")"; 53 # endif 54 #else 55 char *longVersion = VIM_VERSION_LONG; 56 #endif 57 58 static void list_features(void); 59 static void version_msg(char *s); 60 61 static char *(features[]) = 62 { 63 #ifdef HAVE_ACL 64 "+acl", 65 #else 66 "-acl", 67 #endif 68 #ifdef AMIGA /* only for Amiga systems */ 69 # ifdef FEAT_ARP 70 "+ARP", 71 # else 72 "-ARP", 73 # endif 74 #endif 75 #ifdef FEAT_ARABIC 76 "+arabic", 77 #else 78 "-arabic", 79 #endif 80 #ifdef FEAT_AUTOCMD 81 "+autocmd", 82 #else 83 "-autocmd", 84 #endif 85 #ifdef FEAT_BEVAL 86 "+balloon_eval", 87 #else 88 "-balloon_eval", 89 #endif 90 #ifdef FEAT_BROWSE 91 "+browse", 92 #else 93 "-browse", 94 #endif 95 #ifdef NO_BUILTIN_TCAPS 96 "-builtin_terms", 97 #endif 98 #ifdef SOME_BUILTIN_TCAPS 99 "+builtin_terms", 100 #endif 101 #ifdef ALL_BUILTIN_TCAPS 102 "++builtin_terms", 103 #endif 104 #ifdef FEAT_BYTEOFF 105 "+byte_offset", 106 #else 107 "-byte_offset", 108 #endif 109 #ifdef FEAT_JOB_CHANNEL 110 "+channel", 111 #else 112 "-channel", 113 #endif 114 #ifdef FEAT_CINDENT 115 "+cindent", 116 #else 117 "-cindent", 118 #endif 119 #ifdef FEAT_CLIENTSERVER 120 "+clientserver", 121 #else 122 "-clientserver", 123 #endif 124 #ifdef FEAT_CLIPBOARD 125 "+clipboard", 126 #else 127 "-clipboard", 128 #endif 129 #ifdef FEAT_CMDL_COMPL 130 "+cmdline_compl", 131 #else 132 "-cmdline_compl", 133 #endif 134 #ifdef FEAT_CMDHIST 135 "+cmdline_hist", 136 #else 137 "-cmdline_hist", 138 #endif 139 #ifdef FEAT_CMDL_INFO 140 "+cmdline_info", 141 #else 142 "-cmdline_info", 143 #endif 144 #ifdef FEAT_COMMENTS 145 "+comments", 146 #else 147 "-comments", 148 #endif 149 #ifdef FEAT_CONCEAL 150 "+conceal", 151 #else 152 "-conceal", 153 #endif 154 #ifdef FEAT_CRYPT 155 "+cryptv", 156 #else 157 "-cryptv", 158 #endif 159 #ifdef FEAT_CSCOPE 160 "+cscope", 161 #else 162 "-cscope", 163 #endif 164 #ifdef FEAT_CURSORBIND 165 "+cursorbind", 166 #else 167 "-cursorbind", 168 #endif 169 #ifdef CURSOR_SHAPE 170 "+cursorshape", 171 #else 172 "-cursorshape", 173 #endif 174 #if defined(FEAT_CON_DIALOG) && defined(FEAT_GUI_DIALOG) 175 "+dialog_con_gui", 176 #else 177 # if defined(FEAT_CON_DIALOG) 178 "+dialog_con", 179 # else 180 # if defined(FEAT_GUI_DIALOG) 181 "+dialog_gui", 182 # else 183 "-dialog", 184 # endif 185 # endif 186 #endif 187 #ifdef FEAT_DIFF 188 "+diff", 189 #else 190 "-diff", 191 #endif 192 #ifdef FEAT_DIGRAPHS 193 "+digraphs", 194 #else 195 "-digraphs", 196 #endif 197 #ifdef FEAT_GUI_W32 198 # ifdef FEAT_DIRECTX 199 "+directx", 200 # else 201 "-directx", 202 # endif 203 #endif 204 #ifdef FEAT_DND 205 "+dnd", 206 #else 207 "-dnd", 208 #endif 209 #ifdef EBCDIC 210 "+ebcdic", 211 #else 212 "-ebcdic", 213 #endif 214 #ifdef FEAT_EMACS_TAGS 215 "+emacs_tags", 216 #else 217 "-emacs_tags", 218 #endif 219 #ifdef FEAT_EVAL 220 "+eval", 221 #else 222 "-eval", 223 #endif 224 "+ex_extra", 225 #ifdef FEAT_SEARCH_EXTRA 226 "+extra_search", 227 #else 228 "-extra_search", 229 #endif 230 #ifdef FEAT_FKMAP 231 "+farsi", 232 #else 233 "-farsi", 234 #endif 235 #ifdef FEAT_SEARCHPATH 236 "+file_in_path", 237 #else 238 "-file_in_path", 239 #endif 240 #ifdef FEAT_FIND_ID 241 "+find_in_path", 242 #else 243 "-find_in_path", 244 #endif 245 #ifdef FEAT_FLOAT 246 "+float", 247 #else 248 "-float", 249 #endif 250 #ifdef FEAT_FOLDING 251 "+folding", 252 #else 253 "-folding", 254 #endif 255 #ifdef FEAT_FOOTER 256 "+footer", 257 #else 258 "-footer", 259 #endif 260 /* only interesting on Unix systems */ 261 #if !defined(USE_SYSTEM) && defined(UNIX) 262 "+fork()", 263 #endif 264 #ifdef FEAT_GETTEXT 265 # ifdef DYNAMIC_GETTEXT 266 "+gettext/dyn", 267 # else 268 "+gettext", 269 # endif 270 #else 271 "-gettext", 272 #endif 273 #ifdef FEAT_HANGULIN 274 "+hangul_input", 275 #else 276 "-hangul_input", 277 #endif 278 #if (defined(HAVE_ICONV_H) && defined(USE_ICONV)) || defined(DYNAMIC_ICONV) 279 # ifdef DYNAMIC_ICONV 280 "+iconv/dyn", 281 # else 282 "+iconv", 283 # endif 284 #else 285 "-iconv", 286 #endif 287 #ifdef FEAT_INS_EXPAND 288 "+insert_expand", 289 #else 290 "-insert_expand", 291 #endif 292 #ifdef FEAT_JOB_CHANNEL 293 "+job", 294 #else 295 "-job", 296 #endif 297 #ifdef FEAT_JUMPLIST 298 "+jumplist", 299 #else 300 "-jumplist", 301 #endif 302 #ifdef FEAT_KEYMAP 303 "+keymap", 304 #else 305 "-keymap", 306 #endif 307 #ifdef FEAT_EVAL 308 "+lambda", 309 #else 310 "-lambda", 311 #endif 312 #ifdef FEAT_LANGMAP 313 "+langmap", 314 #else 315 "-langmap", 316 #endif 317 #ifdef FEAT_LIBCALL 318 "+libcall", 319 #else 320 "-libcall", 321 #endif 322 #ifdef FEAT_LINEBREAK 323 "+linebreak", 324 #else 325 "-linebreak", 326 #endif 327 #ifdef FEAT_LISP 328 "+lispindent", 329 #else 330 "-lispindent", 331 #endif 332 #ifdef FEAT_LISTCMDS 333 "+listcmds", 334 #else 335 "-listcmds", 336 #endif 337 #ifdef FEAT_LOCALMAP 338 "+localmap", 339 #else 340 "-localmap", 341 #endif 342 #ifdef FEAT_LUA 343 # ifdef DYNAMIC_LUA 344 "+lua/dyn", 345 # else 346 "+lua", 347 # endif 348 #else 349 "-lua", 350 #endif 351 #ifdef FEAT_MENU 352 "+menu", 353 #else 354 "-menu", 355 #endif 356 #ifdef FEAT_SESSION 357 "+mksession", 358 #else 359 "-mksession", 360 #endif 361 #ifdef FEAT_MODIFY_FNAME 362 "+modify_fname", 363 #else 364 "-modify_fname", 365 #endif 366 #ifdef FEAT_MOUSE 367 "+mouse", 368 # ifdef FEAT_MOUSESHAPE 369 "+mouseshape", 370 # else 371 "-mouseshape", 372 # endif 373 # else 374 "-mouse", 375 #endif 376 377 #if defined(UNIX) || defined(VMS) 378 # ifdef FEAT_MOUSE_DEC 379 "+mouse_dec", 380 # else 381 "-mouse_dec", 382 # endif 383 # ifdef FEAT_MOUSE_GPM 384 "+mouse_gpm", 385 # else 386 "-mouse_gpm", 387 # endif 388 # ifdef FEAT_MOUSE_JSB 389 "+mouse_jsbterm", 390 # else 391 "-mouse_jsbterm", 392 # endif 393 # ifdef FEAT_MOUSE_NET 394 "+mouse_netterm", 395 # else 396 "-mouse_netterm", 397 # endif 398 #endif 399 400 #ifdef __QNX__ 401 # ifdef FEAT_MOUSE_PTERM 402 "+mouse_pterm", 403 # else 404 "-mouse_pterm", 405 # endif 406 #endif 407 408 #if defined(UNIX) || defined(VMS) 409 # ifdef FEAT_MOUSE_SGR 410 "+mouse_sgr", 411 # else 412 "-mouse_sgr", 413 # endif 414 # ifdef FEAT_SYSMOUSE 415 "+mouse_sysmouse", 416 # else 417 "-mouse_sysmouse", 418 # endif 419 # ifdef FEAT_MOUSE_URXVT 420 "+mouse_urxvt", 421 # else 422 "-mouse_urxvt", 423 # endif 424 # ifdef FEAT_MOUSE_XTERM 425 "+mouse_xterm", 426 # else 427 "-mouse_xterm", 428 # endif 429 #endif 430 431 #ifdef FEAT_MBYTE_IME 432 # ifdef DYNAMIC_IME 433 "+multi_byte_ime/dyn", 434 # else 435 "+multi_byte_ime", 436 # endif 437 #else 438 # ifdef FEAT_MBYTE 439 "+multi_byte", 440 # else 441 "-multi_byte", 442 # endif 443 #endif 444 #ifdef FEAT_MULTI_LANG 445 "+multi_lang", 446 #else 447 "-multi_lang", 448 #endif 449 #ifdef FEAT_MZSCHEME 450 # ifdef DYNAMIC_MZSCHEME 451 "+mzscheme/dyn", 452 # else 453 "+mzscheme", 454 # endif 455 #else 456 "-mzscheme", 457 #endif 458 #ifdef FEAT_NETBEANS_INTG 459 "+netbeans_intg", 460 #else 461 "-netbeans_intg", 462 #endif 463 #ifdef FEAT_NUM64 464 "+num64", 465 #else 466 "-num64", 467 #endif 468 #ifdef FEAT_GUI_W32 469 # ifdef FEAT_OLE 470 "+ole", 471 # else 472 "-ole", 473 # endif 474 #endif 475 "+packages", 476 #ifdef FEAT_PATH_EXTRA 477 "+path_extra", 478 #else 479 "-path_extra", 480 #endif 481 #ifdef FEAT_PERL 482 # ifdef DYNAMIC_PERL 483 "+perl/dyn", 484 # else 485 "+perl", 486 # endif 487 #else 488 "-perl", 489 #endif 490 #ifdef FEAT_PERSISTENT_UNDO 491 "+persistent_undo", 492 #else 493 "-persistent_undo", 494 #endif 495 #ifdef FEAT_PRINTER 496 # ifdef FEAT_POSTSCRIPT 497 "+postscript", 498 # else 499 "-postscript", 500 # endif 501 "+printer", 502 #else 503 "-printer", 504 #endif 505 #ifdef FEAT_PROFILE 506 "+profile", 507 #else 508 "-profile", 509 #endif 510 #ifdef FEAT_PYTHON 511 # ifdef DYNAMIC_PYTHON 512 "+python/dyn", 513 # else 514 "+python", 515 # endif 516 #else 517 "-python", 518 #endif 519 #ifdef FEAT_PYTHON3 520 # ifdef DYNAMIC_PYTHON3 521 "+python3/dyn", 522 # else 523 "+python3", 524 # endif 525 #else 526 "-python3", 527 #endif 528 #ifdef FEAT_QUICKFIX 529 "+quickfix", 530 #else 531 "-quickfix", 532 #endif 533 #ifdef FEAT_RELTIME 534 "+reltime", 535 #else 536 "-reltime", 537 #endif 538 #ifdef FEAT_RIGHTLEFT 539 "+rightleft", 540 #else 541 "-rightleft", 542 #endif 543 #ifdef FEAT_RUBY 544 # ifdef DYNAMIC_RUBY 545 "+ruby/dyn", 546 # else 547 "+ruby", 548 # endif 549 #else 550 "-ruby", 551 #endif 552 #ifdef FEAT_SCROLLBIND 553 "+scrollbind", 554 #else 555 "-scrollbind", 556 #endif 557 #ifdef FEAT_SIGNS 558 "+signs", 559 #else 560 "-signs", 561 #endif 562 #ifdef FEAT_SMARTINDENT 563 "+smartindent", 564 #else 565 "-smartindent", 566 #endif 567 #ifdef STARTUPTIME 568 "+startuptime", 569 #else 570 "-startuptime", 571 #endif 572 #ifdef FEAT_STL_OPT 573 "+statusline", 574 #else 575 "-statusline", 576 #endif 577 #ifdef FEAT_SUN_WORKSHOP 578 "+sun_workshop", 579 #else 580 "-sun_workshop", 581 #endif 582 #ifdef FEAT_SYN_HL 583 "+syntax", 584 #else 585 "-syntax", 586 #endif 587 /* only interesting on Unix systems */ 588 #if defined(USE_SYSTEM) && defined(UNIX) 589 "+system()", 590 #endif 591 #ifdef FEAT_TAG_BINS 592 "+tag_binary", 593 #else 594 "-tag_binary", 595 #endif 596 #ifdef FEAT_TAG_OLDSTATIC 597 "+tag_old_static", 598 #else 599 "-tag_old_static", 600 #endif 601 #ifdef FEAT_TAG_ANYWHITE 602 "+tag_any_white", 603 #else 604 "-tag_any_white", 605 #endif 606 #ifdef FEAT_TCL 607 # ifdef DYNAMIC_TCL 608 "+tcl/dyn", 609 # else 610 "+tcl", 611 # endif 612 #else 613 "-tcl", 614 #endif 615 #ifdef FEAT_TERMGUICOLORS 616 "+termguicolors", 617 #else 618 "-termguicolors", 619 #endif 620 #if defined(UNIX) 621 /* only Unix can have terminfo instead of termcap */ 622 # ifdef TERMINFO 623 "+terminfo", 624 # else 625 "-terminfo", 626 # endif 627 #else /* unix always includes termcap support */ 628 # ifdef HAVE_TGETENT 629 "+tgetent", 630 # else 631 "-tgetent", 632 # endif 633 #endif 634 #ifdef FEAT_TERMRESPONSE 635 "+termresponse", 636 #else 637 "-termresponse", 638 #endif 639 #ifdef FEAT_TEXTOBJ 640 "+textobjects", 641 #else 642 "-textobjects", 643 #endif 644 #ifdef FEAT_TIMERS 645 "+timers", 646 #else 647 "-timers", 648 #endif 649 #ifdef FEAT_TITLE 650 "+title", 651 #else 652 "-title", 653 #endif 654 #ifdef FEAT_TOOLBAR 655 "+toolbar", 656 #else 657 "-toolbar", 658 #endif 659 #ifdef FEAT_USR_CMDS 660 "+user_commands", 661 #else 662 "-user_commands", 663 #endif 664 #ifdef FEAT_WINDOWS 665 "+vertsplit", 666 #else 667 "-vertsplit", 668 #endif 669 #ifdef FEAT_VIRTUALEDIT 670 "+virtualedit", 671 #else 672 "-virtualedit", 673 #endif 674 "+visual", 675 #ifdef FEAT_VISUALEXTRA 676 "+visualextra", 677 #else 678 "-visualextra", 679 #endif 680 #ifdef FEAT_VIMINFO 681 "+viminfo", 682 #else 683 "-viminfo", 684 #endif 685 #ifdef FEAT_VREPLACE 686 "+vreplace", 687 #else 688 "-vreplace", 689 #endif 690 #ifdef FEAT_WILDIGN 691 "+wildignore", 692 #else 693 "-wildignore", 694 #endif 695 #ifdef FEAT_WILDMENU 696 "+wildmenu", 697 #else 698 "-wildmenu", 699 #endif 700 #ifdef FEAT_WINDOWS 701 "+windows", 702 #else 703 "-windows", 704 #endif 705 #ifdef FEAT_WRITEBACKUP 706 "+writebackup", 707 #else 708 "-writebackup", 709 #endif 710 #if defined(UNIX) || defined(VMS) 711 # ifdef FEAT_X11 712 "+X11", 713 # else 714 "-X11", 715 # endif 716 #endif 717 #ifdef FEAT_XFONTSET 718 "+xfontset", 719 #else 720 "-xfontset", 721 #endif 722 #ifdef FEAT_XIM 723 "+xim", 724 #else 725 "-xim", 726 #endif 727 #ifdef WIN3264 728 # ifdef FEAT_XPM_W32 729 "+xpm_w32", 730 # else 731 "-xpm_w32", 732 # endif 733 #else 734 # ifdef HAVE_XPM 735 "+xpm", 736 # else 737 "-xpm", 738 # endif 739 #endif 740 #if defined(UNIX) || defined(VMS) 741 # ifdef USE_XSMP_INTERACT 742 "+xsmp_interact", 743 # else 744 # ifdef USE_XSMP 745 "+xsmp", 746 # else 747 "-xsmp", 748 # endif 749 # endif 750 # ifdef FEAT_XCLIPBOARD 751 "+xterm_clipboard", 752 # else 753 "-xterm_clipboard", 754 # endif 755 #endif 756 #ifdef FEAT_XTERM_SAVE 757 "+xterm_save", 758 #else 759 "-xterm_save", 760 #endif 761 NULL 762 }; 763 764 static int included_patches[] = 765 { /* Add new patch number below this line */ 766 /**/ 767 2288, 768 /**/ 769 2287, 770 /**/ 771 2286, 772 /**/ 773 2285, 774 /**/ 775 2284, 776 /**/ 777 2283, 778 /**/ 779 2282, 780 /**/ 781 2281, 782 /**/ 783 2280, 784 /**/ 785 2279, 786 /**/ 787 2278, 788 /**/ 789 2277, 790 /**/ 791 2276, 792 /**/ 793 2275, 794 /**/ 795 2274, 796 /**/ 797 2273, 798 /**/ 799 2272, 800 /**/ 801 2271, 802 /**/ 803 2270, 804 /**/ 805 2269, 806 /**/ 807 2268, 808 /**/ 809 2267, 810 /**/ 811 2266, 812 /**/ 813 2265, 814 /**/ 815 2264, 816 /**/ 817 2263, 818 /**/ 819 2262, 820 /**/ 821 2261, 822 /**/ 823 2260, 824 /**/ 825 2259, 826 /**/ 827 2258, 828 /**/ 829 2257, 830 /**/ 831 2256, 832 /**/ 833 2255, 834 /**/ 835 2254, 836 /**/ 837 2253, 838 /**/ 839 2252, 840 /**/ 841 2251, 842 /**/ 843 2250, 844 /**/ 845 2249, 846 /**/ 847 2248, 848 /**/ 849 2247, 850 /**/ 851 2246, 852 /**/ 853 2245, 854 /**/ 855 2244, 856 /**/ 857 2243, 858 /**/ 859 2242, 860 /**/ 861 2241, 862 /**/ 863 2240, 864 /**/ 865 2239, 866 /**/ 867 2238, 868 /**/ 869 2237, 870 /**/ 871 2236, 872 /**/ 873 2235, 874 /**/ 875 2234, 876 /**/ 877 2233, 878 /**/ 879 2232, 880 /**/ 881 2231, 882 /**/ 883 2230, 884 /**/ 885 2229, 886 /**/ 887 2228, 888 /**/ 889 2227, 890 /**/ 891 2226, 892 /**/ 893 2225, 894 /**/ 895 2224, 896 /**/ 897 2223, 898 /**/ 899 2222, 900 /**/ 901 2221, 902 /**/ 903 2220, 904 /**/ 905 2219, 906 /**/ 907 2218, 908 /**/ 909 2217, 910 /**/ 911 2216, 912 /**/ 913 2215, 914 /**/ 915 2214, 916 /**/ 917 2213, 918 /**/ 919 2212, 920 /**/ 921 2211, 922 /**/ 923 2210, 924 /**/ 925 2209, 926 /**/ 927 2208, 928 /**/ 929 2207, 930 /**/ 931 2206, 932 /**/ 933 2205, 934 /**/ 935 2204, 936 /**/ 937 2203, 938 /**/ 939 2202, 940 /**/ 941 2201, 942 /**/ 943 2200, 944 /**/ 945 2199, 946 /**/ 947 2198, 948 /**/ 949 2197, 950 /**/ 951 2196, 952 /**/ 953 2195, 954 /**/ 955 2194, 956 /**/ 957 2193, 958 /**/ 959 2192, 960 /**/ 961 2191, 962 /**/ 963 2190, 964 /**/ 965 2189, 966 /**/ 967 2188, 968 /**/ 969 2187, 970 /**/ 971 2186, 972 /**/ 973 2185, 974 /**/ 975 2184, 976 /**/ 977 2183, 978 /**/ 979 2182, 980 /**/ 981 2181, 982 /**/ 983 2180, 984 /**/ 985 2179, 986 /**/ 987 2178, 988 /**/ 989 2177, 990 /**/ 991 2176, 992 /**/ 993 2175, 994 /**/ 995 2174, 996 /**/ 997 2173, 998 /**/ 999 2172, 1000 /**/ 1001 2171, 1002 /**/ 1003 2170, 1004 /**/ 1005 2169, 1006 /**/ 1007 2168, 1008 /**/ 1009 2167, 1010 /**/ 1011 2166, 1012 /**/ 1013 2165, 1014 /**/ 1015 2164, 1016 /**/ 1017 2163, 1018 /**/ 1019 2162, 1020 /**/ 1021 2161, 1022 /**/ 1023 2160, 1024 /**/ 1025 2159, 1026 /**/ 1027 2158, 1028 /**/ 1029 2157, 1030 /**/ 1031 2156, 1032 /**/ 1033 2155, 1034 /**/ 1035 2154, 1036 /**/ 1037 2153, 1038 /**/ 1039 2152, 1040 /**/ 1041 2151, 1042 /**/ 1043 2150, 1044 /**/ 1045 2149, 1046 /**/ 1047 2148, 1048 /**/ 1049 2147, 1050 /**/ 1051 2146, 1052 /**/ 1053 2145, 1054 /**/ 1055 2144, 1056 /**/ 1057 2143, 1058 /**/ 1059 2142, 1060 /**/ 1061 2141, 1062 /**/ 1063 2140, 1064 /**/ 1065 2139, 1066 /**/ 1067 2138, 1068 /**/ 1069 2137, 1070 /**/ 1071 2136, 1072 /**/ 1073 2135, 1074 /**/ 1075 2134, 1076 /**/ 1077 2133, 1078 /**/ 1079 2132, 1080 /**/ 1081 2131, 1082 /**/ 1083 2130, 1084 /**/ 1085 2129, 1086 /**/ 1087 2128, 1088 /**/ 1089 2127, 1090 /**/ 1091 2126, 1092 /**/ 1093 2125, 1094 /**/ 1095 2124, 1096 /**/ 1097 2123, 1098 /**/ 1099 2122, 1100 /**/ 1101 2121, 1102 /**/ 1103 2120, 1104 /**/ 1105 2119, 1106 /**/ 1107 2118, 1108 /**/ 1109 2117, 1110 /**/ 1111 2116, 1112 /**/ 1113 2115, 1114 /**/ 1115 2114, 1116 /**/ 1117 2113, 1118 /**/ 1119 2112, 1120 /**/ 1121 2111, 1122 /**/ 1123 2110, 1124 /**/ 1125 2109, 1126 /**/ 1127 2108, 1128 /**/ 1129 2107, 1130 /**/ 1131 2106, 1132 /**/ 1133 2105, 1134 /**/ 1135 2104, 1136 /**/ 1137 2103, 1138 /**/ 1139 2102, 1140 /**/ 1141 2101, 1142 /**/ 1143 2100, 1144 /**/ 1145 2099, 1146 /**/ 1147 2098, 1148 /**/ 1149 2097, 1150 /**/ 1151 2096, 1152 /**/ 1153 2095, 1154 /**/ 1155 2094, 1156 /**/ 1157 2093, 1158 /**/ 1159 2092, 1160 /**/ 1161 2091, 1162 /**/ 1163 2090, 1164 /**/ 1165 2089, 1166 /**/ 1167 2088, 1168 /**/ 1169 2087, 1170 /**/ 1171 2086, 1172 /**/ 1173 2085, 1174 /**/ 1175 2084, 1176 /**/ 1177 2083, 1178 /**/ 1179 2082, 1180 /**/ 1181 2081, 1182 /**/ 1183 2080, 1184 /**/ 1185 2079, 1186 /**/ 1187 2078, 1188 /**/ 1189 2077, 1190 /**/ 1191 2076, 1192 /**/ 1193 2075, 1194 /**/ 1195 2074, 1196 /**/ 1197 2073, 1198 /**/ 1199 2072, 1200 /**/ 1201 2071, 1202 /**/ 1203 2070, 1204 /**/ 1205 2069, 1206 /**/ 1207 2068, 1208 /**/ 1209 2067, 1210 /**/ 1211 2066, 1212 /**/ 1213 2065, 1214 /**/ 1215 2064, 1216 /**/ 1217 2063, 1218 /**/ 1219 2062, 1220 /**/ 1221 2061, 1222 /**/ 1223 2060, 1224 /**/ 1225 2059, 1226 /**/ 1227 2058, 1228 /**/ 1229 2057, 1230 /**/ 1231 2056, 1232 /**/ 1233 2055, 1234 /**/ 1235 2054, 1236 /**/ 1237 2053, 1238 /**/ 1239 2052, 1240 /**/ 1241 2051, 1242 /**/ 1243 2050, 1244 /**/ 1245 2049, 1246 /**/ 1247 2048, 1248 /**/ 1249 2047, 1250 /**/ 1251 2046, 1252 /**/ 1253 2045, 1254 /**/ 1255 2044, 1256 /**/ 1257 2043, 1258 /**/ 1259 2042, 1260 /**/ 1261 2041, 1262 /**/ 1263 2040, 1264 /**/ 1265 2039, 1266 /**/ 1267 2038, 1268 /**/ 1269 2037, 1270 /**/ 1271 2036, 1272 /**/ 1273 2035, 1274 /**/ 1275 2034, 1276 /**/ 1277 2033, 1278 /**/ 1279 2032, 1280 /**/ 1281 2031, 1282 /**/ 1283 2030, 1284 /**/ 1285 2029, 1286 /**/ 1287 2028, 1288 /**/ 1289 2027, 1290 /**/ 1291 2026, 1292 /**/ 1293 2025, 1294 /**/ 1295 2024, 1296 /**/ 1297 2023, 1298 /**/ 1299 2022, 1300 /**/ 1301 2021, 1302 /**/ 1303 2020, 1304 /**/ 1305 2019, 1306 /**/ 1307 2018, 1308 /**/ 1309 2017, 1310 /**/ 1311 2016, 1312 /**/ 1313 2015, 1314 /**/ 1315 2014, 1316 /**/ 1317 2013, 1318 /**/ 1319 2012, 1320 /**/ 1321 2011, 1322 /**/ 1323 2010, 1324 /**/ 1325 2009, 1326 /**/ 1327 2008, 1328 /**/ 1329 2007, 1330 /**/ 1331 2006, 1332 /**/ 1333 2005, 1334 /**/ 1335 2004, 1336 /**/ 1337 2003, 1338 /**/ 1339 2002, 1340 /**/ 1341 2001, 1342 /**/ 1343 2000, 1344 /**/ 1345 1999, 1346 /**/ 1347 1998, 1348 /**/ 1349 1997, 1350 /**/ 1351 1996, 1352 /**/ 1353 1995, 1354 /**/ 1355 1994, 1356 /**/ 1357 1993, 1358 /**/ 1359 1992, 1360 /**/ 1361 1991, 1362 /**/ 1363 1990, 1364 /**/ 1365 1989, 1366 /**/ 1367 1988, 1368 /**/ 1369 1987, 1370 /**/ 1371 1986, 1372 /**/ 1373 1985, 1374 /**/ 1375 1984, 1376 /**/ 1377 1983, 1378 /**/ 1379 1982, 1380 /**/ 1381 1981, 1382 /**/ 1383 1980, 1384 /**/ 1385 1979, 1386 /**/ 1387 1978, 1388 /**/ 1389 1977, 1390 /**/ 1391 1976, 1392 /**/ 1393 1975, 1394 /**/ 1395 1974, 1396 /**/ 1397 1973, 1398 /**/ 1399 1972, 1400 /**/ 1401 1971, 1402 /**/ 1403 1970, 1404 /**/ 1405 1969, 1406 /**/ 1407 1968, 1408 /**/ 1409 1967, 1410 /**/ 1411 1966, 1412 /**/ 1413 1965, 1414 /**/ 1415 1964, 1416 /**/ 1417 1963, 1418 /**/ 1419 1962, 1420 /**/ 1421 1961, 1422 /**/ 1423 1960, 1424 /**/ 1425 1959, 1426 /**/ 1427 1958, 1428 /**/ 1429 1957, 1430 /**/ 1431 1956, 1432 /**/ 1433 1955, 1434 /**/ 1435 1954, 1436 /**/ 1437 1953, 1438 /**/ 1439 1952, 1440 /**/ 1441 1951, 1442 /**/ 1443 1950, 1444 /**/ 1445 1949, 1446 /**/ 1447 1948, 1448 /**/ 1449 1947, 1450 /**/ 1451 1946, 1452 /**/ 1453 1945, 1454 /**/ 1455 1944, 1456 /**/ 1457 1943, 1458 /**/ 1459 1942, 1460 /**/ 1461 1941, 1462 /**/ 1463 1940, 1464 /**/ 1465 1939, 1466 /**/ 1467 1938, 1468 /**/ 1469 1937, 1470 /**/ 1471 1936, 1472 /**/ 1473 1935, 1474 /**/ 1475 1934, 1476 /**/ 1477 1933, 1478 /**/ 1479 1932, 1480 /**/ 1481 1931, 1482 /**/ 1483 1930, 1484 /**/ 1485 1929, 1486 /**/ 1487 1928, 1488 /**/ 1489 1927, 1490 /**/ 1491 1926, 1492 /**/ 1493 1925, 1494 /**/ 1495 1924, 1496 /**/ 1497 1923, 1498 /**/ 1499 1922, 1500 /**/ 1501 1921, 1502 /**/ 1503 1920, 1504 /**/ 1505 1919, 1506 /**/ 1507 1918, 1508 /**/ 1509 1917, 1510 /**/ 1511 1916, 1512 /**/ 1513 1915, 1514 /**/ 1515 1914, 1516 /**/ 1517 1913, 1518 /**/ 1519 1912, 1520 /**/ 1521 1911, 1522 /**/ 1523 1910, 1524 /**/ 1525 1909, 1526 /**/ 1527 1908, 1528 /**/ 1529 1907, 1530 /**/ 1531 1906, 1532 /**/ 1533 1905, 1534 /**/ 1535 1904, 1536 /**/ 1537 1903, 1538 /**/ 1539 1902, 1540 /**/ 1541 1901, 1542 /**/ 1543 1900, 1544 /**/ 1545 1899, 1546 /**/ 1547 1898, 1548 /**/ 1549 1897, 1550 /**/ 1551 1896, 1552 /**/ 1553 1895, 1554 /**/ 1555 1894, 1556 /**/ 1557 1893, 1558 /**/ 1559 1892, 1560 /**/ 1561 1891, 1562 /**/ 1563 1890, 1564 /**/ 1565 1889, 1566 /**/ 1567 1888, 1568 /**/ 1569 1887, 1570 /**/ 1571 1886, 1572 /**/ 1573 1885, 1574 /**/ 1575 1884, 1576 /**/ 1577 1883, 1578 /**/ 1579 1882, 1580 /**/ 1581 1881, 1582 /**/ 1583 1880, 1584 /**/ 1585 1879, 1586 /**/ 1587 1878, 1588 /**/ 1589 1877, 1590 /**/ 1591 1876, 1592 /**/ 1593 1875, 1594 /**/ 1595 1874, 1596 /**/ 1597 1873, 1598 /**/ 1599 1872, 1600 /**/ 1601 1871, 1602 /**/ 1603 1870, 1604 /**/ 1605 1869, 1606 /**/ 1607 1868, 1608 /**/ 1609 1867, 1610 /**/ 1611 1866, 1612 /**/ 1613 1865, 1614 /**/ 1615 1864, 1616 /**/ 1617 1863, 1618 /**/ 1619 1862, 1620 /**/ 1621 1861, 1622 /**/ 1623 1860, 1624 /**/ 1625 1859, 1626 /**/ 1627 1858, 1628 /**/ 1629 1857, 1630 /**/ 1631 1856, 1632 /**/ 1633 1855, 1634 /**/ 1635 1854, 1636 /**/ 1637 1853, 1638 /**/ 1639 1852, 1640 /**/ 1641 1851, 1642 /**/ 1643 1850, 1644 /**/ 1645 1849, 1646 /**/ 1647 1848, 1648 /**/ 1649 1847, 1650 /**/ 1651 1846, 1652 /**/ 1653 1845, 1654 /**/ 1655 1844, 1656 /**/ 1657 1843, 1658 /**/ 1659 1842, 1660 /**/ 1661 1841, 1662 /**/ 1663 1840, 1664 /**/ 1665 1839, 1666 /**/ 1667 1838, 1668 /**/ 1669 1837, 1670 /**/ 1671 1836, 1672 /**/ 1673 1835, 1674 /**/ 1675 1834, 1676 /**/ 1677 1833, 1678 /**/ 1679 1832, 1680 /**/ 1681 1831, 1682 /**/ 1683 1830, 1684 /**/ 1685 1829, 1686 /**/ 1687 1828, 1688 /**/ 1689 1827, 1690 /**/ 1691 1826, 1692 /**/ 1693 1825, 1694 /**/ 1695 1824, 1696 /**/ 1697 1823, 1698 /**/ 1699 1822, 1700 /**/ 1701 1821, 1702 /**/ 1703 1820, 1704 /**/ 1705 1819, 1706 /**/ 1707 1818, 1708 /**/ 1709 1817, 1710 /**/ 1711 1816, 1712 /**/ 1713 1815, 1714 /**/ 1715 1814, 1716 /**/ 1717 1813, 1718 /**/ 1719 1812, 1720 /**/ 1721 1811, 1722 /**/ 1723 1810, 1724 /**/ 1725 1809, 1726 /**/ 1727 1808, 1728 /**/ 1729 1807, 1730 /**/ 1731 1806, 1732 /**/ 1733 1805, 1734 /**/ 1735 1804, 1736 /**/ 1737 1803, 1738 /**/ 1739 1802, 1740 /**/ 1741 1801, 1742 /**/ 1743 1800, 1744 /**/ 1745 1799, 1746 /**/ 1747 1798, 1748 /**/ 1749 1797, 1750 /**/ 1751 1796, 1752 /**/ 1753 1795, 1754 /**/ 1755 1794, 1756 /**/ 1757 1793, 1758 /**/ 1759 1792, 1760 /**/ 1761 1791, 1762 /**/ 1763 1790, 1764 /**/ 1765 1789, 1766 /**/ 1767 1788, 1768 /**/ 1769 1787, 1770 /**/ 1771 1786, 1772 /**/ 1773 1785, 1774 /**/ 1775 1784, 1776 /**/ 1777 1783, 1778 /**/ 1779 1782, 1780 /**/ 1781 1781, 1782 /**/ 1783 1780, 1784 /**/ 1785 1779, 1786 /**/ 1787 1778, 1788 /**/ 1789 1777, 1790 /**/ 1791 1776, 1792 /**/ 1793 1775, 1794 /**/ 1795 1774, 1796 /**/ 1797 1773, 1798 /**/ 1799 1772, 1800 /**/ 1801 1771, 1802 /**/ 1803 1770, 1804 /**/ 1805 1769, 1806 /**/ 1807 1768, 1808 /**/ 1809 1767, 1810 /**/ 1811 1766, 1812 /**/ 1813 1765, 1814 /**/ 1815 1764, 1816 /**/ 1817 1763, 1818 /**/ 1819 1762, 1820 /**/ 1821 1761, 1822 /**/ 1823 1760, 1824 /**/ 1825 1759, 1826 /**/ 1827 1758, 1828 /**/ 1829 1757, 1830 /**/ 1831 1756, 1832 /**/ 1833 1755, 1834 /**/ 1835 1754, 1836 /**/ 1837 1753, 1838 /**/ 1839 1752, 1840 /**/ 1841 1751, 1842 /**/ 1843 1750, 1844 /**/ 1845 1749, 1846 /**/ 1847 1748, 1848 /**/ 1849 1747, 1850 /**/ 1851 1746, 1852 /**/ 1853 1745, 1854 /**/ 1855 1744, 1856 /**/ 1857 1743, 1858 /**/ 1859 1742, 1860 /**/ 1861 1741, 1862 /**/ 1863 1740, 1864 /**/ 1865 1739, 1866 /**/ 1867 1738, 1868 /**/ 1869 1737, 1870 /**/ 1871 1736, 1872 /**/ 1873 1735, 1874 /**/ 1875 1734, 1876 /**/ 1877 1733, 1878 /**/ 1879 1732, 1880 /**/ 1881 1731, 1882 /**/ 1883 1730, 1884 /**/ 1885 1729, 1886 /**/ 1887 1728, 1888 /**/ 1889 1727, 1890 /**/ 1891 1726, 1892 /**/ 1893 1725, 1894 /**/ 1895 1724, 1896 /**/ 1897 1723, 1898 /**/ 1899 1722, 1900 /**/ 1901 1721, 1902 /**/ 1903 1720, 1904 /**/ 1905 1719, 1906 /**/ 1907 1718, 1908 /**/ 1909 1717, 1910 /**/ 1911 1716, 1912 /**/ 1913 1715, 1914 /**/ 1915 1714, 1916 /**/ 1917 1713, 1918 /**/ 1919 1712, 1920 /**/ 1921 1711, 1922 /**/ 1923 1710, 1924 /**/ 1925 1709, 1926 /**/ 1927 1708, 1928 /**/ 1929 1707, 1930 /**/ 1931 1706, 1932 /**/ 1933 1705, 1934 /**/ 1935 1704, 1936 /**/ 1937 1703, 1938 /**/ 1939 1702, 1940 /**/ 1941 1701, 1942 /**/ 1943 1700, 1944 /**/ 1945 1699, 1946 /**/ 1947 1698, 1948 /**/ 1949 1697, 1950 /**/ 1951 1696, 1952 /**/ 1953 1695, 1954 /**/ 1955 1694, 1956 /**/ 1957 1693, 1958 /**/ 1959 1692, 1960 /**/ 1961 1691, 1962 /**/ 1963 1690, 1964 /**/ 1965 1689, 1966 /**/ 1967 1688, 1968 /**/ 1969 1687, 1970 /**/ 1971 1686, 1972 /**/ 1973 1685, 1974 /**/ 1975 1684, 1976 /**/ 1977 1683, 1978 /**/ 1979 1682, 1980 /**/ 1981 1681, 1982 /**/ 1983 1680, 1984 /**/ 1985 1679, 1986 /**/ 1987 1678, 1988 /**/ 1989 1677, 1990 /**/ 1991 1676, 1992 /**/ 1993 1675, 1994 /**/ 1995 1674, 1996 /**/ 1997 1673, 1998 /**/ 1999 1672, 2000 /**/ 2001 1671, 2002 /**/ 2003 1670, 2004 /**/ 2005 1669, 2006 /**/ 2007 1668, 2008 /**/ 2009 1667, 2010 /**/ 2011 1666, 2012 /**/ 2013 1665, 2014 /**/ 2015 1664, 2016 /**/ 2017 1663, 2018 /**/ 2019 1662, 2020 /**/ 2021 1661, 2022 /**/ 2023 1660, 2024 /**/ 2025 1659, 2026 /**/ 2027 1658, 2028 /**/ 2029 1657, 2030 /**/ 2031 1656, 2032 /**/ 2033 1655, 2034 /**/ 2035 1654, 2036 /**/ 2037 1653, 2038 /**/ 2039 1652, 2040 /**/ 2041 1651, 2042 /**/ 2043 1650, 2044 /**/ 2045 1649, 2046 /**/ 2047 1648, 2048 /**/ 2049 1647, 2050 /**/ 2051 1646, 2052 /**/ 2053 1645, 2054 /**/ 2055 1644, 2056 /**/ 2057 1643, 2058 /**/ 2059 1642, 2060 /**/ 2061 1641, 2062 /**/ 2063 1640, 2064 /**/ 2065 1639, 2066 /**/ 2067 1638, 2068 /**/ 2069 1637, 2070 /**/ 2071 1636, 2072 /**/ 2073 1635, 2074 /**/ 2075 1634, 2076 /**/ 2077 1633, 2078 /**/ 2079 1632, 2080 /**/ 2081 1631, 2082 /**/ 2083 1630, 2084 /**/ 2085 1629, 2086 /**/ 2087 1628, 2088 /**/ 2089 1627, 2090 /**/ 2091 1626, 2092 /**/ 2093 1625, 2094 /**/ 2095 1624, 2096 /**/ 2097 1623, 2098 /**/ 2099 1622, 2100 /**/ 2101 1621, 2102 /**/ 2103 1620, 2104 /**/ 2105 1619, 2106 /**/ 2107 1618, 2108 /**/ 2109 1617, 2110 /**/ 2111 1616, 2112 /**/ 2113 1615, 2114 /**/ 2115 1614, 2116 /**/ 2117 1613, 2118 /**/ 2119 1612, 2120 /**/ 2121 1611, 2122 /**/ 2123 1610, 2124 /**/ 2125 1609, 2126 /**/ 2127 1608, 2128 /**/ 2129 1607, 2130 /**/ 2131 1606, 2132 /**/ 2133 1605, 2134 /**/ 2135 1604, 2136 /**/ 2137 1603, 2138 /**/ 2139 1602, 2140 /**/ 2141 1601, 2142 /**/ 2143 1600, 2144 /**/ 2145 1599, 2146 /**/ 2147 1598, 2148 /**/ 2149 1597, 2150 /**/ 2151 1596, 2152 /**/ 2153 1595, 2154 /**/ 2155 1594, 2156 /**/ 2157 1593, 2158 /**/ 2159 1592, 2160 /**/ 2161 1591, 2162 /**/ 2163 1590, 2164 /**/ 2165 1589, 2166 /**/ 2167 1588, 2168 /**/ 2169 1587, 2170 /**/ 2171 1586, 2172 /**/ 2173 1585, 2174 /**/ 2175 1584, 2176 /**/ 2177 1583, 2178 /**/ 2179 1582, 2180 /**/ 2181 1581, 2182 /**/ 2183 1580, 2184 /**/ 2185 1579, 2186 /**/ 2187 1578, 2188 /**/ 2189 1577, 2190 /**/ 2191 1576, 2192 /**/ 2193 1575, 2194 /**/ 2195 1574, 2196 /**/ 2197 1573, 2198 /**/ 2199 1572, 2200 /**/ 2201 1571, 2202 /**/ 2203 1570, 2204 /**/ 2205 1569, 2206 /**/ 2207 1568, 2208 /**/ 2209 1567, 2210 /**/ 2211 1566, 2212 /**/ 2213 1565, 2214 /**/ 2215 1564, 2216 /**/ 2217 1563, 2218 /**/ 2219 1562, 2220 /**/ 2221 1561, 2222 /**/ 2223 1560, 2224 /**/ 2225 1559, 2226 /**/ 2227 1558, 2228 /**/ 2229 1557, 2230 /**/ 2231 1556, 2232 /**/ 2233 1555, 2234 /**/ 2235 1554, 2236 /**/ 2237 1553, 2238 /**/ 2239 1552, 2240 /**/ 2241 1551, 2242 /**/ 2243 1550, 2244 /**/ 2245 1549, 2246 /**/ 2247 1548, 2248 /**/ 2249 1547, 2250 /**/ 2251 1546, 2252 /**/ 2253 1545, 2254 /**/ 2255 1544, 2256 /**/ 2257 1543, 2258 /**/ 2259 1542, 2260 /**/ 2261 1541, 2262 /**/ 2263 1540, 2264 /**/ 2265 1539, 2266 /**/ 2267 1538, 2268 /**/ 2269 1537, 2270 /**/ 2271 1536, 2272 /**/ 2273 1535, 2274 /**/ 2275 1534, 2276 /**/ 2277 1533, 2278 /**/ 2279 1532, 2280 /**/ 2281 1531, 2282 /**/ 2283 1530, 2284 /**/ 2285 1529, 2286 /**/ 2287 1528, 2288 /**/ 2289 1527, 2290 /**/ 2291 1526, 2292 /**/ 2293 1525, 2294 /**/ 2295 1524, 2296 /**/ 2297 1523, 2298 /**/ 2299 1522, 2300 /**/ 2301 1521, 2302 /**/ 2303 1520, 2304 /**/ 2305 1519, 2306 /**/ 2307 1518, 2308 /**/ 2309 1517, 2310 /**/ 2311 1516, 2312 /**/ 2313 1515, 2314 /**/ 2315 1514, 2316 /**/ 2317 1513, 2318 /**/ 2319 1512, 2320 /**/ 2321 1511, 2322 /**/ 2323 1510, 2324 /**/ 2325 1509, 2326 /**/ 2327 1508, 2328 /**/ 2329 1507, 2330 /**/ 2331 1506, 2332 /**/ 2333 1505, 2334 /**/ 2335 1504, 2336 /**/ 2337 1503, 2338 /**/ 2339 1502, 2340 /**/ 2341 1501, 2342 /**/ 2343 1500, 2344 /**/ 2345 1499, 2346 /**/ 2347 1498, 2348 /**/ 2349 1497, 2350 /**/ 2351 1496, 2352 /**/ 2353 1495, 2354 /**/ 2355 1494, 2356 /**/ 2357 1493, 2358 /**/ 2359 1492, 2360 /**/ 2361 1491, 2362 /**/ 2363 1490, 2364 /**/ 2365 1489, 2366 /**/ 2367 1488, 2368 /**/ 2369 1487, 2370 /**/ 2371 1486, 2372 /**/ 2373 1485, 2374 /**/ 2375 1484, 2376 /**/ 2377 1483, 2378 /**/ 2379 1482, 2380 /**/ 2381 1481, 2382 /**/ 2383 1480, 2384 /**/ 2385 1479, 2386 /**/ 2387 1478, 2388 /**/ 2389 1477, 2390 /**/ 2391 1476, 2392 /**/ 2393 1475, 2394 /**/ 2395 1474, 2396 /**/ 2397 1473, 2398 /**/ 2399 1472, 2400 /**/ 2401 1471, 2402 /**/ 2403 1470, 2404 /**/ 2405 1469, 2406 /**/ 2407 1468, 2408 /**/ 2409 1467, 2410 /**/ 2411 1466, 2412 /**/ 2413 1465, 2414 /**/ 2415 1464, 2416 /**/ 2417 1463, 2418 /**/ 2419 1462, 2420 /**/ 2421 1461, 2422 /**/ 2423 1460, 2424 /**/ 2425 1459, 2426 /**/ 2427 1458, 2428 /**/ 2429 1457, 2430 /**/ 2431 1456, 2432 /**/ 2433 1455, 2434 /**/ 2435 1454, 2436 /**/ 2437 1453, 2438 /**/ 2439 1452, 2440 /**/ 2441 1451, 2442 /**/ 2443 1450, 2444 /**/ 2445 1449, 2446 /**/ 2447 1448, 2448 /**/ 2449 1447, 2450 /**/ 2451 1446, 2452 /**/ 2453 1445, 2454 /**/ 2455 1444, 2456 /**/ 2457 1443, 2458 /**/ 2459 1442, 2460 /**/ 2461 1441, 2462 /**/ 2463 1440, 2464 /**/ 2465 1439, 2466 /**/ 2467 1438, 2468 /**/ 2469 1437, 2470 /**/ 2471 1436, 2472 /**/ 2473 1435, 2474 /**/ 2475 1434, 2476 /**/ 2477 1433, 2478 /**/ 2479 1432, 2480 /**/ 2481 1431, 2482 /**/ 2483 1430, 2484 /**/ 2485 1429, 2486 /**/ 2487 1428, 2488 /**/ 2489 1427, 2490 /**/ 2491 1426, 2492 /**/ 2493 1425, 2494 /**/ 2495 1424, 2496 /**/ 2497 1423, 2498 /**/ 2499 1422, 2500 /**/ 2501 1421, 2502 /**/ 2503 1420, 2504 /**/ 2505 1419, 2506 /**/ 2507 1418, 2508 /**/ 2509 1417, 2510 /**/ 2511 1416, 2512 /**/ 2513 1415, 2514 /**/ 2515 1414, 2516 /**/ 2517 1413, 2518 /**/ 2519 1412, 2520 /**/ 2521 1411, 2522 /**/ 2523 1410, 2524 /**/ 2525 1409, 2526 /**/ 2527 1408, 2528 /**/ 2529 1407, 2530 /**/ 2531 1406, 2532 /**/ 2533 1405, 2534 /**/ 2535 1404, 2536 /**/ 2537 1403, 2538 /**/ 2539 1402, 2540 /**/ 2541 1401, 2542 /**/ 2543 1400, 2544 /**/ 2545 1399, 2546 /**/ 2547 1398, 2548 /**/ 2549 1397, 2550 /**/ 2551 1396, 2552 /**/ 2553 1395, 2554 /**/ 2555 1394, 2556 /**/ 2557 1393, 2558 /**/ 2559 1392, 2560 /**/ 2561 1391, 2562 /**/ 2563 1390, 2564 /**/ 2565 1389, 2566 /**/ 2567 1388, 2568 /**/ 2569 1387, 2570 /**/ 2571 1386, 2572 /**/ 2573 1385, 2574 /**/ 2575 1384, 2576 /**/ 2577 1383, 2578 /**/ 2579 1382, 2580 /**/ 2581 1381, 2582 /**/ 2583 1380, 2584 /**/ 2585 1379, 2586 /**/ 2587 1378, 2588 /**/ 2589 1377, 2590 /**/ 2591 1376, 2592 /**/ 2593 1375, 2594 /**/ 2595 1374, 2596 /**/ 2597 1373, 2598 /**/ 2599 1372, 2600 /**/ 2601 1371, 2602 /**/ 2603 1370, 2604 /**/ 2605 1369, 2606 /**/ 2607 1368, 2608 /**/ 2609 1367, 2610 /**/ 2611 1366, 2612 /**/ 2613 1365, 2614 /**/ 2615 1364, 2616 /**/ 2617 1363, 2618 /**/ 2619 1362, 2620 /**/ 2621 1361, 2622 /**/ 2623 1360, 2624 /**/ 2625 1359, 2626 /**/ 2627 1358, 2628 /**/ 2629 1357, 2630 /**/ 2631 1356, 2632 /**/ 2633 1355, 2634 /**/ 2635 1354, 2636 /**/ 2637 1353, 2638 /**/ 2639 1352, 2640 /**/ 2641 1351, 2642 /**/ 2643 1350, 2644 /**/ 2645 1349, 2646 /**/ 2647 1348, 2648 /**/ 2649 1347, 2650 /**/ 2651 1346, 2652 /**/ 2653 1345, 2654 /**/ 2655 1344, 2656 /**/ 2657 1343, 2658 /**/ 2659 1342, 2660 /**/ 2661 1341, 2662 /**/ 2663 1340, 2664 /**/ 2665 1339, 2666 /**/ 2667 1338, 2668 /**/ 2669 1337, 2670 /**/ 2671 1336, 2672 /**/ 2673 1335, 2674 /**/ 2675 1334, 2676 /**/ 2677 1333, 2678 /**/ 2679 1332, 2680 /**/ 2681 1331, 2682 /**/ 2683 1330, 2684 /**/ 2685 1329, 2686 /**/ 2687 1328, 2688 /**/ 2689 1327, 2690 /**/ 2691 1326, 2692 /**/ 2693 1325, 2694 /**/ 2695 1324, 2696 /**/ 2697 1323, 2698 /**/ 2699 1322, 2700 /**/ 2701 1321, 2702 /**/ 2703 1320, 2704 /**/ 2705 1319, 2706 /**/ 2707 1318, 2708 /**/ 2709 1317, 2710 /**/ 2711 1316, 2712 /**/ 2713 1315, 2714 /**/ 2715 1314, 2716 /**/ 2717 1313, 2718 /**/ 2719 1312, 2720 /**/ 2721 1311, 2722 /**/ 2723 1310, 2724 /**/ 2725 1309, 2726 /**/ 2727 1308, 2728 /**/ 2729 1307, 2730 /**/ 2731 1306, 2732 /**/ 2733 1305, 2734 /**/ 2735 1304, 2736 /**/ 2737 1303, 2738 /**/ 2739 1302, 2740 /**/ 2741 1301, 2742 /**/ 2743 1300, 2744 /**/ 2745 1299, 2746 /**/ 2747 1298, 2748 /**/ 2749 1297, 2750 /**/ 2751 1296, 2752 /**/ 2753 1295, 2754 /**/ 2755 1294, 2756 /**/ 2757 1293, 2758 /**/ 2759 1292, 2760 /**/ 2761 1291, 2762 /**/ 2763 1290, 2764 /**/ 2765 1289, 2766 /**/ 2767 1288, 2768 /**/ 2769 1287, 2770 /**/ 2771 1286, 2772 /**/ 2773 1285, 2774 /**/ 2775 1284, 2776 /**/ 2777 1283, 2778 /**/ 2779 1282, 2780 /**/ 2781 1281, 2782 /**/ 2783 1280, 2784 /**/ 2785 1279, 2786 /**/ 2787 1278, 2788 /**/ 2789 1277, 2790 /**/ 2791 1276, 2792 /**/ 2793 1275, 2794 /**/ 2795 1274, 2796 /**/ 2797 1273, 2798 /**/ 2799 1272, 2800 /**/ 2801 1271, 2802 /**/ 2803 1270, 2804 /**/ 2805 1269, 2806 /**/ 2807 1268, 2808 /**/ 2809 1267, 2810 /**/ 2811 1266, 2812 /**/ 2813 1265, 2814 /**/ 2815 1264, 2816 /**/ 2817 1263, 2818 /**/ 2819 1262, 2820 /**/ 2821 1261, 2822 /**/ 2823 1260, 2824 /**/ 2825 1259, 2826 /**/ 2827 1258, 2828 /**/ 2829 1257, 2830 /**/ 2831 1256, 2832 /**/ 2833 1255, 2834 /**/ 2835 1254, 2836 /**/ 2837 1253, 2838 /**/ 2839 1252, 2840 /**/ 2841 1251, 2842 /**/ 2843 1250, 2844 /**/ 2845 1249, 2846 /**/ 2847 1248, 2848 /**/ 2849 1247, 2850 /**/ 2851 1246, 2852 /**/ 2853 1245, 2854 /**/ 2855 1244, 2856 /**/ 2857 1243, 2858 /**/ 2859 1242, 2860 /**/ 2861 1241, 2862 /**/ 2863 1240, 2864 /**/ 2865 1239, 2866 /**/ 2867 1238, 2868 /**/ 2869 1237, 2870 /**/ 2871 1236, 2872 /**/ 2873 1235, 2874 /**/ 2875 1234, 2876 /**/ 2877 1233, 2878 /**/ 2879 1232, 2880 /**/ 2881 1231, 2882 /**/ 2883 1230, 2884 /**/ 2885 1229, 2886 /**/ 2887 1228, 2888 /**/ 2889 1227, 2890 /**/ 2891 1226, 2892 /**/ 2893 1225, 2894 /**/ 2895 1224, 2896 /**/ 2897 1223, 2898 /**/ 2899 1222, 2900 /**/ 2901 1221, 2902 /**/ 2903 1220, 2904 /**/ 2905 1219, 2906 /**/ 2907 1218, 2908 /**/ 2909 1217, 2910 /**/ 2911 1216, 2912 /**/ 2913 1215, 2914 /**/ 2915 1214, 2916 /**/ 2917 1213, 2918 /**/ 2919 1212, 2920 /**/ 2921 1211, 2922 /**/ 2923 1210, 2924 /**/ 2925 1209, 2926 /**/ 2927 1208, 2928 /**/ 2929 1207, 2930 /**/ 2931 1206, 2932 /**/ 2933 1205, 2934 /**/ 2935 1204, 2936 /**/ 2937 1203, 2938 /**/ 2939 1202, 2940 /**/ 2941 1201, 2942 /**/ 2943 1200, 2944 /**/ 2945 1199, 2946 /**/ 2947 1198, 2948 /**/ 2949 1197, 2950 /**/ 2951 1196, 2952 /**/ 2953 1195, 2954 /**/ 2955 1194, 2956 /**/ 2957 1193, 2958 /**/ 2959 1192, 2960 /**/ 2961 1191, 2962 /**/ 2963 1190, 2964 /**/ 2965 1189, 2966 /**/ 2967 1188, 2968 /**/ 2969 1187, 2970 /**/ 2971 1186, 2972 /**/ 2973 1185, 2974 /**/ 2975 1184, 2976 /**/ 2977 1183, 2978 /**/ 2979 1182, 2980 /**/ 2981 1181, 2982 /**/ 2983 1180, 2984 /**/ 2985 1179, 2986 /**/ 2987 1178, 2988 /**/ 2989 1177, 2990 /**/ 2991 1176, 2992 /**/ 2993 1175, 2994 /**/ 2995 1174, 2996 /**/ 2997 1173, 2998 /**/ 2999 1172, 3000 /**/ 3001 1171, 3002 /**/ 3003 1170, 3004 /**/ 3005 1169, 3006 /**/ 3007 1168, 3008 /**/ 3009 1167, 3010 /**/ 3011 1166, 3012 /**/ 3013 1165, 3014 /**/ 3015 1164, 3016 /**/ 3017 1163, 3018 /**/ 3019 1162, 3020 /**/ 3021 1161, 3022 /**/ 3023 1160, 3024 /**/ 3025 1159, 3026 /**/ 3027 1158, 3028 /**/ 3029 1157, 3030 /**/ 3031 1156, 3032 /**/ 3033 1155, 3034 /**/ 3035 1154, 3036 /**/ 3037 1153, 3038 /**/ 3039 1152, 3040 /**/ 3041 1151, 3042 /**/ 3043 1150, 3044 /**/ 3045 1149, 3046 /**/ 3047 1148, 3048 /**/ 3049 1147, 3050 /**/ 3051 1146, 3052 /**/ 3053 1145, 3054 /**/ 3055 1144, 3056 /**/ 3057 1143, 3058 /**/ 3059 1142, 3060 /**/ 3061 1141, 3062 /**/ 3063 1140, 3064 /**/ 3065 1139, 3066 /**/ 3067 1138, 3068 /**/ 3069 1137, 3070 /**/ 3071 1136, 3072 /**/ 3073 1135, 3074 /**/ 3075 1134, 3076 /**/ 3077 1133, 3078 /**/ 3079 1132, 3080 /**/ 3081 1131, 3082 /**/ 3083 1130, 3084 /**/ 3085 1129, 3086 /**/ 3087 1128, 3088 /**/ 3089 1127, 3090 /**/ 3091 1126, 3092 /**/ 3093 1125, 3094 /**/ 3095 1124, 3096 /**/ 3097 1123, 3098 /**/ 3099 1122, 3100 /**/ 3101 1121, 3102 /**/ 3103 1120, 3104 /**/ 3105 1119, 3106 /**/ 3107 1118, 3108 /**/ 3109 1117, 3110 /**/ 3111 1116, 3112 /**/ 3113 1115, 3114 /**/ 3115 1114, 3116 /**/ 3117 1113, 3118 /**/ 3119 1112, 3120 /**/ 3121 1111, 3122 /**/ 3123 1110, 3124 /**/ 3125 1109, 3126 /**/ 3127 1108, 3128 /**/ 3129 1107, 3130 /**/ 3131 1106, 3132 /**/ 3133 1105, 3134 /**/ 3135 1104, 3136 /**/ 3137 1103, 3138 /**/ 3139 1102, 3140 /**/ 3141 1101, 3142 /**/ 3143 1100, 3144 /**/ 3145 1099, 3146 /**/ 3147 1098, 3148 /**/ 3149 1097, 3150 /**/ 3151 1096, 3152 /**/ 3153 1095, 3154 /**/ 3155 1094, 3156 /**/ 3157 1093, 3158 /**/ 3159 1092, 3160 /**/ 3161 1091, 3162 /**/ 3163 1090, 3164 /**/ 3165 1089, 3166 /**/ 3167 1088, 3168 /**/ 3169 1087, 3170 /**/ 3171 1086, 3172 /**/ 3173 1085, 3174 /**/ 3175 1084, 3176 /**/ 3177 1083, 3178 /**/ 3179 1082, 3180 /**/ 3181 1081, 3182 /**/ 3183 1080, 3184 /**/ 3185 1079, 3186 /**/ 3187 1078, 3188 /**/ 3189 1077, 3190 /**/ 3191 1076, 3192 /**/ 3193 1075, 3194 /**/ 3195 1074, 3196 /**/ 3197 1073, 3198 /**/ 3199 1072, 3200 /**/ 3201 1071, 3202 /**/ 3203 1070, 3204 /**/ 3205 1069, 3206 /**/ 3207 1068, 3208 /**/ 3209 1067, 3210 /**/ 3211 1066, 3212 /**/ 3213 1065, 3214 /**/ 3215 1064, 3216 /**/ 3217 1063, 3218 /**/ 3219 1062, 3220 /**/ 3221 1061, 3222 /**/ 3223 1060, 3224 /**/ 3225 1059, 3226 /**/ 3227 1058, 3228 /**/ 3229 1057, 3230 /**/ 3231 1056, 3232 /**/ 3233 1055, 3234 /**/ 3235 1054, 3236 /**/ 3237 1053, 3238 /**/ 3239 1052, 3240 /**/ 3241 1051, 3242 /**/ 3243 1050, 3244 /**/ 3245 1049, 3246 /**/ 3247 1048, 3248 /**/ 3249 1047, 3250 /**/ 3251 1046, 3252 /**/ 3253 1045, 3254 /**/ 3255 1044, 3256 /**/ 3257 1043, 3258 /**/ 3259 1042, 3260 /**/ 3261 1041, 3262 /**/ 3263 1040, 3264 /**/ 3265 1039, 3266 /**/ 3267 1038, 3268 /**/ 3269 1037, 3270 /**/ 3271 1036, 3272 /**/ 3273 1035, 3274 /**/ 3275 1034, 3276 /**/ 3277 1033, 3278 /**/ 3279 1032, 3280 /**/ 3281 1031, 3282 /**/ 3283 1030, 3284 /**/ 3285 1029, 3286 /**/ 3287 1028, 3288 /**/ 3289 1027, 3290 /**/ 3291 1026, 3292 /**/ 3293 1025, 3294 /**/ 3295 1024, 3296 /**/ 3297 1023, 3298 /**/ 3299 1022, 3300 /**/ 3301 1021, 3302 /**/ 3303 1020, 3304 /**/ 3305 1019, 3306 /**/ 3307 1018, 3308 /**/ 3309 1017, 3310 /**/ 3311 1016, 3312 /**/ 3313 1015, 3314 /**/ 3315 1014, 3316 /**/ 3317 1013, 3318 /**/ 3319 1012, 3320 /**/ 3321 1011, 3322 /**/ 3323 1010, 3324 /**/ 3325 1009, 3326 /**/ 3327 1008, 3328 /**/ 3329 1007, 3330 /**/ 3331 1006, 3332 /**/ 3333 1005, 3334 /**/ 3335 1004, 3336 /**/ 3337 1003, 3338 /**/ 3339 1002, 3340 /**/ 3341 1001, 3342 /**/ 3343 1000, 3344 /**/ 3345 999, 3346 /**/ 3347 998, 3348 /**/ 3349 997, 3350 /**/ 3351 996, 3352 /**/ 3353 995, 3354 /**/ 3355 994, 3356 /**/ 3357 993, 3358 /**/ 3359 992, 3360 /**/ 3361 991, 3362 /**/ 3363 990, 3364 /**/ 3365 989, 3366 /**/ 3367 988, 3368 /**/ 3369 987, 3370 /**/ 3371 986, 3372 /**/ 3373 985, 3374 /**/ 3375 984, 3376 /**/ 3377 983, 3378 /**/ 3379 982, 3380 /**/ 3381 981, 3382 /**/ 3383 980, 3384 /**/ 3385 979, 3386 /**/ 3387 978, 3388 /**/ 3389 977, 3390 /**/ 3391 976, 3392 /**/ 3393 975, 3394 /**/ 3395 974, 3396 /**/ 3397 973, 3398 /**/ 3399 972, 3400 /**/ 3401 971, 3402 /**/ 3403 970, 3404 /**/ 3405 969, 3406 /**/ 3407 968, 3408 /**/ 3409 967, 3410 /**/ 3411 966, 3412 /**/ 3413 965, 3414 /**/ 3415 964, 3416 /**/ 3417 963, 3418 /**/ 3419 962, 3420 /**/ 3421 961, 3422 /**/ 3423 960, 3424 /**/ 3425 959, 3426 /**/ 3427 958, 3428 /**/ 3429 957, 3430 /**/ 3431 956, 3432 /**/ 3433 955, 3434 /**/ 3435 954, 3436 /**/ 3437 953, 3438 /**/ 3439 952, 3440 /**/ 3441 951, 3442 /**/ 3443 950, 3444 /**/ 3445 949, 3446 /**/ 3447 948, 3448 /**/ 3449 947, 3450 /**/ 3451 946, 3452 /**/ 3453 945, 3454 /**/ 3455 944, 3456 /**/ 3457 943, 3458 /**/ 3459 942, 3460 /**/ 3461 941, 3462 /**/ 3463 940, 3464 /**/ 3465 939, 3466 /**/ 3467 938, 3468 /**/ 3469 937, 3470 /**/ 3471 936, 3472 /**/ 3473 935, 3474 /**/ 3475 934, 3476 /**/ 3477 933, 3478 /**/ 3479 932, 3480 /**/ 3481 931, 3482 /**/ 3483 930, 3484 /**/ 3485 929, 3486 /**/ 3487 928, 3488 /**/ 3489 927, 3490 /**/ 3491 926, 3492 /**/ 3493 925, 3494 /**/ 3495 924, 3496 /**/ 3497 923, 3498 /**/ 3499 922, 3500 /**/ 3501 921, 3502 /**/ 3503 920, 3504 /**/ 3505 919, 3506 /**/ 3507 918, 3508 /**/ 3509 917, 3510 /**/ 3511 916, 3512 /**/ 3513 915, 3514 /**/ 3515 914, 3516 /**/ 3517 913, 3518 /**/ 3519 912, 3520 /**/ 3521 911, 3522 /**/ 3523 910, 3524 /**/ 3525 909, 3526 /**/ 3527 908, 3528 /**/ 3529 907, 3530 /**/ 3531 906, 3532 /**/ 3533 905, 3534 /**/ 3535 904, 3536 /**/ 3537 903, 3538 /**/ 3539 902, 3540 /**/ 3541 901, 3542 /**/ 3543 900, 3544 /**/ 3545 899, 3546 /**/ 3547 898, 3548 /**/ 3549 897, 3550 /**/ 3551 896, 3552 /**/ 3553 895, 3554 /**/ 3555 894, 3556 /**/ 3557 893, 3558 /**/ 3559 892, 3560 /**/ 3561 891, 3562 /**/ 3563 890, 3564 /**/ 3565 889, 3566 /**/ 3567 888, 3568 /**/ 3569 887, 3570 /**/ 3571 886, 3572 /**/ 3573 885, 3574 /**/ 3575 884, 3576 /**/ 3577 883, 3578 /**/ 3579 882, 3580 /**/ 3581 881, 3582 /**/ 3583 880, 3584 /**/ 3585 879, 3586 /**/ 3587 878, 3588 /**/ 3589 877, 3590 /**/ 3591 876, 3592 /**/ 3593 875, 3594 /**/ 3595 874, 3596 /**/ 3597 873, 3598 /**/ 3599 872, 3600 /**/ 3601 871, 3602 /**/ 3603 870, 3604 /**/ 3605 869, 3606 /**/ 3607 868, 3608 /**/ 3609 867, 3610 /**/ 3611 866, 3612 /**/ 3613 865, 3614 /**/ 3615 864, 3616 /**/ 3617 863, 3618 /**/ 3619 862, 3620 /**/ 3621 861, 3622 /**/ 3623 860, 3624 /**/ 3625 859, 3626 /**/ 3627 858, 3628 /**/ 3629 857, 3630 /**/ 3631 856, 3632 /**/ 3633 855, 3634 /**/ 3635 854, 3636 /**/ 3637 853, 3638 /**/ 3639 852, 3640 /**/ 3641 851, 3642 /**/ 3643 850, 3644 /**/ 3645 849, 3646 /**/ 3647 848, 3648 /**/ 3649 847, 3650 /**/ 3651 846, 3652 /**/ 3653 845, 3654 /**/ 3655 844, 3656 /**/ 3657 843, 3658 /**/ 3659 842, 3660 /**/ 3661 841, 3662 /**/ 3663 840, 3664 /**/ 3665 839, 3666 /**/ 3667 838, 3668 /**/ 3669 837, 3670 /**/ 3671 836, 3672 /**/ 3673 835, 3674 /**/ 3675 834, 3676 /**/ 3677 833, 3678 /**/ 3679 832, 3680 /**/ 3681 831, 3682 /**/ 3683 830, 3684 /**/ 3685 829, 3686 /**/ 3687 828, 3688 /**/ 3689 827, 3690 /**/ 3691 826, 3692 /**/ 3693 825, 3694 /**/ 3695 824, 3696 /**/ 3697 823, 3698 /**/ 3699 822, 3700 /**/ 3701 821, 3702 /**/ 3703 820, 3704 /**/ 3705 819, 3706 /**/ 3707 818, 3708 /**/ 3709 817, 3710 /**/ 3711 816, 3712 /**/ 3713 815, 3714 /**/ 3715 814, 3716 /**/ 3717 813, 3718 /**/ 3719 812, 3720 /**/ 3721 811, 3722 /**/ 3723 810, 3724 /**/ 3725 809, 3726 /**/ 3727 808, 3728 /**/ 3729 807, 3730 /**/ 3731 806, 3732 /**/ 3733 805, 3734 /**/ 3735 804, 3736 /**/ 3737 803, 3738 /**/ 3739 802, 3740 /**/ 3741 801, 3742 /**/ 3743 800, 3744 /**/ 3745 799, 3746 /**/ 3747 798, 3748 /**/ 3749 797, 3750 /**/ 3751 796, 3752 /**/ 3753 795, 3754 /**/ 3755 794, 3756 /**/ 3757 793, 3758 /**/ 3759 792, 3760 /**/ 3761 791, 3762 /**/ 3763 790, 3764 /**/ 3765 789, 3766 /**/ 3767 788, 3768 /**/ 3769 787, 3770 /**/ 3771 786, 3772 /**/ 3773 785, 3774 /**/ 3775 784, 3776 /**/ 3777 783, 3778 /**/ 3779 782, 3780 /**/ 3781 781, 3782 /**/ 3783 780, 3784 /**/ 3785 779, 3786 /**/ 3787 778, 3788 /**/ 3789 777, 3790 /**/ 3791 776, 3792 /**/ 3793 775, 3794 /**/ 3795 774, 3796 /**/ 3797 773, 3798 /**/ 3799 772, 3800 /**/ 3801 771, 3802 /**/ 3803 770, 3804 /**/ 3805 769, 3806 /**/ 3807 768, 3808 /**/ 3809 767, 3810 /**/ 3811 766, 3812 /**/ 3813 765, 3814 /**/ 3815 764, 3816 /**/ 3817 763, 3818 /**/ 3819 762, 3820 /**/ 3821 761, 3822 /**/ 3823 760, 3824 /**/ 3825 759, 3826 /**/ 3827 758, 3828 /**/ 3829 757, 3830 /**/ 3831 756, 3832 /**/ 3833 755, 3834 /**/ 3835 754, 3836 /**/ 3837 753, 3838 /**/ 3839 752, 3840 /**/ 3841 751, 3842 /**/ 3843 750, 3844 /**/ 3845 749, 3846 /**/ 3847 748, 3848 /**/ 3849 747, 3850 /**/ 3851 746, 3852 /**/ 3853 745, 3854 /**/ 3855 744, 3856 /**/ 3857 743, 3858 /**/ 3859 742, 3860 /**/ 3861 741, 3862 /**/ 3863 740, 3864 /**/ 3865 739, 3866 /**/ 3867 738, 3868 /**/ 3869 737, 3870 /**/ 3871 736, 3872 /**/ 3873 735, 3874 /**/ 3875 734, 3876 /**/ 3877 733, 3878 /**/ 3879 732, 3880 /**/ 3881 731, 3882 /**/ 3883 730, 3884 /**/ 3885 729, 3886 /**/ 3887 728, 3888 /**/ 3889 727, 3890 /**/ 3891 726, 3892 /**/ 3893 725, 3894 /**/ 3895 724, 3896 /**/ 3897 723, 3898 /**/ 3899 722, 3900 /**/ 3901 721, 3902 /**/ 3903 720, 3904 /**/ 3905 719, 3906 /**/ 3907 718, 3908 /**/ 3909 717, 3910 /**/ 3911 716, 3912 /**/ 3913 715, 3914 /**/ 3915 714, 3916 /**/ 3917 713, 3918 /**/ 3919 712, 3920 /**/ 3921 711, 3922 /**/ 3923 710, 3924 /**/ 3925 709, 3926 /**/ 3927 708, 3928 /**/ 3929 707, 3930 /**/ 3931 706, 3932 /**/ 3933 705, 3934 /**/ 3935 704, 3936 /**/ 3937 703, 3938 /**/ 3939 702, 3940 /**/ 3941 701, 3942 /**/ 3943 700, 3944 /**/ 3945 699, 3946 /**/ 3947 698, 3948 /**/ 3949 697, 3950 /**/ 3951 696, 3952 /**/ 3953 695, 3954 /**/ 3955 694, 3956 /**/ 3957 693, 3958 /**/ 3959 692, 3960 /**/ 3961 691, 3962 /**/ 3963 690, 3964 /**/ 3965 689, 3966 /**/ 3967 688, 3968 /**/ 3969 687, 3970 /**/ 3971 686, 3972 /**/ 3973 685, 3974 /**/ 3975 684, 3976 /**/ 3977 683, 3978 /**/ 3979 682, 3980 /**/ 3981 681, 3982 /**/ 3983 680, 3984 /**/ 3985 679, 3986 /**/ 3987 678, 3988 /**/ 3989 677, 3990 /**/ 3991 676, 3992 /**/ 3993 675, 3994 /**/ 3995 674, 3996 /**/ 3997 673, 3998 /**/ 3999 672, 4000 /**/ 4001 671, 4002 /**/ 4003 670, 4004 /**/ 4005 669, 4006 /**/ 4007 668, 4008 /**/ 4009 667, 4010 /**/ 4011 666, 4012 /**/ 4013 665, 4014 /**/ 4015 664, 4016 /**/ 4017 663, 4018 /**/ 4019 662, 4020 /**/ 4021 661, 4022 /**/ 4023 660, 4024 /**/ 4025 659, 4026 /**/ 4027 658, 4028 /**/ 4029 657, 4030 /**/ 4031 656, 4032 /**/ 4033 655, 4034 /**/ 4035 654, 4036 /**/ 4037 653, 4038 /**/ 4039 652, 4040 /**/ 4041 651, 4042 /**/ 4043 650, 4044 /**/ 4045 649, 4046 /**/ 4047 648, 4048 /**/ 4049 647, 4050 /**/ 4051 646, 4052 /**/ 4053 645, 4054 /**/ 4055 644, 4056 /**/ 4057 643, 4058 /**/ 4059 642, 4060 /**/ 4061 641, 4062 /**/ 4063 640, 4064 /**/ 4065 639, 4066 /**/ 4067 638, 4068 /**/ 4069 637, 4070 /**/ 4071 636, 4072 /**/ 4073 635, 4074 /**/ 4075 634, 4076 /**/ 4077 633, 4078 /**/ 4079 632, 4080 /**/ 4081 631, 4082 /**/ 4083 630, 4084 /**/ 4085 629, 4086 /**/ 4087 628, 4088 /**/ 4089 627, 4090 /**/ 4091 626, 4092 /**/ 4093 625, 4094 /**/ 4095 624, 4096 /**/ 4097 623, 4098 /**/ 4099 622, 4100 /**/ 4101 621, 4102 /**/ 4103 620, 4104 /**/ 4105 619, 4106 /**/ 4107 618, 4108 /**/ 4109 617, 4110 /**/ 4111 616, 4112 /**/ 4113 615, 4114 /**/ 4115 614, 4116 /**/ 4117 613, 4118 /**/ 4119 612, 4120 /**/ 4121 611, 4122 /**/ 4123 610, 4124 /**/ 4125 609, 4126 /**/ 4127 608, 4128 /**/ 4129 607, 4130 /**/ 4131 606, 4132 /**/ 4133 605, 4134 /**/ 4135 604, 4136 /**/ 4137 603, 4138 /**/ 4139 602, 4140 /**/ 4141 601, 4142 /**/ 4143 600, 4144 /**/ 4145 599, 4146 /**/ 4147 598, 4148 /**/ 4149 597, 4150 /**/ 4151 596, 4152 /**/ 4153 595, 4154 /**/ 4155 594, 4156 /**/ 4157 593, 4158 /**/ 4159 592, 4160 /**/ 4161 591, 4162 /**/ 4163 590, 4164 /**/ 4165 589, 4166 /**/ 4167 588, 4168 /**/ 4169 587, 4170 /**/ 4171 586, 4172 /**/ 4173 585, 4174 /**/ 4175 584, 4176 /**/ 4177 583, 4178 /**/ 4179 582, 4180 /**/ 4181 581, 4182 /**/ 4183 580, 4184 /**/ 4185 579, 4186 /**/ 4187 578, 4188 /**/ 4189 577, 4190 /**/ 4191 576, 4192 /**/ 4193 575, 4194 /**/ 4195 574, 4196 /**/ 4197 573, 4198 /**/ 4199 572, 4200 /**/ 4201 571, 4202 /**/ 4203 570, 4204 /**/ 4205 569, 4206 /**/ 4207 568, 4208 /**/ 4209 567, 4210 /**/ 4211 566, 4212 /**/ 4213 565, 4214 /**/ 4215 564, 4216 /**/ 4217 563, 4218 /**/ 4219 562, 4220 /**/ 4221 561, 4222 /**/ 4223 560, 4224 /**/ 4225 559, 4226 /**/ 4227 558, 4228 /**/ 4229 557, 4230 /**/ 4231 556, 4232 /**/ 4233 555, 4234 /**/ 4235 554, 4236 /**/ 4237 553, 4238 /**/ 4239 552, 4240 /**/ 4241 551, 4242 /**/ 4243 550, 4244 /**/ 4245 549, 4246 /**/ 4247 548, 4248 /**/ 4249 547, 4250 /**/ 4251 546, 4252 /**/ 4253 545, 4254 /**/ 4255 544, 4256 /**/ 4257 543, 4258 /**/ 4259 542, 4260 /**/ 4261 541, 4262 /**/ 4263 540, 4264 /**/ 4265 539, 4266 /**/ 4267 538, 4268 /**/ 4269 537, 4270 /**/ 4271 536, 4272 /**/ 4273 535, 4274 /**/ 4275 534, 4276 /**/ 4277 533, 4278 /**/ 4279 532, 4280 /**/ 4281 531, 4282 /**/ 4283 530, 4284 /**/ 4285 529, 4286 /**/ 4287 528, 4288 /**/ 4289 527, 4290 /**/ 4291 526, 4292 /**/ 4293 525, 4294 /**/ 4295 524, 4296 /**/ 4297 523, 4298 /**/ 4299 522, 4300 /**/ 4301 521, 4302 /**/ 4303 520, 4304 /**/ 4305 519, 4306 /**/ 4307 518, 4308 /**/ 4309 517, 4310 /**/ 4311 516, 4312 /**/ 4313 515, 4314 /**/ 4315 514, 4316 /**/ 4317 513, 4318 /**/ 4319 512, 4320 /**/ 4321 511, 4322 /**/ 4323 510, 4324 /**/ 4325 509, 4326 /**/ 4327 508, 4328 /**/ 4329 507, 4330 /**/ 4331 506, 4332 /**/ 4333 505, 4334 /**/ 4335 504, 4336 /**/ 4337 503, 4338 /**/ 4339 502, 4340 /**/ 4341 501, 4342 /**/ 4343 500, 4344 /**/ 4345 499, 4346 /**/ 4347 498, 4348 /**/ 4349 497, 4350 /**/ 4351 496, 4352 /**/ 4353 495, 4354 /**/ 4355 494, 4356 /**/ 4357 493, 4358 /**/ 4359 492, 4360 /**/ 4361 491, 4362 /**/ 4363 490, 4364 /**/ 4365 489, 4366 /**/ 4367 488, 4368 /**/ 4369 487, 4370 /**/ 4371 486, 4372 /**/ 4373 485, 4374 /**/ 4375 484, 4376 /**/ 4377 483, 4378 /**/ 4379 482, 4380 /**/ 4381 481, 4382 /**/ 4383 480, 4384 /**/ 4385 479, 4386 /**/ 4387 478, 4388 /**/ 4389 477, 4390 /**/ 4391 476, 4392 /**/ 4393 475, 4394 /**/ 4395 474, 4396 /**/ 4397 473, 4398 /**/ 4399 472, 4400 /**/ 4401 471, 4402 /**/ 4403 470, 4404 /**/ 4405 469, 4406 /**/ 4407 468, 4408 /**/ 4409 467, 4410 /**/ 4411 466, 4412 /**/ 4413 465, 4414 /**/ 4415 464, 4416 /**/ 4417 463, 4418 /**/ 4419 462, 4420 /**/ 4421 461, 4422 /**/ 4423 460, 4424 /**/ 4425 459, 4426 /**/ 4427 458, 4428 /**/ 4429 457, 4430 /**/ 4431 456, 4432 /**/ 4433 455, 4434 /**/ 4435 454, 4436 /**/ 4437 453, 4438 /**/ 4439 452, 4440 /**/ 4441 451, 4442 /**/ 4443 450, 4444 /**/ 4445 449, 4446 /**/ 4447 448, 4448 /**/ 4449 447, 4450 /**/ 4451 446, 4452 /**/ 4453 445, 4454 /**/ 4455 444, 4456 /**/ 4457 443, 4458 /**/ 4459 442, 4460 /**/ 4461 441, 4462 /**/ 4463 440, 4464 /**/ 4465 439, 4466 /**/ 4467 438, 4468 /**/ 4469 437, 4470 /**/ 4471 436, 4472 /**/ 4473 435, 4474 /**/ 4475 434, 4476 /**/ 4477 433, 4478 /**/ 4479 432, 4480 /**/ 4481 431, 4482 /**/ 4483 430, 4484 /**/ 4485 429, 4486 /**/ 4487 428, 4488 /**/ 4489 427, 4490 /**/ 4491 426, 4492 /**/ 4493 425, 4494 /**/ 4495 424, 4496 /**/ 4497 423, 4498 /**/ 4499 422, 4500 /**/ 4501 421, 4502 /**/ 4503 420, 4504 /**/ 4505 419, 4506 /**/ 4507 418, 4508 /**/ 4509 417, 4510 /**/ 4511 416, 4512 /**/ 4513 415, 4514 /**/ 4515 414, 4516 /**/ 4517 413, 4518 /**/ 4519 412, 4520 /**/ 4521 411, 4522 /**/ 4523 410, 4524 /**/ 4525 409, 4526 /**/ 4527 408, 4528 /**/ 4529 407, 4530 /**/ 4531 406, 4532 /**/ 4533 405, 4534 /**/ 4535 404, 4536 /**/ 4537 403, 4538 /**/ 4539 402, 4540 /**/ 4541 401, 4542 /**/ 4543 400, 4544 /**/ 4545 399, 4546 /**/ 4547 398, 4548 /**/ 4549 397, 4550 /**/ 4551 396, 4552 /**/ 4553 395, 4554 /**/ 4555 394, 4556 /**/ 4557 393, 4558 /**/ 4559 392, 4560 /**/ 4561 391, 4562 /**/ 4563 390, 4564 /**/ 4565 389, 4566 /**/ 4567 388, 4568 /**/ 4569 387, 4570 /**/ 4571 386, 4572 /**/ 4573 385, 4574 /**/ 4575 384, 4576 /**/ 4577 383, 4578 /**/ 4579 382, 4580 /**/ 4581 381, 4582 /**/ 4583 380, 4584 /**/ 4585 379, 4586 /**/ 4587 378, 4588 /**/ 4589 377, 4590 /**/ 4591 376, 4592 /**/ 4593 375, 4594 /**/ 4595 374, 4596 /**/ 4597 373, 4598 /**/ 4599 372, 4600 /**/ 4601 371, 4602 /**/ 4603 370, 4604 /**/ 4605 369, 4606 /**/ 4607 368, 4608 /**/ 4609 367, 4610 /**/ 4611 366, 4612 /**/ 4613 365, 4614 /**/ 4615 364, 4616 /**/ 4617 363, 4618 /**/ 4619 362, 4620 /**/ 4621 361, 4622 /**/ 4623 360, 4624 /**/ 4625 359, 4626 /**/ 4627 358, 4628 /**/ 4629 357, 4630 /**/ 4631 356, 4632 /**/ 4633 355, 4634 /**/ 4635 354, 4636 /**/ 4637 353, 4638 /**/ 4639 352, 4640 /**/ 4641 351, 4642 /**/ 4643 350, 4644 /**/ 4645 349, 4646 /**/ 4647 348, 4648 /**/ 4649 347, 4650 /**/ 4651 346, 4652 /**/ 4653 345, 4654 /**/ 4655 344, 4656 /**/ 4657 343, 4658 /**/ 4659 342, 4660 /**/ 4661 341, 4662 /**/ 4663 340, 4664 /**/ 4665 339, 4666 /**/ 4667 338, 4668 /**/ 4669 337, 4670 /**/ 4671 336, 4672 /**/ 4673 335, 4674 /**/ 4675 334, 4676 /**/ 4677 333, 4678 /**/ 4679 332, 4680 /**/ 4681 331, 4682 /**/ 4683 330, 4684 /**/ 4685 329, 4686 /**/ 4687 328, 4688 /**/ 4689 327, 4690 /**/ 4691 326, 4692 /**/ 4693 325, 4694 /**/ 4695 324, 4696 /**/ 4697 323, 4698 /**/ 4699 322, 4700 /**/ 4701 321, 4702 /**/ 4703 320, 4704 /**/ 4705 319, 4706 /**/ 4707 318, 4708 /**/ 4709 317, 4710 /**/ 4711 316, 4712 /**/ 4713 315, 4714 /**/ 4715 314, 4716 /**/ 4717 313, 4718 /**/ 4719 312, 4720 /**/ 4721 311, 4722 /**/ 4723 310, 4724 /**/ 4725 309, 4726 /**/ 4727 308, 4728 /**/ 4729 307, 4730 /**/ 4731 306, 4732 /**/ 4733 305, 4734 /**/ 4735 304, 4736 /**/ 4737 303, 4738 /**/ 4739 302, 4740 /**/ 4741 301, 4742 /**/ 4743 300, 4744 /**/ 4745 299, 4746 /**/ 4747 298, 4748 /**/ 4749 297, 4750 /**/ 4751 296, 4752 /**/ 4753 295, 4754 /**/ 4755 294, 4756 /**/ 4757 293, 4758 /**/ 4759 292, 4760 /**/ 4761 291, 4762 /**/ 4763 290, 4764 /**/ 4765 289, 4766 /**/ 4767 288, 4768 /**/ 4769 287, 4770 /**/ 4771 286, 4772 /**/ 4773 285, 4774 /**/ 4775 284, 4776 /**/ 4777 283, 4778 /**/ 4779 282, 4780 /**/ 4781 281, 4782 /**/ 4783 280, 4784 /**/ 4785 279, 4786 /**/ 4787 278, 4788 /**/ 4789 277, 4790 /**/ 4791 276, 4792 /**/ 4793 275, 4794 /**/ 4795 274, 4796 /**/ 4797 273, 4798 /**/ 4799 272, 4800 /**/ 4801 271, 4802 /**/ 4803 270, 4804 /**/ 4805 269, 4806 /**/ 4807 268, 4808 /**/ 4809 267, 4810 /**/ 4811 266, 4812 /**/ 4813 265, 4814 /**/ 4815 264, 4816 /**/ 4817 263, 4818 /**/ 4819 262, 4820 /**/ 4821 261, 4822 /**/ 4823 260, 4824 /**/ 4825 259, 4826 /**/ 4827 258, 4828 /**/ 4829 257, 4830 /**/ 4831 256, 4832 /**/ 4833 255, 4834 /**/ 4835 254, 4836 /**/ 4837 253, 4838 /**/ 4839 252, 4840 /**/ 4841 251, 4842 /**/ 4843 250, 4844 /**/ 4845 249, 4846 /**/ 4847 248, 4848 /**/ 4849 247, 4850 /**/ 4851 246, 4852 /**/ 4853 245, 4854 /**/ 4855 244, 4856 /**/ 4857 243, 4858 /**/ 4859 242, 4860 /**/ 4861 241, 4862 /**/ 4863 240, 4864 /**/ 4865 239, 4866 /**/ 4867 238, 4868 /**/ 4869 237, 4870 /**/ 4871 236, 4872 /**/ 4873 235, 4874 /**/ 4875 234, 4876 /**/ 4877 233, 4878 /**/ 4879 232, 4880 /**/ 4881 231, 4882 /**/ 4883 230, 4884 /**/ 4885 229, 4886 /**/ 4887 228, 4888 /**/ 4889 227, 4890 /**/ 4891 226, 4892 /**/ 4893 225, 4894 /**/ 4895 224, 4896 /**/ 4897 223, 4898 /**/ 4899 222, 4900 /**/ 4901 221, 4902 /**/ 4903 220, 4904 /**/ 4905 219, 4906 /**/ 4907 218, 4908 /**/ 4909 217, 4910 /**/ 4911 216, 4912 /**/ 4913 215, 4914 /**/ 4915 214, 4916 /**/ 4917 213, 4918 /**/ 4919 212, 4920 /**/ 4921 211, 4922 /**/ 4923 210, 4924 /**/ 4925 209, 4926 /**/ 4927 208, 4928 /**/ 4929 207, 4930 /**/ 4931 206, 4932 /**/ 4933 205, 4934 /**/ 4935 204, 4936 /**/ 4937 203, 4938 /**/ 4939 202, 4940 /**/ 4941 201, 4942 /**/ 4943 200, 4944 /**/ 4945 199, 4946 /**/ 4947 198, 4948 /**/ 4949 197, 4950 /**/ 4951 196, 4952 /**/ 4953 195, 4954 /**/ 4955 194, 4956 /**/ 4957 193, 4958 /**/ 4959 192, 4960 /**/ 4961 191, 4962 /**/ 4963 190, 4964 /**/ 4965 189, 4966 /**/ 4967 188, 4968 /**/ 4969 187, 4970 /**/ 4971 186, 4972 /**/ 4973 185, 4974 /**/ 4975 184, 4976 /**/ 4977 183, 4978 /**/ 4979 182, 4980 /**/ 4981 181, 4982 /**/ 4983 180, 4984 /**/ 4985 179, 4986 /**/ 4987 178, 4988 /**/ 4989 177, 4990 /**/ 4991 176, 4992 /**/ 4993 175, 4994 /**/ 4995 174, 4996 /**/ 4997 173, 4998 /**/ 4999 172, 5000 /**/ 5001 171, 5002 /**/ 5003 170, 5004 /**/ 5005 169, 5006 /**/ 5007 168, 5008 /**/ 5009 167, 5010 /**/ 5011 166, 5012 /**/ 5013 165, 5014 /**/ 5015 164, 5016 /**/ 5017 163, 5018 /**/ 5019 162, 5020 /**/ 5021 161, 5022 /**/ 5023 160, 5024 /**/ 5025 159, 5026 /**/ 5027 158, 5028 /**/ 5029 157, 5030 /**/ 5031 156, 5032 /**/ 5033 155, 5034 /**/ 5035 154, 5036 /**/ 5037 153, 5038 /**/ 5039 152, 5040 /**/ 5041 151, 5042 /**/ 5043 150, 5044 /**/ 5045 149, 5046 /**/ 5047 148, 5048 /**/ 5049 147, 5050 /**/ 5051 146, 5052 /**/ 5053 145, 5054 /**/ 5055 144, 5056 /**/ 5057 143, 5058 /**/ 5059 142, 5060 /**/ 5061 141, 5062 /**/ 5063 140, 5064 /**/ 5065 139, 5066 /**/ 5067 138, 5068 /**/ 5069 137, 5070 /**/ 5071 136, 5072 /**/ 5073 135, 5074 /**/ 5075 134, 5076 /**/ 5077 133, 5078 /**/ 5079 132, 5080 /**/ 5081 131, 5082 /**/ 5083 130, 5084 /**/ 5085 129, 5086 /**/ 5087 128, 5088 /**/ 5089 127, 5090 /**/ 5091 126, 5092 /**/ 5093 125, 5094 /**/ 5095 124, 5096 /**/ 5097 123, 5098 /**/ 5099 122, 5100 /**/ 5101 121, 5102 /**/ 5103 120, 5104 /**/ 5105 119, 5106 /**/ 5107 118, 5108 /**/ 5109 117, 5110 /**/ 5111 116, 5112 /**/ 5113 115, 5114 /**/ 5115 114, 5116 /**/ 5117 113, 5118 /**/ 5119 112, 5120 /**/ 5121 111, 5122 /**/ 5123 110, 5124 /**/ 5125 109, 5126 /**/ 5127 108, 5128 /**/ 5129 107, 5130 /**/ 5131 106, 5132 /**/ 5133 105, 5134 /**/ 5135 104, 5136 /**/ 5137 103, 5138 /**/ 5139 102, 5140 /**/ 5141 101, 5142 /**/ 5143 100, 5144 /**/ 5145 99, 5146 /**/ 5147 98, 5148 /**/ 5149 97, 5150 /**/ 5151 96, 5152 /**/ 5153 95, 5154 /**/ 5155 94, 5156 /**/ 5157 93, 5158 /**/ 5159 92, 5160 /**/ 5161 91, 5162 /**/ 5163 90, 5164 /**/ 5165 89, 5166 /**/ 5167 88, 5168 /**/ 5169 87, 5170 /**/ 5171 86, 5172 /**/ 5173 85, 5174 /**/ 5175 84, 5176 /**/ 5177 83, 5178 /**/ 5179 82, 5180 /**/ 5181 81, 5182 /**/ 5183 80, 5184 /**/ 5185 79, 5186 /**/ 5187 78, 5188 /**/ 5189 77, 5190 /**/ 5191 76, 5192 /**/ 5193 75, 5194 /**/ 5195 74, 5196 /**/ 5197 73, 5198 /**/ 5199 72, 5200 /**/ 5201 71, 5202 /**/ 5203 70, 5204 /**/ 5205 69, 5206 /**/ 5207 68, 5208 /**/ 5209 67, 5210 /**/ 5211 66, 5212 /**/ 5213 65, 5214 /**/ 5215 64, 5216 /**/ 5217 63, 5218 /**/ 5219 62, 5220 /**/ 5221 61, 5222 /**/ 5223 60, 5224 /**/ 5225 59, 5226 /**/ 5227 58, 5228 /**/ 5229 57, 5230 /**/ 5231 56, 5232 /**/ 5233 55, 5234 /**/ 5235 54, 5236 /**/ 5237 53, 5238 /**/ 5239 52, 5240 /**/ 5241 51, 5242 /**/ 5243 50, 5244 /**/ 5245 49, 5246 /**/ 5247 48, 5248 /**/ 5249 47, 5250 /**/ 5251 46, 5252 /**/ 5253 45, 5254 /**/ 5255 44, 5256 /**/ 5257 43, 5258 /**/ 5259 42, 5260 /**/ 5261 41, 5262 /**/ 5263 40, 5264 /**/ 5265 39, 5266 /**/ 5267 38, 5268 /**/ 5269 37, 5270 /**/ 5271 36, 5272 /**/ 5273 35, 5274 /**/ 5275 34, 5276 /**/ 5277 33, 5278 /**/ 5279 32, 5280 /**/ 5281 31, 5282 /**/ 5283 30, 5284 /**/ 5285 29, 5286 /**/ 5287 28, 5288 /**/ 5289 27, 5290 /**/ 5291 26, 5292 /**/ 5293 25, 5294 /**/ 5295 24, 5296 /**/ 5297 23, 5298 /**/ 5299 22, 5300 /**/ 5301 21, 5302 /**/ 5303 20, 5304 /**/ 5305 19, 5306 /**/ 5307 18, 5308 /**/ 5309 17, 5310 /**/ 5311 16, 5312 /**/ 5313 15, 5314 /**/ 5315 14, 5316 /**/ 5317 13, 5318 /**/ 5319 12, 5320 /**/ 5321 11, 5322 /**/ 5323 10, 5324 /**/ 5325 9, 5326 /**/ 5327 8, 5328 /**/ 5329 7, 5330 /**/ 5331 6, 5332 /**/ 5333 5, 5334 /**/ 5335 4, 5336 /**/ 5337 3, 5338 /**/ 5339 2, 5340 /**/ 5341 1, 5342 /**/ 5343 0 5344 }; 5345 5346 /* 5347 * Place to put a short description when adding a feature with a patch. 5348 * Keep it short, e.g.,: "relative numbers", "persistent undo". 5349 * Also add a comment marker to separate the lines. 5350 * See the official Vim patches for the diff format: It must use a context of 5351 * one line only. Create it by hand or use "diff -C2" and edit the patch. 5352 */ 5353 static char *(extra_patches[]) = 5354 { /* Add your patch description below this line */ 5355 /**/ 5356 NULL 5357 }; 5358 5359 int 5360 highest_patch(void) 5361 { 5362 int i; 5363 int h = 0; 5364 5365 for (i = 0; included_patches[i] != 0; ++i) 5366 if (included_patches[i] > h) 5367 h = included_patches[i]; 5368 return h; 5369 } 5370 5371 #if defined(FEAT_EVAL) || defined(PROTO) 5372 /* 5373 * Return TRUE if patch "n" has been included. 5374 */ 5375 int 5376 has_patch(int n) 5377 { 5378 int i; 5379 5380 for (i = 0; included_patches[i] != 0; ++i) 5381 if (included_patches[i] == n) 5382 return TRUE; 5383 return FALSE; 5384 } 5385 #endif 5386 5387 void 5388 ex_version(exarg_T *eap) 5389 { 5390 /* 5391 * Ignore a ":version 9.99" command. 5392 */ 5393 if (*eap->arg == NUL) 5394 { 5395 msg_putchar('\n'); 5396 list_version(); 5397 } 5398 } 5399 5400 /* 5401 * List all features aligned in columns, dictionary style. 5402 */ 5403 static void 5404 list_features(void) 5405 { 5406 int i; 5407 int ncol; 5408 int nrow; 5409 int nfeat = 0; 5410 int width = 0; 5411 5412 /* Find the length of the longest feature name, use that + 1 as the column 5413 * width */ 5414 for (i = 0; features[i] != NULL; ++i) 5415 { 5416 int l = (int)STRLEN(features[i]); 5417 5418 if (l > width) 5419 width = l; 5420 ++nfeat; 5421 } 5422 width += 1; 5423 5424 if (Columns < width) 5425 { 5426 /* Not enough screen columns - show one per line */ 5427 for (i = 0; features[i] != NULL; ++i) 5428 { 5429 version_msg(features[i]); 5430 if (msg_col > 0) 5431 msg_putchar('\n'); 5432 } 5433 return; 5434 } 5435 5436 /* The rightmost column doesn't need a separator. 5437 * Sacrifice it to fit in one more column if possible. */ 5438 ncol = (int) (Columns + 1) / width; 5439 nrow = nfeat / ncol + (nfeat % ncol ? 1 : 0); 5440 5441 /* i counts columns then rows. idx counts rows then columns. */ 5442 for (i = 0; !got_int && i < nrow * ncol; ++i) 5443 { 5444 int idx = (i / ncol) + (i % ncol) * nrow; 5445 5446 if (idx < nfeat) 5447 { 5448 int last_col = (i + 1) % ncol == 0; 5449 5450 msg_puts((char_u *)features[idx]); 5451 if (last_col) 5452 { 5453 if (msg_col > 0) 5454 msg_putchar('\n'); 5455 } 5456 else 5457 { 5458 while (msg_col % width) 5459 msg_putchar(' '); 5460 } 5461 } 5462 else 5463 { 5464 if (msg_col > 0) 5465 msg_putchar('\n'); 5466 } 5467 } 5468 } 5469 5470 void 5471 list_version(void) 5472 { 5473 int i; 5474 int first; 5475 char *s = ""; 5476 5477 /* 5478 * When adding features here, don't forget to update the list of 5479 * internal variables in eval.c! 5480 */ 5481 MSG(longVersion); 5482 #ifdef WIN3264 5483 # ifdef FEAT_GUI_W32 5484 # if defined(_MSC_VER) && (_MSC_VER <= 1010) 5485 /* Only MS VC 4.1 and earlier can do Win32s */ 5486 MSG_PUTS(_("\nMS-Windows 16/32-bit GUI version")); 5487 # else 5488 # ifdef _WIN64 5489 MSG_PUTS(_("\nMS-Windows 64-bit GUI version")); 5490 # else 5491 MSG_PUTS(_("\nMS-Windows 32-bit GUI version")); 5492 # endif 5493 # endif 5494 # ifdef FEAT_OLE 5495 MSG_PUTS(_(" with OLE support")); 5496 # endif 5497 # else 5498 # ifdef _WIN64 5499 MSG_PUTS(_("\nMS-Windows 64-bit console version")); 5500 # else 5501 MSG_PUTS(_("\nMS-Windows 32-bit console version")); 5502 # endif 5503 # endif 5504 #endif 5505 #ifdef MACOS 5506 # ifdef MACOS_X 5507 # ifdef MACOS_X_UNIX 5508 MSG_PUTS(_("\nMacOS X (unix) version")); 5509 # else 5510 MSG_PUTS(_("\nMacOS X version")); 5511 # endif 5512 #else 5513 MSG_PUTS(_("\nMacOS version")); 5514 # endif 5515 #endif 5516 5517 #ifdef VMS 5518 MSG_PUTS(_("\nOpenVMS version")); 5519 # ifdef HAVE_PATHDEF 5520 if (*compiled_arch != NUL) 5521 { 5522 MSG_PUTS(" - "); 5523 MSG_PUTS(compiled_arch); 5524 } 5525 # endif 5526 5527 #endif 5528 5529 /* Print the list of patch numbers if there is at least one. */ 5530 /* Print a range when patches are consecutive: "1-10, 12, 15-40, 42-45" */ 5531 if (included_patches[0] != 0) 5532 { 5533 MSG_PUTS(_("\nIncluded patches: ")); 5534 first = -1; 5535 /* find last one */ 5536 for (i = 0; included_patches[i] != 0; ++i) 5537 ; 5538 while (--i >= 0) 5539 { 5540 if (first < 0) 5541 first = included_patches[i]; 5542 if (i == 0 || included_patches[i - 1] != included_patches[i] + 1) 5543 { 5544 MSG_PUTS(s); 5545 s = ", "; 5546 msg_outnum((long)first); 5547 if (first != included_patches[i]) 5548 { 5549 MSG_PUTS("-"); 5550 msg_outnum((long)included_patches[i]); 5551 } 5552 first = -1; 5553 } 5554 } 5555 } 5556 5557 /* Print the list of extra patch descriptions if there is at least one. */ 5558 if (extra_patches[0] != NULL) 5559 { 5560 MSG_PUTS(_("\nExtra patches: ")); 5561 s = ""; 5562 for (i = 0; extra_patches[i] != NULL; ++i) 5563 { 5564 MSG_PUTS(s); 5565 s = ", "; 5566 MSG_PUTS(extra_patches[i]); 5567 } 5568 } 5569 5570 #ifdef MODIFIED_BY 5571 MSG_PUTS("\n"); 5572 MSG_PUTS(_("Modified by ")); 5573 MSG_PUTS(MODIFIED_BY); 5574 #endif 5575 5576 #ifdef HAVE_PATHDEF 5577 if (*compiled_user != NUL || *compiled_sys != NUL) 5578 { 5579 MSG_PUTS(_("\nCompiled ")); 5580 if (*compiled_user != NUL) 5581 { 5582 MSG_PUTS(_("by ")); 5583 MSG_PUTS(compiled_user); 5584 } 5585 if (*compiled_sys != NUL) 5586 { 5587 MSG_PUTS("@"); 5588 MSG_PUTS(compiled_sys); 5589 } 5590 } 5591 #endif 5592 5593 #ifdef FEAT_HUGE 5594 MSG_PUTS(_("\nHuge version ")); 5595 #else 5596 # ifdef FEAT_BIG 5597 MSG_PUTS(_("\nBig version ")); 5598 # else 5599 # ifdef FEAT_NORMAL 5600 MSG_PUTS(_("\nNormal version ")); 5601 # else 5602 # ifdef FEAT_SMALL 5603 MSG_PUTS(_("\nSmall version ")); 5604 # else 5605 MSG_PUTS(_("\nTiny version ")); 5606 # endif 5607 # endif 5608 # endif 5609 #endif 5610 #ifndef FEAT_GUI 5611 MSG_PUTS(_("without GUI.")); 5612 #else 5613 # ifdef FEAT_GUI_GTK 5614 # ifdef USE_GTK3 5615 MSG_PUTS(_("with GTK3 GUI.")); 5616 # else 5617 # ifdef FEAT_GUI_GNOME 5618 MSG_PUTS(_("with GTK2-GNOME GUI.")); 5619 # else 5620 MSG_PUTS(_("with GTK2 GUI.")); 5621 # endif 5622 # endif 5623 # else 5624 # ifdef FEAT_GUI_MOTIF 5625 MSG_PUTS(_("with X11-Motif GUI.")); 5626 # else 5627 # ifdef FEAT_GUI_ATHENA 5628 # ifdef FEAT_GUI_NEXTAW 5629 MSG_PUTS(_("with X11-neXtaw GUI.")); 5630 # else 5631 MSG_PUTS(_("with X11-Athena GUI.")); 5632 # endif 5633 # else 5634 # ifdef FEAT_GUI_PHOTON 5635 MSG_PUTS(_("with Photon GUI.")); 5636 # else 5637 # if defined(MSWIN) 5638 MSG_PUTS(_("with GUI.")); 5639 # else 5640 # if defined(TARGET_API_MAC_CARBON) && TARGET_API_MAC_CARBON 5641 MSG_PUTS(_("with Carbon GUI.")); 5642 # else 5643 # if defined(TARGET_API_MAC_OSX) && TARGET_API_MAC_OSX 5644 MSG_PUTS(_("with Cocoa GUI.")); 5645 # else 5646 # if defined(MACOS) 5647 MSG_PUTS(_("with (classic) GUI.")); 5648 # endif 5649 # endif 5650 # endif 5651 # endif 5652 # endif 5653 # endif 5654 # endif 5655 # endif 5656 #endif 5657 version_msg(_(" Features included (+) or not (-):\n")); 5658 5659 list_features(); 5660 5661 #ifdef SYS_VIMRC_FILE 5662 version_msg(_(" system vimrc file: \"")); 5663 version_msg(SYS_VIMRC_FILE); 5664 version_msg("\"\n"); 5665 #endif 5666 #ifdef USR_VIMRC_FILE 5667 version_msg(_(" user vimrc file: \"")); 5668 version_msg(USR_VIMRC_FILE); 5669 version_msg("\"\n"); 5670 #endif 5671 #ifdef USR_VIMRC_FILE2 5672 version_msg(_(" 2nd user vimrc file: \"")); 5673 version_msg(USR_VIMRC_FILE2); 5674 version_msg("\"\n"); 5675 #endif 5676 #ifdef USR_VIMRC_FILE3 5677 version_msg(_(" 3rd user vimrc file: \"")); 5678 version_msg(USR_VIMRC_FILE3); 5679 version_msg("\"\n"); 5680 #endif 5681 #ifdef USR_EXRC_FILE 5682 version_msg(_(" user exrc file: \"")); 5683 version_msg(USR_EXRC_FILE); 5684 version_msg("\"\n"); 5685 #endif 5686 #ifdef USR_EXRC_FILE2 5687 version_msg(_(" 2nd user exrc file: \"")); 5688 version_msg(USR_EXRC_FILE2); 5689 version_msg("\"\n"); 5690 #endif 5691 #ifdef FEAT_GUI 5692 # ifdef SYS_GVIMRC_FILE 5693 version_msg(_(" system gvimrc file: \"")); 5694 version_msg(SYS_GVIMRC_FILE); 5695 version_msg("\"\n"); 5696 # endif 5697 version_msg(_(" user gvimrc file: \"")); 5698 version_msg(USR_GVIMRC_FILE); 5699 version_msg("\"\n"); 5700 # ifdef USR_GVIMRC_FILE2 5701 version_msg(_("2nd user gvimrc file: \"")); 5702 version_msg(USR_GVIMRC_FILE2); 5703 version_msg("\"\n"); 5704 # endif 5705 # ifdef USR_GVIMRC_FILE3 5706 version_msg(_("3rd user gvimrc file: \"")); 5707 version_msg(USR_GVIMRC_FILE3); 5708 version_msg("\"\n"); 5709 # endif 5710 #endif 5711 version_msg(_(" defaults file: \"")); 5712 version_msg(VIM_DEFAULTS_FILE); 5713 version_msg("\"\n"); 5714 #ifdef FEAT_GUI 5715 # ifdef SYS_MENU_FILE 5716 version_msg(_(" system menu file: \"")); 5717 version_msg(SYS_MENU_FILE); 5718 version_msg("\"\n"); 5719 # endif 5720 #endif 5721 #ifdef HAVE_PATHDEF 5722 if (*default_vim_dir != NUL) 5723 { 5724 version_msg(_(" fall-back for $VIM: \"")); 5725 version_msg((char *)default_vim_dir); 5726 version_msg("\"\n"); 5727 } 5728 if (*default_vimruntime_dir != NUL) 5729 { 5730 version_msg(_(" f-b for $VIMRUNTIME: \"")); 5731 version_msg((char *)default_vimruntime_dir); 5732 version_msg("\"\n"); 5733 } 5734 version_msg(_("Compilation: ")); 5735 version_msg((char *)all_cflags); 5736 version_msg("\n"); 5737 #ifdef VMS 5738 if (*compiler_version != NUL) 5739 { 5740 version_msg(_("Compiler: ")); 5741 version_msg((char *)compiler_version); 5742 version_msg("\n"); 5743 } 5744 #endif 5745 version_msg(_("Linking: ")); 5746 version_msg((char *)all_lflags); 5747 #endif 5748 #ifdef DEBUG 5749 version_msg("\n"); 5750 version_msg(_(" DEBUG BUILD")); 5751 #endif 5752 } 5753 5754 /* 5755 * Output a string for the version message. If it's going to wrap, output a 5756 * newline, unless the message is too long to fit on the screen anyway. 5757 */ 5758 static void 5759 version_msg(char *s) 5760 { 5761 int len = (int)STRLEN(s); 5762 5763 if (!got_int && len < (int)Columns && msg_col + len >= (int)Columns 5764 && *s != '\n') 5765 msg_putchar('\n'); 5766 if (!got_int) 5767 MSG_PUTS(s); 5768 } 5769 5770 static void do_intro_line(int row, char_u *mesg, int add_version, int attr); 5771 5772 /* 5773 * Show the intro message when not editing a file. 5774 */ 5775 void 5776 maybe_intro_message(void) 5777 { 5778 if (bufempty() 5779 && curbuf->b_fname == NULL 5780 #ifdef FEAT_WINDOWS 5781 && firstwin->w_next == NULL 5782 #endif 5783 && vim_strchr(p_shm, SHM_INTRO) == NULL) 5784 intro_message(FALSE); 5785 } 5786 5787 /* 5788 * Give an introductory message about Vim. 5789 * Only used when starting Vim on an empty file, without a file name. 5790 * Or with the ":intro" command (for Sven :-). 5791 */ 5792 void 5793 intro_message( 5794 int colon) /* TRUE for ":intro" */ 5795 { 5796 int i; 5797 int row; 5798 int blanklines; 5799 int sponsor; 5800 char *p; 5801 static char *(lines[]) = 5802 { 5803 N_("VIM - Vi IMproved"), 5804 "", 5805 N_("version "), 5806 N_("by Bram Moolenaar et al."), 5807 #ifdef MODIFIED_BY 5808 " ", 5809 #endif 5810 N_("Vim is open source and freely distributable"), 5811 "", 5812 N_("Help poor children in Uganda!"), 5813 N_("type :help iccf<Enter> for information "), 5814 "", 5815 N_("type :q<Enter> to exit "), 5816 N_("type :help<Enter> or <F1> for on-line help"), 5817 N_("type :help version7<Enter> for version info"), 5818 NULL, 5819 "", 5820 N_("Running in Vi compatible mode"), 5821 N_("type :set nocp<Enter> for Vim defaults"), 5822 N_("type :help cp-default<Enter> for info on this"), 5823 }; 5824 #ifdef FEAT_GUI 5825 static char *(gui_lines[]) = 5826 { 5827 NULL, 5828 NULL, 5829 NULL, 5830 NULL, 5831 #ifdef MODIFIED_BY 5832 NULL, 5833 #endif 5834 NULL, 5835 NULL, 5836 NULL, 5837 N_("menu Help->Orphans for information "), 5838 NULL, 5839 N_("Running modeless, typed text is inserted"), 5840 N_("menu Edit->Global Settings->Toggle Insert Mode "), 5841 N_(" for two modes "), 5842 NULL, 5843 NULL, 5844 NULL, 5845 N_("menu Edit->Global Settings->Toggle Vi Compatible"), 5846 N_(" for Vim defaults "), 5847 }; 5848 #endif 5849 5850 /* blanklines = screen height - # message lines */ 5851 blanklines = (int)Rows - ((sizeof(lines) / sizeof(char *)) - 1); 5852 if (!p_cp) 5853 blanklines += 4; /* add 4 for not showing "Vi compatible" message */ 5854 #if defined(WIN3264) && !defined(FEAT_GUI_W32) 5855 if (mch_windows95()) 5856 blanklines -= 3; /* subtract 3 for showing "Windows 95" message */ 5857 #endif 5858 5859 #ifdef FEAT_WINDOWS 5860 /* Don't overwrite a statusline. Depends on 'cmdheight'. */ 5861 if (p_ls > 1) 5862 blanklines -= Rows - topframe->fr_height; 5863 #endif 5864 if (blanklines < 0) 5865 blanklines = 0; 5866 5867 /* Show the sponsor and register message one out of four times, the Uganda 5868 * message two out of four times. */ 5869 sponsor = (int)time(NULL); 5870 sponsor = ((sponsor & 2) == 0) - ((sponsor & 4) == 0); 5871 5872 /* start displaying the message lines after half of the blank lines */ 5873 row = blanklines / 2; 5874 if ((row >= 2 && Columns >= 50) || colon) 5875 { 5876 for (i = 0; i < (int)(sizeof(lines) / sizeof(char *)); ++i) 5877 { 5878 p = lines[i]; 5879 #ifdef FEAT_GUI 5880 if (p_im && gui.in_use && gui_lines[i] != NULL) 5881 p = gui_lines[i]; 5882 #endif 5883 if (p == NULL) 5884 { 5885 if (!p_cp) 5886 break; 5887 continue; 5888 } 5889 if (sponsor != 0) 5890 { 5891 if (strstr(p, "children") != NULL) 5892 p = sponsor < 0 5893 ? N_("Sponsor Vim development!") 5894 : N_("Become a registered Vim user!"); 5895 else if (strstr(p, "iccf") != NULL) 5896 p = sponsor < 0 5897 ? N_("type :help sponsor<Enter> for information ") 5898 : N_("type :help register<Enter> for information "); 5899 else if (strstr(p, "Orphans") != NULL) 5900 p = N_("menu Help->Sponsor/Register for information "); 5901 } 5902 if (*p != NUL) 5903 do_intro_line(row, (char_u *)_(p), i == 2, 0); 5904 ++row; 5905 } 5906 #if defined(WIN3264) && !defined(FEAT_GUI_W32) 5907 if (mch_windows95()) 5908 { 5909 do_intro_line(++row, 5910 (char_u *)_("WARNING: Windows 95/98/ME detected"), 5911 FALSE, hl_attr(HLF_E)); 5912 do_intro_line(++row, 5913 (char_u *)_("type :help windows95<Enter> for info on this"), 5914 FALSE, 0); 5915 } 5916 #endif 5917 } 5918 5919 /* Make the wait-return message appear just below the text. */ 5920 if (colon) 5921 msg_row = row; 5922 } 5923 5924 static void 5925 do_intro_line( 5926 int row, 5927 char_u *mesg, 5928 int add_version, 5929 int attr) 5930 { 5931 char_u vers[20]; 5932 int col; 5933 char_u *p; 5934 int l; 5935 int clen; 5936 #ifdef MODIFIED_BY 5937 # define MODBY_LEN 150 5938 char_u modby[MODBY_LEN]; 5939 5940 if (*mesg == ' ') 5941 { 5942 vim_strncpy(modby, (char_u *)_("Modified by "), MODBY_LEN - 1); 5943 l = (int)STRLEN(modby); 5944 vim_strncpy(modby + l, (char_u *)MODIFIED_BY, MODBY_LEN - l - 1); 5945 mesg = modby; 5946 } 5947 #endif 5948 5949 /* Center the message horizontally. */ 5950 col = vim_strsize(mesg); 5951 if (add_version) 5952 { 5953 STRCPY(vers, mediumVersion); 5954 if (highest_patch()) 5955 { 5956 /* Check for 9.9x or 9.9xx, alpha/beta version */ 5957 if (isalpha((int)vers[3])) 5958 { 5959 int len = (isalpha((int)vers[4])) ? 5 : 4; 5960 sprintf((char *)vers + len, ".%d%s", highest_patch(), 5961 mediumVersion + len); 5962 } 5963 else 5964 sprintf((char *)vers + 3, ".%d", highest_patch()); 5965 } 5966 col += (int)STRLEN(vers); 5967 } 5968 col = (Columns - col) / 2; 5969 if (col < 0) 5970 col = 0; 5971 5972 /* Split up in parts to highlight <> items differently. */ 5973 for (p = mesg; *p != NUL; p += l) 5974 { 5975 clen = 0; 5976 for (l = 0; p[l] != NUL 5977 && (l == 0 || (p[l] != '<' && p[l - 1] != '>')); ++l) 5978 { 5979 #ifdef FEAT_MBYTE 5980 if (has_mbyte) 5981 { 5982 clen += ptr2cells(p + l); 5983 l += (*mb_ptr2len)(p + l) - 1; 5984 } 5985 else 5986 #endif 5987 clen += byte2cells(p[l]); 5988 } 5989 screen_puts_len(p, l, row, col, *p == '<' ? hl_attr(HLF_8) : attr); 5990 col += clen; 5991 } 5992 5993 /* Add the version number to the version line. */ 5994 if (add_version) 5995 screen_puts(vers, row, col, 0); 5996 } 5997 5998 /* 5999 * ":intro": clear screen, display intro screen and wait for return. 6000 */ 6001 void 6002 ex_intro(exarg_T *eap UNUSED) 6003 { 6004 screenclear(); 6005 intro_message(TRUE); 6006 wait_return(TRUE); 6007 } 6008