Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Removed ZA

  • Loading branch information...
commit 7d6b0a0bd536a1a9931313bd4c9ce842733a7924 1 parent 590554d
@CloCkWeRX CloCkWeRX authored
View
141 Validate/ZA.php
@@ -1,141 +0,0 @@
-<?php
-/* vim: set expandtab tabstop=4 shiftwidth=4: */
-/**
- * Specific validation methods for data used in South Africa
- *
- * PHP Versions 4 and 5
- *
- * This source file is subject to the New BSD license, That is bundled
- * with this package in the file LICENSE, and is available through
- * the world-wide-web at
- * http://www.opensource.org/licenses/bsd-license.php
- * If you did not receive a copy of the new BSDlicense and are unable
- * to obtain it through the world-wide-web, please send a note to
- * pajoye@php.net so we can mail you a copy immediately.
- *
- * @category Validate
- * @package Validate_ZA
- * @author Jacques Marneweck <jacques@php.net>
- * @copyright 1997-2010 Jacques Marneweck
- * @license http://www.opensource.org/licenses/bsd-license.php New BSD License
- * @version CVS: $Id$
- * @link http://pear.php.net/package/Validate_ZA
- */
-
-/**
-* Requires base class Validate
-*/
-require_once 'Validate.php';
-
-/**
- * Data validation class for South Africa
- *
- * This class provides methods to validate:
- * - Social insurance number (aka SSN)
- * - Province code
- * - Postal code
- *
- * @category Validate
- * @package Validate_ZA
- * @author Jacques Marneweck <jacques@php.net>
- * @copyright 1997-2005 Jacques Marneweck
- * @license http://www.opensource.org/licenses/bsd-license.php New BSD License
- * @version Release: @package_version@
- * @link http://pear.php.net/package/Validate_ZA
- */
-class Validate_ZA
-{
- /**
- * Validate a South African Postal Code
- *
- * I've downloaded a list of postal codes from the SAPO website and
- * reduced the list down to unique postal codes.
- *
- * @param string $postcode the postal code to validate
- * @param bool $strong optional; strong checks (e.g. against a list
- * of postcodes)
- *
- * @return bool true if postal code is ok else false
- * @static
- * @access public
- * @link http://www.sapo.co.za/cms/download/postcodes.zip
- */
- function postalCode($postcode, $strong = false)
- {
- if (!is_numeric($postcode)) {
- return false;
- }
-
- if ($strong) {
- static $postcodes;
-
- if (!isset($postcodes)) {
- $file = '@DATADIR@/Validate_ZA/ZA_postcodes.txt';
- $postcodes = array_map('trim', file($file));
- }
- return in_array((int)$postcode, $postcodes);
- }
- return (bool) preg_match('/^[0-9]{4}$/', $postcode);
- }
-
- /**
- * Validates a "region" (i.e. province) code
- *
- * @param string $region 2-letter province code
- *
- * @return bool true if valid else false
- * @access public
- * @static
- */
- function region($region)
- {
- switch (strtoupper($region)) {
- case 'EC': /* Eastern Cape */
- case 'FS': /* Free State */
- case 'GP': /* Gauteng */
- case 'KN': /* Kwa-Zulu Natal */
- case 'MP': /* Mpumalanga */
- case 'NC': /* Northern Cape */
- case 'NP': /* Limpopo (former Northern Province) */
- case 'NW': /* North West */
- case 'WC': /* Western Cape */
- return true;
- break;
- default:
- return false;
- }
- return (false);
- }
-
- /**
- * Validate a South African ID Number
- *
- * @param string $id 11 digit South African Identity Number
- *
- * @return bool true if valid else false
- * @access public
- */
- function ssn($id)
- {
- $match = preg_match("!^(\d{2})(\d{2})(\d{2})\d\d{6}$!", $id, $matches);
- if (!$match) {
- return false;
- }
-
- list (, $year, $month, $day) = $matches;
-
- /**
- * Check that the date is valid
- */
- if (!Validate::date("$year-$month-$day", array('format' => '%y-%m-%d'))) {
- return false;
- }
-
- include_once 'Validate/Finance/CreditCard.php';
-
- if (Validate_Finance_CreditCard::Luhn($id)) {
- return true;
- }
- return false;
- }
-}
View
3,628 data/ZA_postcodes.txt
@@ -1,3628 +0,0 @@
-0001
-0003
-0004
-0005
-0006
-0007
-0008
-0009
-0010
-0011
-0012
-0014
-0016
-0017
-0018
-0019
-0020
-0021
-0023
-0024
-0025
-0026
-0027
-0028
-0029
-0030
-0031
-0032
-0033
-0035
-0036
-0037
-0039
-0040
-0041
-0042
-0043
-0044
-0045
-0046
-0047
-0048
-0049
-0050
-0051
-0052
-0053
-0054
-0055
-0056
-0057
-0058
-0059
-0060
-0061
-0062
-0063
-0064
-0065
-0066
-0067
-0068
-0070
-0071
-0072
-0073
-0074
-0075
-0076
-0077
-0078
-0079
-0080
-0101
-0102
-0103
-0105
-0109
-0110
-0112
-0116
-0117
-0118
-0120
-0121
-0122
-0125
-0126
-0127
-0128
-0129
-0132
-0134
-0135
-0137
-0139
-0140
-0142
-0143
-0145
-0146
-0148
-0149
-0150
-0151
-0153
-0154
-0155
-0156
-0158
-0159
-0160
-0161
-0162
-0163
-0164
-0165
-0166
-0167
-0168
-0169
-0170
-0171
-0172
-0173
-0174
-0175
-0176
-0177
-0178
-0179
-0184
-0188
-0189
-0190
-0191
-0192
-0193
-0194
-0195
-0196
-0197
-0198
-0199
-0200
-0201
-0202
-0203
-0204
-0205
-0206
-0207
-0208
-0209
-0210
-0211
-0212
-0213
-0214
-0215
-0216
-0217
-0218
-0219
-0220
-0221
-0232
-0240
-0250
-0251
-0252
-0253
-0255
-0257
-0258
-0259
-0260
-0261
-0263
-0264
-0265
-0266
-0267
-0268
-0269
-0270
-0271
-0273
-0274
-0275
-0276
-0277
-0284
-0285
-0286
-0287
-0292
-0299
-0300
-0301
-0302
-0303
-0304
-0305
-0306
-0307
-0308
-0309
-0310
-0311
-0312
-0313
-0314
-0315
-0316
-0317
-0318
-0319
-0320
-0322
-0324
-0325
-0328
-0330
-0331
-0332
-0333
-0334
-0335
-0336
-0337
-0338
-0340
-0341
-0342
-0344
-0345
-0346
-0347
-0348
-0349
-0350
-0351
-0353
-0354
-0355
-0356
-0357
-0358
-0360
-0361
-0362
-0363
-0364
-0365
-0366
-0367
-0369
-0370
-0371
-0372
-0373
-0374
-0375
-0376
-0377
-0378
-0379
-0380
-0381
-0382
-0383
-0384
-0385
-0386
-0387
-0388
-0389
-0390
-0391
-0393
-0394
-0396
-0397
-0398
-0399
-0400
-0401
-0402
-0403
-0404
-0405
-0406
-0407
-0408
-0409
-0410
-0411
-0412
-0413
-0414
-0415
-0416
-0417
-0418
-0419
-0420
-0421
-0422
-0423
-0424
-0425
-0426
-0427
-0428
-0429
-0430
-0431
-0432
-0433
-0434
-0435
-0436
-0437
-0438
-0439
-0440
-0441
-0442
-0443
-0444
-0445
-0447
-0448
-0449
-0450
-0451
-0452
-0453
-0454
-0455
-0456
-0457
-0458
-0459
-0460
-0462
-0464
-0465
-0466
-0467
-0468
-0469
-0470
-0472
-0473
-0474
-0475
-0476
-0477
-0478
-0479
-0480
-0481
-0482
-0483
-0484
-0485
-0486
-0487
-0488
-0489
-0490
-0491
-0492
-0493
-0494
-0495
-0496
-0497
-0498
-0499
-0500
-0501
-0502
-0503
-0504
-0505
-0506
-0507
-0508
-0510
-0512
-0513
-0514
-0515
-0516
-0517
-0530
-0531
-0532
-0533
-0534
-0536
-0537
-0539
-0541
-0555
-0556
-0557
-0560
-0561
-0562
-0564
-0580
-0600
-0602
-0603
-0604
-0605
-0606
-0607
-0608
-0609
-0610
-0611
-0612
-0613
-0615
-0616
-0617
-0618
-0619
-0620
-0621
-0622
-0623
-0624
-0626
-0628
-0629
-0630
-0631
-0632
-0633
-0634
-0635
-0636
-0637
-0638
-0639
-0640
-0641
-0642
-0643
-0644
-0645
-0646
-0647
-0648
-0649
-0650
-0651
-0652
-0654
-0656
-0657
-0658
-0659
-0690
-0699
-0700
-0701
-0702
-0703
-0704
-0705
-0706
-0707
-0708
-0709
-0710
-0711
-0712
-0713
-0714
-0715
-0716
-0717
-0718
-0719
-0720
-0721
-0722
-0723
-0724
-0725
-0726
-0727
-0728
-0729
-0730
-0731
-0732
-0733
-0734
-0735
-0736
-0737
-0738
-0739
-0740
-0741
-0742
-0743
-0744
-0745
-0746
-0747
-0748
-0749
-0750
-0751
-0752
-0753
-0754
-0755
-0756
-0757
-0758
-0759
-0760
-0761
-0762
-0763
-0764
-0765
-0766
-0767
-0768
-0769
-0770
-0771
-0772
-0773
-0774
-0775
-0776
-0777
-0778
-0779
-0780
-0781
-0782
-0783
-0784
-0785
-0786
-0787
-0788
-0789
-0790
-0791
-0792
-0793
-0794
-0795
-0796
-0797
-0798
-0799
-0800
-0801
-0802
-0803
-0804
-0805
-0806
-0807
-0808
-0809
-0810
-0811
-0812
-0813
-0814
-0815
-0816
-0817
-0818
-0819
-0820
-0821
-0822
-0823
-0824
-0825
-0826
-0827
-0828
-0829
-0830
-0831
-0832
-0833
-0834
-0835
-0836
-0837
-0838
-0839
-0840
-0841
-0842
-0843
-0844
-0845
-0846
-0847
-0848
-0849
-0850
-0852
-0854
-0855
-0857
-0858
-0859
-0860
-0861
-0862
-0863
-0864
-0865
-0866
-0867
-0868
-0869
-0870
-0871
-0872
-0873
-0875
-0876
-0877
-0878
-0879
-0881
-0883
-0884
-0885
-0886
-0889
-0890
-0891
-0893
-0894
-0895
-0896
-0897
-0898
-0899
-0900
-0901
-0902
-0903
-0904
-0905
-0906
-0907
-0909
-0910
-0912
-0913
-0914
-0915
-0916
-0917
-0918
-0919
-0920
-0921
-0922
-0923
-0924
-0925
-0926
-0927
-0928
-0929
-0930
-0931
-0932
-0933
-0935
-0937
-0938
-0939
-0940
-0941
-0942
-0943
-0944
-0945
-0946
-0947
-0948
-0949
-0950
-0951
-0952
-0953
-0954
-0955
-0956
-0957
-0958
-0959
-0960
-0961
-0962
-0963
-0964
-0967
-0968
-0969
-0970
-0971
-0972
-0973
-0974
-0975
-0976
-0977
-0978
-0979
-0980
-0981
-0982
-0983
-0984
-0985
-0986
-0987
-0988
-0989
-0990
-0991
-0992
-0993
-0994
-0995
-0996
-0997
-0998
-0999
-1000
-1001
-1002
-1003
-1004
-1005
-1007
-1008
-1020
-1021
-1022
-1023
-1024
-1025
-1026
-1027
-1028
-1030
-1032
-1033
-1035
-1036
-1037
-1038
-1039
-1040
-1042
-1043
-1044
-1045
-1046
-1047
-1048
-1049
-1050
-1051
-1052
-1053
-1054
-1056
-1057
-1058
-1059
-1060
-1061
-1062
-1063
-1064
-1065
-1066
-1067
-1068
-1069
-1070
-1071
-1072
-1073
-1074
-1075
-1076
-1077
-1078
-1079
-1080
-1081
-1082
-1085
-1090
-1095
-1096
-1097
-1098
-1100
-1101
-1102
-1110
-1111
-1112
-1120
-1121
-1122
-1123
-1124
-1126
-1127
-1128
-1129
-1130
-1131
-1132
-1133
-1150
-1151
-1152
-1153
-1154
-1160
-1170
-1185
-1190
-1192
-1193
-1194
-1195
-1200
-1202
-1203
-1204
-1205
-1206
-1207
-1208
-1209
-1211
-1212
-1213
-1214
-1215
-1216
-1217
-1218
-1219
-1220
-1222
-1223
-1224
-1227
-1240
-1241
-1242
-1245
-1246
-1247
-1248
-1249
-1250
-1251
-1252
-1253
-1254
-1255
-1256
-1257
-1258
-1260
-1270
-1271
-1273
-1274
-1280
-1281
-1282
-1283
-1284
-1285
-1286
-1287
-1288
-1289
-1290
-1291
-1295
-1300
-1301
-1302
-1303
-1304
-1307
-1309
-1320
-1330
-1331
-1332
-1333
-1334
-1335
-1336
-1337
-1340
-1341
-1342
-1343
-1344
-1345
-1346
-1347
-1348
-1349
-1350
-1351
-1352
-1353
-1354
-1355
-1356
-1357
-1358
-1359
-1360
-1361
-1362
-1363
-1364
-1365
-1366
-1367
-1368
-1369
-1370
-1371
-1372
-1373
-1374
-1375
-1377
-1378
-1380
-1382
-1384
-1390
-1391
-1392
-1393
-1394
-1395
-1396
-1397
-1398
-1400
-1401
-1402
-1403
-1404
-1405
-1406
-1407
-1408
-1409
-1410
-1411
-1412
-1413
-1414
-1415
-1416
-1417
-1418
-1419
-1420
-1421
-1422
-1423
-1424
-1425
-1427
-1430
-1432
-1433
-1435
-1436
-1437
-1438
-1439
-1440
-1442
-1443
-1444
-1445
-1446
-1447
-1450
-1451
-1452
-1453
-1454
-1455
-1456
-1457
-1460
-1461
-1462
-1463
-1464
-1465
-1466
-1467
-1468
-1469
-1470
-1471
-1472
-1473
-1474
-1476
-1477
-1478
-1479
-1481
-1482
-1483
-1484
-1485
-1486
-1490
-1492
-1494
-1495
-1497
-1500
-1501
-1502
-1503
-1504
-1505
-1506
-1507
-1508
-1509
-1510
-1511
-1512
-1513
-1514
-1515
-1516
-1517
-1518
-1519
-1521
-1522
-1524
-1525
-1526
-1527
-1540
-1541
-1542
-1543
-1544
-1545
-1546
-1547
-1548
-1549
-1550
-1551
-1552
-1553
-1554
-1558
-1560
-1562
-1563
-1564
-1565
-1566
-1567
-1568
-1569
-1570
-1571
-1572
-1574
-1576
-1577
-1578
-1590
-1600
-1610
-1611
-1612
-1613
-1614
-1617
-1619
-1620
-1621
-1622
-1623
-1624
-1625
-1626
-1627
-1628
-1629
-1630
-1631
-1634
-1635
-1636
-1637
-1638
-1639
-1640
-1645
-1665
-1667
-1683
-1684
-1685
-1686
-1687
-1688
-1689
-1690
-1691
-1692
-1698
-1700
-1701
-1708
-1710
-1711
-1712
-1714
-1715
-1716
-1717
-1718
-1723
-1725
-1726
-1728
-1729
-1730
-1731
-1732
-1733
-1734
-1735
-1736
-1737
-1739
-1740
-1741
-1742
-1743
-1744
-1745
-1746
-1747
-1748
-1749
-1750
-1751
-1752
-1753
-1755
-1756
-1758
-1760
-1763
-1764
-1765
-1766
-1767
-1771
-1772
-1773
-1774
-1775
-1780
-1781
-1782
-1784
-1785
-1786
-1787
-1788
-1789
-1790
-1791
-1794
-1800
-1803
-1805
-1806
-1807
-1808
-1809
-1811
-1812
-1813
-1814
-1815
-1816
-1817
-1818
-1819
-1820
-1821
-1822
-1823
-1824
-1825
-1826
-1828
-1829
-1831
-1832
-1835
-1837
-1838
-1842
-1851
-1853
-1860
-1864
-1865
-1866
-1867
-1868
-1869
-1870
-1871
-1872
-1873
-1876
-1884
-1900
-1901
-1903
-1904
-1905
-1906
-1907
-1908
-1910
-1912
-1913
-1914
-1915
-1916
-1930
-1931
-1932
-1933
-1934
-1935
-1936
-1937
-1938
-1940
-1941
-1942
-1944
-1945
-1946
-1947
-1948
-1949
-1960
-1961
-1962
-1963
-1964
-1980
-1981
-1982
-1984
-1995
-2000
-2003
-2004
-2005
-2006
-2008
-2009
-2010
-2011
-2012
-2013
-2014
-2015
-2016
-2017
-2018
-2019
-2020
-2021
-2022
-2023
-2024
-2025
-2026
-2028
-2029
-2030
-2031
-2032
-2033
-2034
-2035
-2036
-2037
-2038
-2040
-2041
-2042
-2043
-2044
-2047
-2048
-2049
-2050
-2051
-2052
-2053
-2054
-2055
-2056
-2057
-2058
-2059
-2060
-2061
-2062
-2063
-2064
-2065
-2066
-2067
-2068
-2069
-2070
-2072
-2073
-2074
-2075
-2076
-2077
-2078
-2080
-2081
-2082
-2100
-2101
-2102
-2103
-2104
-2105
-2106
-2107
-2108
-2109
-2110
-2111
-2112
-2113
-2114
-2115
-2116
-2117
-2118
-2119
-2120
-2121
-2122
-2123
-2124
-2125
-2128
-2129
-2130
-2131
-2132
-2134
-2135
-2136
-2137
-2139
-2140
-2141
-2142
-2143
-2144
-2145
-2146
-2147
-2148
-2149
-2151
-2152
-2153
-2154
-2155
-2156
-2157
-2158
-2159
-2160
-2161
-2162
-2163
-2164
-2165
-2167
-2168
-2171
-2172
-2200
-2210
-2211
-2212
-2213
-2225
-2226
-2230
-2231
-2232
-2233
-2245
-2250
-2260
-2265
-2266
-2267
-2270
-2271
-2272
-2275
-2276
-2280
-2285
-2300
-2301
-2302
-2310
-2312
-2315
-2320
-2329
-2330
-2332
-2333
-2334
-2335
-2336
-2337
-2339
-2340
-2341
-2350
-2352
-2353
-2355
-2356
-2357
-2370
-2375
-2380
-2382
-2383
-2384
-2385
-2386
-2387
-2388
-2389
-2410
-2415
-2420
-2425
-2430
-2431
-2432
-2433
-2434
-2435
-2436
-2465
-2470
-2471
-2480
-2490
-2491
-2495
-2496
-2500
-2501
-2502
-2503
-2504
-2507
-2508
-2509
-2511
-2513
-2514
-2515
-2516
-2517
-2518
-2520
-2521
-2522
-2523
-2524
-2525
-2526
-2527
-2528
-2529
-2530
-2531
-2532
-2533
-2534
-2535
-2538
-2550
-2552
-2553
-2554
-2556
-2560
-2562
-2570
-2572
-2573
-2574
-2575
-2576
-2577
-2578
-2600
-2610
-2615
-2620
-2621
-2622
-2623
-2624
-2625
-2626
-2627
-2630
-2640
-2650
-2660
-2662
-2680
-2710
-2711
-2712
-2715
-2716
-2717
-2725
-2727
-2728
-2729
-2730
-2732
-2735
-2736
-2737
-2738
-2739
-2740
-2741
-2742
-2743
-2744
-2745
-2746
-2747
-2748
-2749
-2750
-2751
-2752
-2753
-2754
-2755
-2756
-2757
-2758
-2759
-2760
-2761
-2762
-2763
-2765
-2766
-2767
-2768
-2769
-2770
-2771
-2772
-2773
-2774
-2775
-2776
-2777
-2778
-2779
-2780
-2781
-2782
-2783
-2784
-2785
-2786
-2787
-2788
-2789
-2835
-2836
-2838
-2839
-2840
-2841
-2842
-2843
-2844
-2845
-2846
-2847
-2848
-2849
-2850
-2851
-2852
-2854
-2855
-2857
-2858
-2859
-2860
-2861
-2865
-2866
-2867
-2868
-2869
-2870
-2871
-2872
-2873
-2874
-2875
-2876
-2880
-2881
-2882
-2883
-2884
-2885
-2886
-2887
-2888
-2889
-2890
-2891
-2895
-2900
-2920
-2921
-2922
-2930
-2931
-2940
-2941
-2942
-2944
-2945
-2950
-2951
-2952
-2953
-2954
-2955
-2956
-2957
-2958
-2959
-2960
-2970
-2980
-3000
-3002
-3003
-3004
-3005
-3006
-3007
-3010
-3011
-3016
-3017
-3019
-3020
-3022
-3024
-3080
-3081
-3082
-3100
-3101
-3102
-3103
-3105
-3106
-3107
-3109
-3111
-3112
-3114
-3115
-3116
-3120
-3135
-3137
-3138
-3145
-3150
-3151
-3160
-3170
-3171
-3180
-3182
-3183
-3184
-3185
-3199
-3200
-3202
-3203
-3204
-3205
-3206
-3207
-3208
-3209
-3210
-3211
-3213
-3214
-3215
-3216
-3217
-3218
-3219
-3220
-3221
-3222
-3223
-3224
-3225
-3226
-3227
-3228
-3229
-3230
-3231
-3232
-3233
-3234
-3235
-3236
-3237
-3238
-3239
-3241
-3242
-3243
-3244
-3245
-3246
-3247
-3248
-3249
-3250
-3251
-3252
-3254
-3255
-3256
-3257
-3258
-3259
-3260
-3261
-3262
-3263
-3264
-3265
-3266
-3267
-3268
-3269
-3270
-3271
-3272
-3273
-3274
-3275
-3276
-3277
-3278
-3279
-3280
-3282
-3283
-3284
-3285
-3286
-3287
-3288
-3290
-3291
-3292
-3293
-3294
-3295
-3296
-3297
-3298
-3299
-3300
-3301
-3302
-3303
-3304
-3305
-3306
-3307
-3308
-3309
-3310
-3312
-3313
-3314
-3325
-3330
-3331
-3340
-3341
-3342
-3343
-3350
-3351
-3352
-3354
-3360
-3370
-3371
-3372
-3374
-3375
-3377
-3378
-3380
-3381
-3382
-3383
-3384
-3500
-3600
-3602
-3603
-3604
-3605
-3607
-3608
-3609
-3611
-3612
-3613
-3614
-3615
-3616
-3617
-3620
-3621
-3624
-3625
-3626
-3630
-3631
-3634
-3635
-3640
-3641
-3650
-3651
-3652
-3653
-3655
-3660
-3670
-3680
-3690
-3700
-3701
-3705
-3710
-3720
-3730
-3740
-3741
-3742
-3750
-3751
-3760
-3770
-3780
-3781
-3782
-3800
-3801
-3802
-3803
-3804
-3805
-3806
-3807
-3808
-3814
-3815
-3816
-3817
-3818
-3820
-3821
-3822
-3823
-3830
-3835
-3836
-3837
-3838
-3850
-3855
-3856
-3857
-3858
-3859
-3865
-3866
-3867
-3871
-3872
-3873
-3874
-3875
-3879
-3880
-3881
-3882
-3883
-3884
-3885
-3886
-3887
-3888
-3889
-3900
-3901
-3902
-3903
-3904
-3905
-3910
-3915
-3920
-3925
-3930
-3934
-3935
-3936
-3937
-3938
-3939
-3940
-3941
-3942
-3950
-3951
-3952
-3953
-3960
-3964
-3965
-3966
-3967
-3968
-3969
-3970
-3972
-3973
-3974
-3975
-3976
-3977
-3978
-3979
-3980
-3981
-3982
-3983
-3984
-3985
-3986
-3987
-3988
-3989
-3991
-3992
-3993
-3994
-4000
-4003
-4005
-4006
-4007
-4008
-4010
-4011
-4013
-4014
-4015
-4016
-4017
-4018
-4019
-4021
-4022
-4023
-4024
-4025
-4026
-4027
-4028
-4029
-4030
-4031
-4032
-4034
-4035
-4036
-4038
-4039
-4050
-4052
-4053
-4054
-4055
-4056
-4057
-4058
-4059
-4060
-4061
-4062
-4063
-4064
-4065
-4067
-4069
-4070
-4071
-4072
-4074
-4075
-4078
-4079
-4080
-4082
-4083
-4084
-4085
-4087
-4088
-4089
-4090
-4098
-4099
-4100
-4101
-4102
-4103
-4104
-4105
-4106
-4109
-4110
-4111
-4113
-4115
-4120
-4122
-4125
-4126
-4132
-4135
-4136
-4137
-4138
-4139
-4140
-4142
-4144
-4145
-4146
-4147
-4148
-4150
-4153
-4155
-4156
-4157
-4158
-4160
-4162
-4163
-4170
-4171
-4172
-4180
-4181
-4182
-4183
-4184
-4185
-4186
-4187
-4188
-4189
-4190
-4191
-4200
-4201
-4202
-4204
-4206
-4207
-4215
-4216
-4220
-4221
-4225
-4226
-4227
-4230
-4235
-4240
-4241
-4242
-4243
-4244
-4246
-4247
-4249
-4250
-4251
-4252
-4253
-4254
-4255
-4256
-4260
-4261
-4265
-4270
-4275
-4276
-4277
-4278
-4280
-4281
-4285
-4286
-4295
-4300
-4301
-4310
-4320
-4321
-4339
-4340
-4341
-4342
-4343
-4344
-4345
-4348
-4349
-4350
-4360
-4361
-4362
-4363
-4364
-4380
-4381
-4390
-4391
-4399
-4400
-4401
-4402
-4403
-4404
-4405
-4406
-4418
-4420
-4422
-4430
-4431
-4450
-4451
-4452
-4453
-4454
-4455
-4456
-4457
-4458
-4470
-4480
-4490
-4491
-4492
-4493
-4642
-4643
-4680
-4681
-4682
-4683
-4684
-4685
-4686
-4687
-4688
-4689
-4690
-4691
-4693
-4700
-4706
-4710
-4720
-4730
-4731
-4735
-4736
-4737
-4738
-4740
-4741
-4742
-4743
-4750
-4751
-4752
-4753
-4770
-4771
-4772
-4773
-4774
-4776
-4777
-4778
-4780
-4781
-4786
-4788
-4789
-4790
-4800
-4801
-4802
-4803
-4804
-4810
-4811
-4812
-4813
-4814
-4816
-4820
-4821
-4822
-4824
-4825
-4826
-4827
-4828
-4920
-4930
-4931
-4932
-4933
-4934
-4935
-4950
-4960
-4961
-4962
-4963
-4964
-4968
-4980
-4982
-4990
-4991
-4992
-4993
-5000
-5002
-5003
-5004
-5005
-5006
-5007
-5008
-5010
-5011
-5012
-5013
-5014
-5015
-5016
-5017
-5018
-5019
-5021
-5024
-5026
-5035
-5040
-5041
-5042
-5043
-5050
-5051
-5052
-5054
-5055
-5056
-5057
-5058
-5059
-5070
-5072
-5073
-5075
-5079
-5080
-5081
-5082
-5083
-5084
-5085
-5086
-5087
-5088
-5089
-5090
-5091
-5092
-5093
-5094
-5095
-5096
-5097
-5099
-5100
-5101
-5102
-5103
-5104
-5105
-5106
-5107
-5108
-5109
-5111
-5112
-5113
-5114
-5115
-5116
-5117
-5118
-5119
-5120
-5121
-5122
-5123
-5124
-5127
-5128
-5129
-5130
-5131
-5132
-5133
-5134
-5135
-5136
-5137
-5138
-5139
-5140
-5141
-5142
-5150
-5160
-5161
-5162
-5163
-5170
-5171
-5172
-5173
-5174
-5180
-5181
-5182
-5183
-5184
-5185
-5186
-5187
-5188
-5189
-5190
-5191
-5200
-5201
-5204
-5205
-5206
-5207
-5208
-5210
-5211
-5212
-5213
-5214
-5216
-5217
-5218
-5219
-5220
-5221
-5222
-5241
-5247
-5252
-5253
-5256
-5258
-5259
-5260
-5264
-5265
-5272
-5275
-5280
-5284
-5288
-5292
-5310
-5319
-5320
-5321
-5322
-5323
-5325
-5326
-5327
-5328
-5329
-5330
-5331
-5332
-5341
-5360
-5361
-5362
-5363
-5364
-5365
-5370
-5375
-5376
-5377
-5380
-5381
-5382
-5400
-5401
-5402
-5403
-5404
-5405
-5410
-5411
-5412
-5413
-5414
-5415
-5416
-5417
-5418
-5419
-5420
-5425
-5435
-5436
-5437
-5445
-5446
-5455
-5460
-5470
-5480
-5481
-5483
-5500
-5501
-5600
-5602
-5604
-5605
-5606
-5607
-5608
-5609
-5610
-5611
-5612
-5613
-5614
-5619
-5620
-5640
-5641
-5643
-5644
-5645
-5660
-5661
-5662
-5663
-5664
-5670
-5671
-5672
-5680
-5685
-5686
-5687
-5688
-5700
-5701
-5702
-5703
-5704
-5705
-5706
-5707
-5708
-5709
-5710
-5720
-5721
-5722
-5730
-5740
-5750
-5760
-5780
-5800
-5805
-5810
-5820
-5821
-5824
-5825
-5827
-5830
-5850
-5860
-5870
-5880
-5881
-5882
-5883
-5884
-5900
-5920
-5930
-5950
-6000
-6001
-6002
-6003
-6004
-6005
-6006
-6008
-6011
-6012
-6013
-6014
-6015
-6016
-6017
-6018
-6019
-6021
-6023
-6024
-6026
-6027
-6028
-6029
-6030
-6031
-6032
-6033
-6055
-6056
-6057
-6058
-6059
-6060
-6061
-6062
-6063
-6065
-6100
-6105
-6107
-6109
-6115
-6120
-6121
-6125
-6130
-6131
-6135
-6139
-6140
-6141
-6142
-6143
-6144
-6145
-6146
-6148
-6150
-6166
-6170
-6171
-6172
-6173
-6175
-6180
-6185
-6186
-6187
-6188
-6189
-6190
-6191
-6200
-6201
-6202
-6203
-6204
-6205
-6206
-6209
-6211
-6212
-6213
-6215
-6219
-6220
-6230
-6231
-6232
-6234
-6236
-6237
-6238
-6241
-6242
-6250
-6255
-6265
-6270
-6280
-6281
-6282
-6286
-6300
-6302
-6303
-6304
-6306
-6307
-6308
-6310
-6311
-6312
-6313
-6330
-6331
-6332
-6335
-6350
-6351
-6360
-6365
-6370
-6375
-6385
-6390
-6400
-6410
-6430
-6435
-6440
-6445
-6446
-6447
-6450
-6451
-6452
-6454
-6460
-6462
-6463
-6467
-6480
-6490
-6500
-6501
-6503
-6504
-6505
-6506
-6507
-6510
-6511
-6520
-6525
-6526
-6530
-6531
-6534
-6535
-6536
-6537
-6538
-6539
-6541
-6543
-6544
-6545
-6560
-6570
-6573
-6576
-6580
-6583
-6600
-6601
-6602
-6603
-6604
-6605
-6606
-6615
-6620
-6623
-6624
-6628
-6631
-6632
-6633
-6634
-6650
-6655
-6656
-6660
-6665
-6666
-6667
-6670
-6671
-6674
-6675
-6676
-6690
-6695
-6696
-6705
-6707
-6708
-6715
-6720
-6730
-6740
-6741
-6742
-6743
-6750
-6810
-6811
-6812
-6820
-6821
-6830
-6835
-6836
-6837
-6838
-6840
-6845
-6848
-6849
-6850
-6851
-6852
-6853
-6854
-6855
-6856
-6857
-6858
-6859
-6861
-6862
-6863
-6870
-6875
-6880
-6900
-6901
-6920
-6930
-6931
-6932
-6940
-6950
-6960
-6970
-6973
-6976
-6985
-6995
-7000
-7005
-7070
-7071
-7090
-7101
-7102
-7103
-7105
-7110
-7129
-7130
-7131
-7133
-7134
-7135
-7137
-7139
-7140
-7141
-7144
-7151
-7160
-7171
-7180
-7185
-7195
-7196
-7200
-7201
-7202
-7210
-7220
-7221
-7230
-7232
-7233
-7234
-7250
-7252
-7270
-7271
-7280
-7281
-7282
-7283
-7284
-7285
-7287
-7299
-7302
-7303
-7304
-7305
-7306
-7307
-7308
-7310
-7312
-7320
-7321
-7322
-7323
-7325
-7335
-7340
-7345
-7347
-7348
-7350
-7351
-7352
-7353
-7354
-7355
-7357
-7358
-7365
-7375
-7380
-7381
-7382
-7390
-7395
-7400
-7404
-7405
-7406
-7407
-7420
-7425
-7430
-7435
-7436
-7437
-7439
-7440
-7441
-7442
-7443
-7444
-7446
-7447
-7449
-7450
-7451
-7456
-7459
-7460
-7463
-7465
-7475
-7480
-7485
-7489
-7491
-7499
-7500
-7501
-7503
-7504
-7505
-7506
-7507
-7525
-7530
-7532
-7533
-7535
-7536
-7537
-7538
-7539
-7540
-7551
-7561
-7569
-7570
-7571
-7572
-7579
-7581
-7582
-7583
-7599
-7601
-7602
-7603
-7604
-7605
-7607
-7608
-7609
-7611
-7612
-7613
-7614
-7615
-7620
-7622
-7623
-7624
-7625
-7626
-7627
-7628
-7630
-7645
-7646
-7654
-7656
-7670
-7680
-7681
-7690
-7691
-7701
-7702
-7705
-7707
-7725
-7735
-7740
-7745
-7750
-7751
-7752
-7755
-7756
-7760
-7762
-7763
-7765
-7766
-7767
-7769
-7770
-7779
-7782
-7783
-7784
-7785
-7786
-7787
-7788
-7789
-7790
-7791
-7793
-7794
-7800
-7801
-7802
-7805
-7806
-7808
-7824
-7848
-7864
-7872
-7880
-7888
-7905
-7915
-7935
-7937
-7945
-7946
-7947
-7948
-7950
-7965
-7966
-7974
-7975
-7976
-7977
-7978
-7979
-7985
-7990
-7995
-8000
-8001
-8002
-8003
-8004
-8007
-8008
-8010
-8012
-8017
-8018
-8019
-8020