imw 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. data/.gitignore +15 -0
  2. data/CHANGELOG +0 -0
  3. data/LICENSE +674 -0
  4. data/README.rdoc +101 -0
  5. data/Rakefile +20 -0
  6. data/VERSION +1 -0
  7. data/etc/imwrc.rb +76 -0
  8. data/lib/imw.rb +42 -0
  9. data/lib/imw/boot.rb +58 -0
  10. data/lib/imw/dataset.rb +233 -0
  11. data/lib/imw/dataset/datamapper.rb +66 -0
  12. data/lib/imw/dataset/datamapper/time_and_user_stamps.rb +37 -0
  13. data/lib/imw/dataset/loaddump.rb +50 -0
  14. data/lib/imw/dataset/old/file_collection.rb +88 -0
  15. data/lib/imw/dataset/old/file_collection_utils.rb +71 -0
  16. data/lib/imw/dataset/scaffold.rb +132 -0
  17. data/lib/imw/dataset/scraped_uri.rb +305 -0
  18. data/lib/imw/dataset/scrub/old_working_scrubber.rb +87 -0
  19. data/lib/imw/dataset/scrub/scrub.rb +147 -0
  20. data/lib/imw/dataset/scrub/scrub_simple_url.rb +38 -0
  21. data/lib/imw/dataset/scrub/scrub_test.rb +60 -0
  22. data/lib/imw/dataset/scrub/slug.rb +101 -0
  23. data/lib/imw/dataset/stats.rb +73 -0
  24. data/lib/imw/dataset/stats/counter.rb +23 -0
  25. data/lib/imw/dataset/task.rb +38 -0
  26. data/lib/imw/dataset/workflow.rb +81 -0
  27. data/lib/imw/files.rb +110 -0
  28. data/lib/imw/files/archive.rb +113 -0
  29. data/lib/imw/files/basicfile.rb +122 -0
  30. data/lib/imw/files/binary.rb +28 -0
  31. data/lib/imw/files/compressed_file.rb +93 -0
  32. data/lib/imw/files/compressed_files_and_archives.rb +348 -0
  33. data/lib/imw/files/compressible.rb +103 -0
  34. data/lib/imw/files/csv.rb +112 -0
  35. data/lib/imw/files/json.rb +41 -0
  36. data/lib/imw/files/sgml.rb +65 -0
  37. data/lib/imw/files/text.rb +68 -0
  38. data/lib/imw/files/yaml.rb +46 -0
  39. data/lib/imw/packagers.rb +8 -0
  40. data/lib/imw/packagers/archiver.rb +108 -0
  41. data/lib/imw/packagers/s3_mover.rb +28 -0
  42. data/lib/imw/parsers.rb +7 -0
  43. data/lib/imw/parsers/html_parser.rb +382 -0
  44. data/lib/imw/parsers/html_parser/matchers.rb +306 -0
  45. data/lib/imw/parsers/line_parser.rb +87 -0
  46. data/lib/imw/parsers/regexp_parser.rb +72 -0
  47. data/lib/imw/utils.rb +24 -0
  48. data/lib/imw/utils/components.rb +61 -0
  49. data/lib/imw/utils/config.rb +46 -0
  50. data/lib/imw/utils/error.rb +54 -0
  51. data/lib/imw/utils/extensions/array.rb +125 -0
  52. data/lib/imw/utils/extensions/class/attribute_accessors.rb +8 -0
  53. data/lib/imw/utils/extensions/core.rb +43 -0
  54. data/lib/imw/utils/extensions/dir.rb +24 -0
  55. data/lib/imw/utils/extensions/file_core.rb +64 -0
  56. data/lib/imw/utils/extensions/hash.rb +218 -0
  57. data/lib/imw/utils/extensions/hpricot.rb +48 -0
  58. data/lib/imw/utils/extensions/string.rb +49 -0
  59. data/lib/imw/utils/extensions/struct.rb +42 -0
  60. data/lib/imw/utils/extensions/symbol.rb +28 -0
  61. data/lib/imw/utils/extensions/typed_struct.rb +22 -0
  62. data/lib/imw/utils/extensions/uri.rb +59 -0
  63. data/lib/imw/utils/log.rb +67 -0
  64. data/lib/imw/utils/misc.rb +63 -0
  65. data/lib/imw/utils/paths.rb +115 -0
  66. data/lib/imw/utils/uri.rb +59 -0
  67. data/lib/imw/utils/uuid.rb +33 -0
  68. data/lib/imw/utils/validate.rb +38 -0
  69. data/lib/imw/utils/version.rb +12 -0
  70. data/lib/imw/utils/view.rb +113 -0
  71. data/lib/imw/utils/view/dump_csv.rb +112 -0
  72. data/lib/imw/utils/view/dump_csv_older.rb +117 -0
  73. data/spec/data/sample.csv +131 -0
  74. data/spec/data/sample.tsv +131 -0
  75. data/spec/data/sample.txt +131 -0
  76. data/spec/data/sample.xml +653 -0
  77. data/spec/data/sample.yaml +652 -0
  78. data/spec/imw/dataset/datamapper/uri_spec.rb +43 -0
  79. data/spec/imw/dataset/datamapper_spec_helper.rb +11 -0
  80. data/spec/imw/files/archive_spec.rb +118 -0
  81. data/spec/imw/files/basicfile_spec.rb +121 -0
  82. data/spec/imw/files/bz2_spec.rb +32 -0
  83. data/spec/imw/files/compressed_file_spec.rb +96 -0
  84. data/spec/imw/files/compressible_spec.rb +100 -0
  85. data/spec/imw/files/file_spec.rb +144 -0
  86. data/spec/imw/files/gz_spec.rb +32 -0
  87. data/spec/imw/files/rar_spec.rb +33 -0
  88. data/spec/imw/files/tar_spec.rb +31 -0
  89. data/spec/imw/files/text_spec.rb +23 -0
  90. data/spec/imw/files/zip_spec.rb +31 -0
  91. data/spec/imw/files_spec.rb +38 -0
  92. data/spec/imw/packagers/archiver_spec.rb +125 -0
  93. data/spec/imw/packagers/s3_mover_spec.rb +7 -0
  94. data/spec/imw/parsers/line_parser_spec.rb +96 -0
  95. data/spec/imw/parsers/regexp_parser_spec.rb +42 -0
  96. data/spec/imw/utils/extensions/file_core_spec.rb +72 -0
  97. data/spec/imw/utils/extensions/find_spec.rb +113 -0
  98. data/spec/imw/utils/paths_spec.rb +38 -0
  99. data/spec/imw/workflow/rip/local_spec.rb +89 -0
  100. data/spec/imw/workflow/rip_spec.rb +27 -0
  101. data/spec/rcov.opts +1 -0
  102. data/spec/spec.opts +4 -0
  103. data/spec/spec_helper.rb +32 -0
  104. data/spec/support/archive_contents_matcher.rb +94 -0
  105. data/spec/support/custom_matchers.rb +21 -0
  106. data/spec/support/directory_contents_matcher.rb +61 -0
  107. data/spec/support/extensions.rb +18 -0
  108. data/spec/support/file_contents_matcher.rb +50 -0
  109. data/spec/support/random.rb +210 -0
  110. data/spec/support/without_regard_to_order_matcher.rb +58 -0
  111. metadata +196 -0
@@ -0,0 +1,131 @@
1
+ ID,Name,Genus,Species
2
+ 001,Gray-bellied Night Monkey,Aotus,lemurinus
3
+ 002,Panamanian Night Monkey,Aotus,zonalis
4
+ 003,Hernández-Camacho's Night Monkey,Aotus,jorgehernandezi
5
+ 004,Gray-handed Night Monkey,Aotus,griseimembra
6
+ 005,Hershkovitz's Night Monkey,Aotus,hershkovitzi
7
+ 006,Brumback's Night Monkey,Aotus,brumbacki
8
+ 007,Three-striped Night Monkey,Aotus,trivirgatus
9
+ 008,Spix's Night Monkey,Aotus,vociferans
10
+ 009,Malaysian Lar Gibbon,Hylobates,lar lar
11
+ 010,Carpenter's Lar Gibbon,Hylobates,lar carpenteri
12
+ 011,Central Lar Gibbon,Hylobates,lar entelloides
13
+ 012,Sumatran Lar Gibbon,Hylobates,lar vestitus
14
+ 013,Yunnan Lar Gibbon,Hylobates,lar yunnanensis
15
+ 014,Mountain Agile Gibbon,Hylobates,agilis agilis
16
+ 015,Bornean White-bearded Gibbon,Hylobates,agilis albibarbis
17
+ 016,Lowland Agile Gibbon,Hylobates,agilis unko
18
+ 017,Müller's Gray Gibbon,Hylobates,muelleri muelleri
19
+ 018,Abbott's Gray Gibbon,Hylobates,muelleri abbotti
20
+ 019,Northern Gray Gibbon,Hylobates,muelleri funereus
21
+ 020,Black Tamarin,Saguinas,niger
22
+ 021,Black-mantled Tamarin,Saguinas,nigricollis
23
+ 022,Brown-mantled Tamarin,Saguinas,fuscicollis
24
+ 023,Cottontop Tamarin or Pinché Tamarin,Saguinas,oedipus
25
+ 024,Emperor Tamarin,Saguinas,imperator
26
+ 025,Geoffroy's Tamarin,Saguinas,geoffroyi
27
+ 026,Golden-mantled Tamarin,Saguinas,tripartitus
28
+ 027,Graells's Tamarin,Saguinas,graellsi
29
+ 028,Martins's Tamarin,Saguinas,martinsi
30
+ 029,Mottle-faced Tamarin,Saguinas,inustus
31
+ 030,Moustached Tamarin,Saguinas,mystax
32
+ 031,Pied Tamarin,Saguinas,bicolor
33
+ 032,Red-capped Tamarin,Saguinas,pileatus
34
+ 033,Red-handed Tamarin,Saguinas,midas
35
+ 034,White-footed Tamarin,Saguinas,leucopus
36
+ 035,White-lipped Tamarin,Saguinas,labiatus
37
+ 036,White-mantled Tamarin,Saguinas,melanoleucus
38
+ 037,Allen's Swamp Monkey,Allenopithecus,nigroviridis
39
+ 038,Angolan Talapoin,Miopithecus,talapoin
40
+ 039,Gabon Talapoin,Miopithecus,ogouensis
41
+ 040,Patas Monkey,Erythrocebus,patas
42
+ 041,Green Monkey,Chlorocebus,sabaeus
43
+ 042,Grivet,Chlorocebus,aethiops
44
+ 043,Bale Mountains Vervet,Chlorocebus,djamdjamensis
45
+ 044,Tantalus Monkey,Chlorocebus,tantalus
46
+ 045,Vervet Monkey,Chlorocebus,pygerythrus
47
+ 046,Malbrouck,Chlorocebus,cynosuros
48
+ 047,Dryas Monkey or Salongo Monkey,Cercopithecus,dryas
49
+ 048,Diana Monkey,Cercopithecus,diana
50
+ 049,Roloway Monkey,Cercopithecus,roloway
51
+ 050,Greater Spot-nosed Monkey,Cercopithecus,nictitans
52
+ 051,Blue Monkey,Cercopithecus,mitis
53
+ 052,Silver Monkey,Cercopithecus,doggetti
54
+ 053,Golden Monkey,Cercopithecus,kandti
55
+ 054,Sykes's Monkey,Cercopithecus,albogularis
56
+ 055,Mona Monkey,Cercopithecus,mona
57
+ 056,Campbell's Mona Monkey,Cercopithecus,campbelli
58
+ 057,Lowe's Mona Monkey,Cercopithecus,lowei
59
+ 058,Crested Mona Monkey,Cercopithecus,pogonias
60
+ 059,Wolf's Mona Monkey,Cercopithecus,wolfi
61
+ 060,Dent's Mona Monkey,Cercopithecus,denti
62
+ 061,Lesser Spot-nosed Monkey,Cercopithecus,petaurista
63
+ 062,White-throated Guenon,Cercopithecus,erythrogaster
64
+ 063,Sclater's Guenon,Cercopithecus,sclateri
65
+ 064,Red-eared Guenon,Cercopithecus,erythrotis
66
+ 065,Moustached Guenon,Cercopithecus,cephus
67
+ 066,Red-tailed Monkey,Cercopithecus,ascanius
68
+ 067,L'Hoest's Monkey,Cercopithecus,lhoesti
69
+ 068,Preuss's Monkey,Cercopithecus,preussi
70
+ 069,Sun-tailed Monkey,Cercopithecus,solatus
71
+ 070,Hamlyn's Monkey,Cercopithecus,hamlyni
72
+ 071,De Brazza's Monkey,Cercopithecus,neglectus
73
+ 072,Barbary Macaque,Macaca,sylvanus
74
+ 073,Lion-tailed Macaque,Macaca,silenus
75
+ 074,Southern Pig-tailed Macaque or Beruk,Macaca,nemestrina
76
+ 075,Northern Pig-tailed Macaque,Macaca,leonina
77
+ 076,Pagai Island Macaque or Bokkoi,Macaca,pagensis
78
+ 077,Siberut Macaque,Macaca,siberu
79
+ 078,Moor Macaque,Macaca,maura
80
+ 079,Booted Macaque,Macaca,ochreata
81
+ 080,Tonkean Macaque,Macaca,tonkeana
82
+ 081,Heck's Macaque,Macaca,hecki
83
+ 082,Gorontalo Macaque,Macaca,nigrescens
84
+ 083,Celebes Crested Macaque or Black "Ape",Macaca,nigra
85
+ 084,Crab-eating Macaque or Long-tailed Macaque or Kera,Macaca,fascicularis
86
+ 085,Stump-tailed Macaque or Bear Macaque,Macaca,arctoides
87
+ 086,Rhesus Macaque,Macaca,mulatta
88
+ 087,Formosan Rock Macaque,Macaca,cyclopis
89
+ 088,Japanese Macaque,Macaca,fuscata
90
+ 089,Toque Macaque,Macaca,sinica
91
+ 090,Bonnet Macaque,Macaca,radiata
92
+ 091,Assam Macaque,Macaca,assamensis
93
+ 092,Tibetan Macaque or Milne-Edwards' Macaque,Macaca,thibetana
94
+ 093,Arunachal Macaque or Munzala,Macaca,munzala
95
+ 094,Grey-cheeked Mangabey,Lophocebus,albigena
96
+ 095,Black Crested Mangabey,Lophocebus,aterrimus
97
+ 096,Opdenbosch's Mangabey,Lophocebus,opdenboschi
98
+ 097,Uganda Mangabey,Lophocebus,ugandae
99
+ 098,Johnston's Mangabey,Lophocebus,johnstoni
100
+ 099,Osman Hill's Mangabey,Lophocebus,osmani
101
+ 100,Kipunji,Rungwecebus,kipunji
102
+ 101,Hamadryas Baboon,Papio,hamadryas
103
+ 102,Guinea Baboon,Papio,papio
104
+ 103,Olive Baboon,Papio,anubis
105
+ 104,Yellow Baboon,Papio,cynocephalus
106
+ 105,Chacma Baboon,Papio,ursinus
107
+ 106,Gelada,Theropithecus,gelada
108
+ 107,Sooty Mangabey,Cercocebus,atys
109
+ 108,Collared Mangabey,Cercocebus,torquatus
110
+ 109,Agile Mangabey,Cercocebus,agilis
111
+ 110,Golden-bellied Mangabey,Cercocebus,chrysogaster
112
+ 111,Tana River Mangabey,Cercocebus,galeritus
113
+ 112,Sanje Mangabey,Cercocebus,sanjei
114
+ 113,Mandrill,Mandrillus,sphinx
115
+ 114,Drill,Mandrillus,leucophaeus
116
+ 115,Black Colobus,Colobus,satanas
117
+ 116,Angola Colobus,Colobus,angolensis
118
+ 117,King Colobus,Colobus,polykomos
119
+ 118,Ursine Colobus,Colobus,vellerosus
120
+ 119,Mantled Guereza,Colobus,guereza
121
+ 120,Western Red Colobus,Piliocolobus,badius
122
+ 121,Pennant's Colobus,Piliocolobus,pennantii
123
+ 122,Preuss's Red Colobus,Piliocolobus,preussi
124
+ 123,Thollon's Red Colobus,Piliocolobus,tholloni
125
+ 124,Central African Red Colobus,Piliocolobus,foai
126
+ 125,Ugandan Red Colobus,Piliocolobus,tephrosceles
127
+ 126,Uzungwa Red Colobus,Piliocolobus,gordonorum
128
+ 127,Zanzibar Red Colobus,Piliocolobus,kirkii
129
+ 128,Tana River Red Colobus,Piliocolobus,rufomitratus
130
+ 129,Olive Colobus,Procolobus,verus
131
+ 130,Maroon Leaf Monkey,Presbytis,rubicunda
@@ -0,0 +1,653 @@
1
+ <monkeys>
2
+ <monkey id="001">
3
+ <genus>Aotus</genus>
4
+ <species>lemurinus</species>
5
+ <name>Gray-bellied Night Monkey</name>
6
+ </monkey>
7
+ <monkey id="002">
8
+ <genus>Aotus</genus>
9
+ <species>zonalis</species>
10
+ <name>Panamanian Night Monkey</name>
11
+ </monkey>
12
+ <monkey id="003">
13
+ <genus>Aotus</genus>
14
+ <species>jorgehernandezi</species>
15
+ <name>Hernández-Camacho's Night Monkey</name>
16
+ </monkey>
17
+ <monkey id="004">
18
+ <genus>Aotus</genus>
19
+ <species>griseimembra</species>
20
+ <name>Gray-handed Night Monkey</name>
21
+ </monkey>
22
+ <monkey id="005">
23
+ <genus>Aotus</genus>
24
+ <species>hershkovitzi</species>
25
+ <name>Hershkovitz's Night Monkey</name>
26
+ </monkey>
27
+ <monkey id="006">
28
+ <genus>Aotus</genus>
29
+ <species>brumbacki</species>
30
+ <name>Brumback's Night Monkey</name>
31
+ </monkey>
32
+ <monkey id="007">
33
+ <genus>Aotus</genus>
34
+ <species>trivirgatus</species>
35
+ <name>Three-striped Night Monkey</name>
36
+ </monkey>
37
+ <monkey id="008">
38
+ <genus>Aotus</genus>
39
+ <species>vociferans</species>
40
+ <name>Spix's Night Monkey</name>
41
+ </monkey>
42
+ <monkey id="009">
43
+ <genus>Hylobates</genus>
44
+ <species>lar lar</species>
45
+ <name>Malaysian Lar Gibbon</name>
46
+ </monkey>
47
+ <monkey id="010">
48
+ <genus>Hylobates</genus>
49
+ <species>lar carpenteri</species>
50
+ <name>Carpenter's Lar Gibbon</name>
51
+ </monkey>
52
+ <monkey id="011">
53
+ <genus>Hylobates</genus>
54
+ <species>lar entelloides</species>
55
+ <name>Central Lar Gibbon</name>
56
+ </monkey>
57
+ <monkey id="012">
58
+ <genus>Hylobates</genus>
59
+ <species>lar vestitus</species>
60
+ <name>Sumatran Lar Gibbon</name>
61
+ </monkey>
62
+ <monkey id="013">
63
+ <genus>Hylobates</genus>
64
+ <species>lar yunnanensis</species>
65
+ <name>Yunnan Lar Gibbon</name>
66
+ </monkey>
67
+ <monkey id="014">
68
+ <genus>Hylobates</genus>
69
+ <species>agilis agilis</species>
70
+ <name>Mountain Agile Gibbon</name>
71
+ </monkey>
72
+ <monkey id="015">
73
+ <genus>Hylobates</genus>
74
+ <species>agilis albibarbis</species>
75
+ <name>Bornean White-bearded Gibbon</name>
76
+ </monkey>
77
+ <monkey id="016">
78
+ <genus>Hylobates</genus>
79
+ <species>agilis unko</species>
80
+ <name>Lowland Agile Gibbon</name>
81
+ </monkey>
82
+ <monkey id="017">
83
+ <genus>Hylobates</genus>
84
+ <species>muelleri muelleri</species>
85
+ <name>Müller's Gray Gibbon</name>
86
+ </monkey>
87
+ <monkey id="018">
88
+ <genus>Hylobates</genus>
89
+ <species>muelleri abbotti</species>
90
+ <name>Abbott's Gray Gibbon</name>
91
+ </monkey>
92
+ <monkey id="019">
93
+ <genus>Hylobates</genus>
94
+ <species>muelleri funereus</species>
95
+ <name>Northern Gray Gibbon</name>
96
+ </monkey>
97
+ <monkey id="020">
98
+ <genus>Saguinas</genus>
99
+ <species>niger</species>
100
+ <name>Black Tamarin</name>
101
+ </monkey>
102
+ <monkey id="021">
103
+ <genus>Saguinas</genus>
104
+ <species>nigricollis</species>
105
+ <name>Black-mantled Tamarin</name>
106
+ </monkey>
107
+ <monkey id="022">
108
+ <genus>Saguinas</genus>
109
+ <species>fuscicollis</species>
110
+ <name>Brown-mantled Tamarin</name>
111
+ </monkey>
112
+ <monkey id="023">
113
+ <genus>Saguinas</genus>
114
+ <species>oedipus</species>
115
+ <name>Cottontop Tamarin or Pinché Tamarin</name>
116
+ </monkey>
117
+ <monkey id="024">
118
+ <genus>Saguinas</genus>
119
+ <species>imperator</species>
120
+ <name>Emperor Tamarin</name>
121
+ </monkey>
122
+ <monkey id="025">
123
+ <genus>Saguinas</genus>
124
+ <species>geoffroyi</species>
125
+ <name>Geoffroy's Tamarin</name>
126
+ </monkey>
127
+ <monkey id="026">
128
+ <genus>Saguinas</genus>
129
+ <species>tripartitus</species>
130
+ <name>Golden-mantled Tamarin</name>
131
+ </monkey>
132
+ <monkey id="027">
133
+ <genus>Saguinas</genus>
134
+ <species>graellsi</species>
135
+ <name>Graells's Tamarin</name>
136
+ </monkey>
137
+ <monkey id="028">
138
+ <genus>Saguinas</genus>
139
+ <species>martinsi</species>
140
+ <name>Martins's Tamarin</name>
141
+ </monkey>
142
+ <monkey id="029">
143
+ <genus>Saguinas</genus>
144
+ <species>inustus</species>
145
+ <name>Mottle-faced Tamarin</name>
146
+ </monkey>
147
+ <monkey id="030">
148
+ <genus>Saguinas</genus>
149
+ <species>mystax</species>
150
+ <name>Moustached Tamarin</name>
151
+ </monkey>
152
+ <monkey id="031">
153
+ <genus>Saguinas</genus>
154
+ <species>bicolor</species>
155
+ <name>Pied Tamarin</name>
156
+ </monkey>
157
+ <monkey id="032">
158
+ <genus>Saguinas</genus>
159
+ <species>pileatus</species>
160
+ <name>Red-capped Tamarin</name>
161
+ </monkey>
162
+ <monkey id="033">
163
+ <genus>Saguinas</genus>
164
+ <species>midas</species>
165
+ <name>Red-handed Tamarin</name>
166
+ </monkey>
167
+ <monkey id="034">
168
+ <genus>Saguinas</genus>
169
+ <species>leucopus</species>
170
+ <name>White-footed Tamarin</name>
171
+ </monkey>
172
+ <monkey id="035">
173
+ <genus>Saguinas</genus>
174
+ <species>labiatus</species>
175
+ <name>White-lipped Tamarin</name>
176
+ </monkey>
177
+ <monkey id="036">
178
+ <genus>Saguinas</genus>
179
+ <species>melanoleucus</species>
180
+ <name>White-mantled Tamarin</name>
181
+ </monkey>
182
+ <monkey id="037">
183
+ <genus>Allenopithecus</genus>
184
+ <species>nigroviridis</species>
185
+ <name>Allen's Swamp Monkey</name>
186
+ </monkey>
187
+ <monkey id="038">
188
+ <genus>Miopithecus</genus>
189
+ <species>talapoin</species>
190
+ <name>Angolan Talapoin</name>
191
+ </monkey>
192
+ <monkey id="039">
193
+ <genus>Miopithecus</genus>
194
+ <species>ogouensis</species>
195
+ <name>Gabon Talapoin</name>
196
+ </monkey>
197
+ <monkey id="040">
198
+ <genus>Erythrocebus</genus>
199
+ <species>patas</species>
200
+ <name>Patas Monkey</name>
201
+ </monkey>
202
+ <monkey id="041">
203
+ <genus>Chlorocebus</genus>
204
+ <species>sabaeus</species>
205
+ <name>Green Monkey</name>
206
+ </monkey>
207
+ <monkey id="042">
208
+ <genus>Chlorocebus</genus>
209
+ <species>aethiops</species>
210
+ <name>Grivet</name>
211
+ </monkey>
212
+ <monkey id="043">
213
+ <genus>Chlorocebus</genus>
214
+ <species>djamdjamensis</species>
215
+ <name>Bale Mountains Vervet</name>
216
+ </monkey>
217
+ <monkey id="044">
218
+ <genus>Chlorocebus</genus>
219
+ <species>tantalus</species>
220
+ <name>Tantalus Monkey</name>
221
+ </monkey>
222
+ <monkey id="045">
223
+ <genus>Chlorocebus</genus>
224
+ <species>pygerythrus</species>
225
+ <name>Vervet Monkey</name>
226
+ </monkey>
227
+ <monkey id="046">
228
+ <genus>Chlorocebus</genus>
229
+ <species>cynosuros</species>
230
+ <name>Malbrouck</name>
231
+ </monkey>
232
+ <monkey id="047">
233
+ <genus>Cercopithecus</genus>
234
+ <species>dryas</species>
235
+ <name>Dryas Monkey or Salongo Monkey</name>
236
+ </monkey>
237
+ <monkey id="048">
238
+ <genus>Cercopithecus</genus>
239
+ <species>diana</species>
240
+ <name>Diana Monkey</name>
241
+ </monkey>
242
+ <monkey id="049">
243
+ <genus>Cercopithecus</genus>
244
+ <species>roloway</species>
245
+ <name>Roloway Monkey</name>
246
+ </monkey>
247
+ <monkey id="050">
248
+ <genus>Cercopithecus</genus>
249
+ <species>nictitans</species>
250
+ <name>Greater Spot-nosed Monkey</name>
251
+ </monkey>
252
+ <monkey id="051">
253
+ <genus>Cercopithecus</genus>
254
+ <species>mitis</species>
255
+ <name>Blue Monkey</name>
256
+ </monkey>
257
+ <monkey id="052">
258
+ <genus>Cercopithecus</genus>
259
+ <species>doggetti</species>
260
+ <name>Silver Monkey</name>
261
+ </monkey>
262
+ <monkey id="053">
263
+ <genus>Cercopithecus</genus>
264
+ <species>kandti</species>
265
+ <name>Golden Monkey</name>
266
+ </monkey>
267
+ <monkey id="054">
268
+ <genus>Cercopithecus</genus>
269
+ <species>albogularis</species>
270
+ <name>Sykes's Monkey</name>
271
+ </monkey>
272
+ <monkey id="055">
273
+ <genus>Cercopithecus</genus>
274
+ <species>mona</species>
275
+ <name>Mona Monkey</name>
276
+ </monkey>
277
+ <monkey id="056">
278
+ <genus>Cercopithecus</genus>
279
+ <species>campbelli</species>
280
+ <name>Campbell's Mona Monkey</name>
281
+ </monkey>
282
+ <monkey id="057">
283
+ <genus>Cercopithecus</genus>
284
+ <species>lowei</species>
285
+ <name>Lowe's Mona Monkey</name>
286
+ </monkey>
287
+ <monkey id="058">
288
+ <genus>Cercopithecus</genus>
289
+ <species>pogonias</species>
290
+ <name>Crested Mona Monkey</name>
291
+ </monkey>
292
+ <monkey id="059">
293
+ <genus>Cercopithecus</genus>
294
+ <species>wolfi</species>
295
+ <name>Wolf's Mona Monkey</name>
296
+ </monkey>
297
+ <monkey id="060">
298
+ <genus>Cercopithecus</genus>
299
+ <species>denti</species>
300
+ <name>Dent's Mona Monkey</name>
301
+ </monkey>
302
+ <monkey id="061">
303
+ <genus>Cercopithecus</genus>
304
+ <species>petaurista</species>
305
+ <name>Lesser Spot-nosed Monkey</name>
306
+ </monkey>
307
+ <monkey id="062">
308
+ <genus>Cercopithecus</genus>
309
+ <species>erythrogaster</species>
310
+ <name>White-throated Guenon</name>
311
+ </monkey>
312
+ <monkey id="063">
313
+ <genus>Cercopithecus</genus>
314
+ <species>sclateri</species>
315
+ <name>Sclater's Guenon</name>
316
+ </monkey>
317
+ <monkey id="064">
318
+ <genus>Cercopithecus</genus>
319
+ <species>erythrotis</species>
320
+ <name>Red-eared Guenon</name>
321
+ </monkey>
322
+ <monkey id="065">
323
+ <genus>Cercopithecus</genus>
324
+ <species>cephus</species>
325
+ <name>Moustached Guenon</name>
326
+ </monkey>
327
+ <monkey id="066">
328
+ <genus>Cercopithecus</genus>
329
+ <species>ascanius</species>
330
+ <name>Red-tailed Monkey</name>
331
+ </monkey>
332
+ <monkey id="067">
333
+ <genus>Cercopithecus</genus>
334
+ <species>lhoesti</species>
335
+ <name>L'Hoest's Monkey</name>
336
+ </monkey>
337
+ <monkey id="068">
338
+ <genus>Cercopithecus</genus>
339
+ <species>preussi</species>
340
+ <name>Preuss's Monkey</name>
341
+ </monkey>
342
+ <monkey id="069">
343
+ <genus>Cercopithecus</genus>
344
+ <species>solatus</species>
345
+ <name>Sun-tailed Monkey</name>
346
+ </monkey>
347
+ <monkey id="070">
348
+ <genus>Cercopithecus</genus>
349
+ <species>hamlyni</species>
350
+ <name>Hamlyn's Monkey</name>
351
+ </monkey>
352
+ <monkey id="071">
353
+ <genus>Cercopithecus</genus>
354
+ <species>neglectus</species>
355
+ <name>De Brazza's Monkey</name>
356
+ </monkey>
357
+ <monkey id="072">
358
+ <genus>Macaca</genus>
359
+ <species>sylvanus</species>
360
+ <name>Barbary Macaque</name>
361
+ </monkey>
362
+ <monkey id="073">
363
+ <genus>Macaca</genus>
364
+ <species>silenus</species>
365
+ <name>Lion-tailed Macaque</name>
366
+ </monkey>
367
+ <monkey id="074">
368
+ <genus>Macaca</genus>
369
+ <species>nemestrina</species>
370
+ <name>Southern Pig-tailed Macaque or Beruk</name>
371
+ </monkey>
372
+ <monkey id="075">
373
+ <genus>Macaca</genus>
374
+ <species>leonina</species>
375
+ <name>Northern Pig-tailed Macaque</name>
376
+ </monkey>
377
+ <monkey id="076">
378
+ <genus>Macaca</genus>
379
+ <species>pagensis</species>
380
+ <name>Pagai Island Macaque or Bokkoi</name>
381
+ </monkey>
382
+ <monkey id="077">
383
+ <genus>Macaca</genus>
384
+ <species>siberu</species>
385
+ <name>Siberut Macaque</name>
386
+ </monkey>
387
+ <monkey id="078">
388
+ <genus>Macaca</genus>
389
+ <species>maura</species>
390
+ <name>Moor Macaque</name>
391
+ </monkey>
392
+ <monkey id="079">
393
+ <genus>Macaca</genus>
394
+ <species>ochreata</species>
395
+ <name>Booted Macaque</name>
396
+ </monkey>
397
+ <monkey id="080">
398
+ <genus>Macaca</genus>
399
+ <species>tonkeana</species>
400
+ <name>Tonkean Macaque</name>
401
+ </monkey>
402
+ <monkey id="081">
403
+ <genus>Macaca</genus>
404
+ <species>hecki</species>
405
+ <name>Heck's Macaque</name>
406
+ </monkey>
407
+ <monkey id="082">
408
+ <genus>Macaca</genus>
409
+ <species>nigrescens</species>
410
+ <name>Gorontalo Macaque</name>
411
+ </monkey>
412
+ <monkey id="083">
413
+ <genus>Macaca</genus>
414
+ <species>nigra</species>
415
+ <name>Celebes Crested Macaque or Black "Ape"</name>
416
+ </monkey>
417
+ <monkey id="084">
418
+ <genus>Macaca</genus>
419
+ <species>fascicularis</species>
420
+ <name>Crab-eating Macaque or Long-tailed Macaque or Kera</name>
421
+ </monkey>
422
+ <monkey id="085">
423
+ <genus>Macaca</genus>
424
+ <species>arctoides</species>
425
+ <name>Stump-tailed Macaque or Bear Macaque</name>
426
+ </monkey>
427
+ <monkey id="086">
428
+ <genus>Macaca</genus>
429
+ <species>mulatta</species>
430
+ <name>Rhesus Macaque</name>
431
+ </monkey>
432
+ <monkey id="087">
433
+ <genus>Macaca</genus>
434
+ <species>cyclopis</species>
435
+ <name>Formosan Rock Macaque</name>
436
+ </monkey>
437
+ <monkey id="088">
438
+ <genus>Macaca</genus>
439
+ <species>fuscata</species>
440
+ <name>Japanese Macaque</name>
441
+ </monkey>
442
+ <monkey id="089">
443
+ <genus>Macaca</genus>
444
+ <species>sinica</species>
445
+ <name>Toque Macaque</name>
446
+ </monkey>
447
+ <monkey id="090">
448
+ <genus>Macaca</genus>
449
+ <species>radiata</species>
450
+ <name>Bonnet Macaque</name>
451
+ </monkey>
452
+ <monkey id="091">
453
+ <genus>Macaca</genus>
454
+ <species>assamensis</species>
455
+ <name>Assam Macaque</name>
456
+ </monkey>
457
+ <monkey id="092">
458
+ <genus>Macaca</genus>
459
+ <species>thibetana</species>
460
+ <name>Tibetan Macaque or Milne-Edwards' Macaque</name>
461
+ </monkey>
462
+ <monkey id="093">
463
+ <genus>Macaca</genus>
464
+ <species>munzala</species>
465
+ <name>Arunachal Macaque or Munzala</name>
466
+ </monkey>
467
+ <monkey id="094">
468
+ <genus>Lophocebus</genus>
469
+ <species>albigena</species>
470
+ <name>Grey-cheeked Mangabey</name>
471
+ </monkey>
472
+ <monkey id="095">
473
+ <genus>Lophocebus</genus>
474
+ <species>aterrimus</species>
475
+ <name>Black Crested Mangabey</name>
476
+ </monkey>
477
+ <monkey id="096">
478
+ <genus>Lophocebus</genus>
479
+ <species>opdenboschi</species>
480
+ <name>Opdenbosch's Mangabey</name>
481
+ </monkey>
482
+ <monkey id="097">
483
+ <genus>Lophocebus</genus>
484
+ <species>ugandae</species>
485
+ <name>Uganda Mangabey</name>
486
+ </monkey>
487
+ <monkey id="098">
488
+ <genus>Lophocebus</genus>
489
+ <species>johnstoni</species>
490
+ <name>Johnston's Mangabey</name>
491
+ </monkey>
492
+ <monkey id="099">
493
+ <genus>Lophocebus</genus>
494
+ <species>osmani</species>
495
+ <name>Osman Hill's Mangabey</name>
496
+ </monkey>
497
+ <monkey id="100">
498
+ <genus>Rungwecebus</genus>
499
+ <species>kipunji</species>
500
+ <name>Kipunji</name>
501
+ </monkey>
502
+ <monkey id="101">
503
+ <genus>Papio</genus>
504
+ <species>hamadryas</species>
505
+ <name>Hamadryas Baboon</name>
506
+ </monkey>
507
+ <monkey id="102">
508
+ <genus>Papio</genus>
509
+ <species>papio</species>
510
+ <name>Guinea Baboon</name>
511
+ </monkey>
512
+ <monkey id="103">
513
+ <genus>Papio</genus>
514
+ <species>anubis</species>
515
+ <name>Olive Baboon</name>
516
+ </monkey>
517
+ <monkey id="104">
518
+ <genus>Papio</genus>
519
+ <species>cynocephalus</species>
520
+ <name>Yellow Baboon</name>
521
+ </monkey>
522
+ <monkey id="105">
523
+ <genus>Papio</genus>
524
+ <species>ursinus</species>
525
+ <name>Chacma Baboon</name>
526
+ </monkey>
527
+ <monkey id="106">
528
+ <genus>Theropithecus</genus>
529
+ <species>gelada</species>
530
+ <name>Gelada</name>
531
+ </monkey>
532
+ <monkey id="107">
533
+ <genus>Cercocebus</genus>
534
+ <species>atys</species>
535
+ <name>Sooty Mangabey</name>
536
+ </monkey>
537
+ <monkey id="108">
538
+ <genus>Cercocebus</genus>
539
+ <species>torquatus</species>
540
+ <name>Collared Mangabey</name>
541
+ </monkey>
542
+ <monkey id="109">
543
+ <genus>Cercocebus</genus>
544
+ <species>agilis</species>
545
+ <name>Agile Mangabey</name>
546
+ </monkey>
547
+ <monkey id="110">
548
+ <genus>Cercocebus</genus>
549
+ <species>chrysogaster</species>
550
+ <name>Golden-bellied Mangabey</name>
551
+ </monkey>
552
+ <monkey id="111">
553
+ <genus>Cercocebus</genus>
554
+ <species>galeritus</species>
555
+ <name>Tana River Mangabey</name>
556
+ </monkey>
557
+ <monkey id="112">
558
+ <genus>Cercocebus</genus>
559
+ <species>sanjei</species>
560
+ <name>Sanje Mangabey</name>
561
+ </monkey>
562
+ <monkey id="113">
563
+ <genus>Mandrillus</genus>
564
+ <species>sphinx</species>
565
+ <name>Mandrill</name>
566
+ </monkey>
567
+ <monkey id="114">
568
+ <genus>Mandrillus</genus>
569
+ <species>leucophaeus</species>
570
+ <name>Drill</name>
571
+ </monkey>
572
+ <monkey id="115">
573
+ <genus>Colobus</genus>
574
+ <species>satanas</species>
575
+ <name>Black Colobus</name>
576
+ </monkey>
577
+ <monkey id="116">
578
+ <genus>Colobus</genus>
579
+ <species>angolensis</species>
580
+ <name>Angola Colobus</name>
581
+ </monkey>
582
+ <monkey id="117">
583
+ <genus>Colobus</genus>
584
+ <species>polykomos</species>
585
+ <name>King Colobus</name>
586
+ </monkey>
587
+ <monkey id="118">
588
+ <genus>Colobus</genus>
589
+ <species>vellerosus</species>
590
+ <name>Ursine Colobus</name>
591
+ </monkey>
592
+ <monkey id="119">
593
+ <genus>Colobus</genus>
594
+ <species>guereza</species>
595
+ <name>Mantled Guereza</name>
596
+ </monkey>
597
+ <monkey id="120">
598
+ <genus>Piliocolobus</genus>
599
+ <species>badius</species>
600
+ <name>Western Red Colobus</name>
601
+ </monkey>
602
+ <monkey id="121">
603
+ <genus>Piliocolobus</genus>
604
+ <species>pennantii</species>
605
+ <name>Pennant's Colobus</name>
606
+ </monkey>
607
+ <monkey id="122">
608
+ <genus>Piliocolobus</genus>
609
+ <species>preussi</species>
610
+ <name>Preuss's Red Colobus</name>
611
+ </monkey>
612
+ <monkey id="123">
613
+ <genus>Piliocolobus</genus>
614
+ <species>tholloni</species>
615
+ <name>Thollon's Red Colobus</name>
616
+ </monkey>
617
+ <monkey id="124">
618
+ <genus>Piliocolobus</genus>
619
+ <species>foai</species>
620
+ <name>Central African Red Colobus</name>
621
+ </monkey>
622
+ <monkey id="125">
623
+ <genus>Piliocolobus</genus>
624
+ <species>tephrosceles</species>
625
+ <name>Ugandan Red Colobus</name>
626
+ </monkey>
627
+ <monkey id="126">
628
+ <genus>Piliocolobus</genus>
629
+ <species>gordonorum</species>
630
+ <name>Uzungwa Red Colobus</name>
631
+ </monkey>
632
+ <monkey id="127">
633
+ <genus>Piliocolobus</genus>
634
+ <species>kirkii</species>
635
+ <name>Zanzibar Red Colobus</name>
636
+ </monkey>
637
+ <monkey id="128">
638
+ <genus>Piliocolobus</genus>
639
+ <species>rufomitratus</species>
640
+ <name>Tana River Red Colobus</name>
641
+ </monkey>
642
+ <monkey id="129">
643
+ <genus>Procolobus</genus>
644
+ <species>verus</species>
645
+ <name>Olive Colobus</name>
646
+ </monkey>
647
+ <monkey id="130">
648
+ <genus>Presbytis</genus>
649
+ <species>rubicunda
650
+ </species>
651
+ <name>Maroon Leaf Monkey</name>
652
+ </monkey>
653
+ </monkeys>